/** * Build the given result set into a list objects. Assumes there is an * execute call available and therefore should not be called unless an * execute statement was issued by the user. */ protected List buildResultRecords(ResultSet resultSet) { try { AbstractSession session = (AbstractSession) getActiveSession(); DatabaseAccessor accessor = (DatabaseAccessor) executeCall.getQuery().getAccessor(); executeCall.setFields(null); executeCall.matchFieldOrder(resultSet, accessor, session); ResultSetMetaData metaData = resultSet.getMetaData(); List result = new Vector(); while (resultSet.next()) { result.add(accessor.fetchRow(executeCall.getFields(), executeCall.getFieldsArray(), resultSet, metaData, session)); } // The result set must be closed in case the statement is cached and not closed. resultSet.close(); return result; } catch (Exception e) { setRollbackOnly(); throw new PersistenceException(e); } }
metaData = resultSet.getMetaData(); call.setFields(null); call.matchFieldOrder(resultSet, this, session);
metaData = resultSet.getMetaData(); call.setFields(null); call.matchFieldOrder(resultSet, this, session);
dbCall.matchFieldOrder(resultSet, accessor, session);
dbCall.matchFieldOrder(resultSet, accessor, session);
session.endOperationProfile(SessionProfiler.STATEMENT_EXECUTE, dbCall.getQuery(), SessionProfiler.ALL); dbCall.matchFieldOrder(resultSet, accessor, session);
matchFieldOrder(resultSet, accessor, session); value = accessor.processResultSet(resultSet, this, statement, session);
session.endOperationProfile(SessionProfiler.STATEMENT_EXECUTE, dbCall.getQuery(), SessionProfiler.ALL); dbCall.matchFieldOrder(resultSet, accessor, session);
dbCall.matchFieldOrder(resultSet, accessor, session);
matchFieldOrder(resultSet, accessor, session); value = accessor.processResultSet(resultSet, this, statement, session);
resultSet.absolute(dbCall.getFirstResult()); dbCall.matchFieldOrder(resultSet, this, session);
dbCall.matchFieldOrder(resultSet, this, session);
resultSet.absolute(dbCall.getFirstResult()); dbCall.matchFieldOrder(resultSet, this, session);