public class ResultSetMappingQuery extends ObjectBuildingQuery
Purpose: Concrete class to perform read using raw SQL and the SQLResultSetMapping.
Responsibilities: Execute a selecting raw SQL string. Returns a List of results. Each item in the list will be another list consisting of the expected populated return types in the order they were specified in the SQLResultSetMapping
SQLResultSetMapping
,
Serialized FormDatabaseQuery.ParameterType
Modifier and Type | Field and Description |
---|---|
protected boolean |
isExecuteCall |
protected java.util.Vector |
resultRows |
protected java.util.List<java.lang.String> |
resultSetMappingNames |
protected java.util.List<SQLResultSetMapping> |
resultSetMappings |
protected boolean |
returnNameValuePairs |
DEFAULT_LOCK_MODE, executionTime, isCacheCheckComplete, LOCK, LOCK_NOWAIT, LOCK_RESULT_PROPERTY, lockingClause, NO_LOCK, prefetchedCacheKeys, referenceClass, referenceClassName, requiresDeferredLocks, shouldBuildNullForNullPk, shouldRefreshIdentityMapResult, shouldRefreshRemoteIdentityMapResult, shouldRegisterResultsInUnitOfWork, shouldUseExclusiveConnection, wasDefaultLockMode
fetchSize, firstResult, maxResults, maxRows, queryId, queryResultCachingPolicy, temporaryCachedQueryResults
accessors, allowNativeSQLQuery, argumentFields, argumentParameterTypes, arguments, argumentTypeNames, argumentTypes, argumentValues, BATCH_FETCH_PROPERTY, CascadeAggregateDelete, CascadeAllParts, CascadeByMapping, CascadeDependentParts, cascadePolicy, CascadePrivateParts, descriptor, descriptors, doNotRedirect, executionSession, flushOnExecute, hintString, isCustomQueryUsed, isExecutionClone, isNativeConnectionRequired, isPrepared, isUserDefined, isUserDefinedSQLCall, monitorName, name, NoCascading, nullableArguments, parameterDelimiter, partitioningPolicy, properties, queryMechanism, queryTimeout, redirector, session, sessionName, shouldBindAllParameters, shouldCacheStatement, shouldCloneCall, shouldMaintainCache, shouldPrepare, shouldRetrieveBypassCache, shouldStoreBypassCache, shouldUseWrapperPolicy, shouldValidateUpdateCallCacheUse, sourceMapping, translationRow
Constructor and Description |
---|
ResultSetMappingQuery()
PUBLIC:
Initialize the state of the query.
|
ResultSetMappingQuery(Call call)
PUBLIC:
Initialize the query to use the specified call.
|
ResultSetMappingQuery(Call call,
java.lang.String sqlResultSetMappingName)
PUBLIC:
Initialize the query to use the specified call and SQLResultSetMapping
|
Modifier and Type | Method and Description |
---|---|
void |
addSQLResultSetMapping(SQLResultSetMapping resultSetMapping)
PUBLIC:
This will be the SQLResultSetMapping that is used by this query to process
the database results
|
void |
addSQLResultSetMappingName(java.lang.String name)
PUBLIC:
Add a SQLResultSetMapping that is used by this query to process the
database results.
|
java.util.List |
buildObjectsFromRecords(java.util.List databaseRecords)
INTERNAL:
This method is used to build the results.
|
java.util.List |
buildObjectsFromRecords(java.util.List databaseRecords,
int index)
INTERNAL:
This method is used to build the results with the SQLResultSetMapping
at the given index.
|
protected java.util.List |
buildObjectsFromRecords(java.util.List databaseRecords,
SQLResultSetMapping mapping)
INTERNAL:
This method is used to build the results.
|
void |
cacheResult(java.lang.Object unwrappedOriginal)
INTERNAL:
This method is called by the object builder when building an original.
|
void |
convertClassNamesToClasses(java.lang.ClassLoader classLoader)
INTERNAL:
Convert all the class-name-based settings in this ResultSetMapping to actual class-based
settings.
|
java.lang.Object |
executeDatabaseQuery()
INTERNAL:
Executes the prepared query on the datastore.
|
SQLResultSetMapping |
getSQLResultSetMapping()
PUBLIC:
This will be the SQLResultSetMapping that is used by this query to process
the database results
|
java.lang.String |
getSQLResultSetMappingName()
PUBLIC:
Return the result set mapping name.
|
java.util.List<java.lang.String> |
getSQLResultSetMappingNames()
PUBLIC:
Return the result set mapping name.
|
java.util.List<SQLResultSetMapping> |
getSQLResultSetMappings()
PUBLIC:
This will be the SQLResultSetMapping that is used by this query to process
the database results
|
boolean |
hasResultSetMappings()
PUBLIC:
Return true if there are results set mappings associated with this query.
|
boolean |
isResultSetMappingQuery()
PUBLIC: Return true if this is a result set mapping query.
|
protected void |
prepare()
INTERNAL:
Prepare the receiver for execution in a session.
|
void |
setIsExecuteCall(boolean isExecuteCall)
PUBLIC:
Set to true if you the actual jdbc result set returned from query
execution.
|
void |
setShouldReturnNameValuePairs(boolean returnNameValuePairs)
Set the flag that indicates whether or not to return populated
DatabaseRecord(s) as opposed to raw data when an
SQLResultSetMapping is not set.
|
void |
setSQLResultSetMapping(SQLResultSetMapping resultSetMapping)
PUBLIC:
This will be the SQLResultSetMapping that is used by this query to process
the database results
|
void |
setSQLResultSetMappingName(java.lang.String name)
PUBLIC:
This will be the SQLResultSetMapping that is used by this query to process
the database results
|
void |
setSQLResultSetMappingNames(java.util.List<java.lang.String> names)
PUBLIC:
This will be the SQLResult
|
void |
setSQLResultSetMappings(java.util.List<SQLResultSetMapping> resultSetMappings)
PUBLIC:
This will be the SQLResultSetMappings that are used by this query to
process the database results
|
boolean |
shouldReturnNameValuePairs()
Indicates whether or not to return populated DatabaseRecord(s)
as opposed to raw data when an SQLResultSetMapping is not set.
|
clone, clonedQueryExecutionComplete, copyFromQuery, deepClone, dontRefreshIdentityMapResult, dontRefreshRemoteIdentityMapResult, getDataResults, getExecutionFetchGroup, getExecutionFetchGroup, getExecutionTime, getLoadGroup, getLockMode, getPrefetchedCacheKeys, getQueryPrimaryKey, getReferenceClass, getReferenceClassName, hasExecutionFetchGroup, hasPartialAttributeExpressions, isAttributeJoined, isCacheCheckComplete, isClonePessimisticLocked, isDefaultLock, isLockQuery, isObjectBuildingQuery, isRegisteringResults, postRegisterIndividualResult, prepareCustomQuery, prepareFromQuery, recordCloneForPessimisticLocking, refreshIdentityMapResult, refreshRemoteIdentityMapResult, registerIndividualResult, requiresDeferredLocks, setExecutionTime, setLockMode, setPrefetchedCacheKeys, setReferenceClass, setReferenceClassName, setRequiresDeferredLocks, setShouldBuildNullForNullPk, setShouldRefreshIdentityMapResult, setShouldRefreshRemoteIdentityMapResult, setShouldRegisterResultsInUnitOfWork, setShouldUseExclusiveConnection, setWasDefaultLockMode, shouldBuildNullForNullPk, shouldReadAllMappings, shouldReadMapping, shouldRefreshIdentityMapResult, shouldRefreshRemoteIdentityMapResult, shouldRegisterResultsInUnitOfWork, shouldUseExclusiveConnection, shouldUseSerializedObjectPolicy, usesResultSetAccessOptimization, wasDefaultLockMode
buildObject, cacheQueryResults, clearQueryResults, doNotCacheQueryResults, getFetchSize, getFirstResult, getInternalMax, getMaxRows, getQueryId, getQueryResults, getQueryResults, getQueryResults, getQueryResultsCachePolicy, getTemporaryCachedQueryResults, isDefaultPropertiesQuery, isReadQuery, prepareForExecution, remoteExecute, setFetchSize, setFirstResult, setInternalMax, setMaxRows, setQueryId, setQueryResults, setQueryResultsCachePolicy, setTemporaryCachedQueryResults, shouldCacheQueryResults
addArgument, addArgument, addArgument, addArgument, addArgument, addArgument, addArgumentByTypeName, addArgumentValue, addArgumentValues, addCall, addStatement, bindAllParameters, buildArgumentFields, buildSelectionCriteria, cacheStatement, cascadeAllParts, cascadeByMapping, cascadeOnlyDependentParts, cascadePrivateParts, checkDescriptor, checkEarlyReturn, checkForCustomQuery, checkPrepare, checkPrepare, dontBindAllParameters, dontCacheStatement, dontCascadeParts, dontMaintainCache, execute, executeInUnitOfWork, extractRemoteResult, getAccessor, getAccessors, getArgumentParameterTypes, getArguments, getArgumentTypeNames, getArgumentTypes, getArgumentValues, getBatchObjects, getCall, getCascadePolicy, getDatasourceCall, getDatasourceCalls, getDefaultRedirector, getDescriptor, getDescriptors, getDomainClassNounName, getDoNotRedirect, getEJBQLString, getExecutionSession, getFlushOnExecute, getHintString, getJPQLString, getMonitorName, getName, getNullableArguments, getParameterDelimiter, getParameterDelimiterChar, getPartitioningPolicy, getProperties, getProperty, getQueryMechanism, getQueryNounName, getQueryTimeout, getRedirector, getRedirectorForQuery, getSelectionCriteria, getSensorName, getSession, getSessionName, getShouldBindAllParameters, getSourceMapping, getSQLStatement, getSQLString, getSQLStrings, getTranslatedSQLString, getTranslatedSQLStrings, getTranslationRow, hasAccessor, hasArguments, hasNullableArguments, hasProperties, hasQueryMechanism, hasSessionName, ignoreBindAllParameters, ignoreCacheStatement, isCallQuery, isCascadeOfAggregateDelete, isCustomQueryUsed, isCustomSelectionQuery, isDataModifyQuery, isDataReadQuery, isDeleteAllQuery, isDeleteObjectQuery, isDirectReadQuery, isExecutionClone, isExpressionQuery, isInsertObjectQuery, isJPQLCallQuery, isModifyAllQuery, isModifyQuery, isNativeConnectionRequired, isObjectLevelModifyQuery, isObjectLevelReadQuery, isPrepared, isReadAllQuery, isReadObjectQuery, isReportQuery, isSQLCallQuery, isUpdateAllQuery, isUpdateObjectQuery, isUserDefined, isUserDefinedSQLCall, isValueReadQuery, isWriteObjectQuery, maintainCache, prepareCall, prepareForRemoteExecution, prepareInternal, redirectQuery, remoteExecute, removeProperty, replaceValueHoldersIn, resetMonitorName, retrieveBypassCache, rowFromArguments, setAccessor, setAccessors, setAllowNativeSQLQuery, setArguments, setArgumentTypeNames, setArgumentTypes, setArgumentValues, setBatchObjects, setCall, setCascadePolicy, setDatasourceCall, setDescriptor, setDoNotRedirect, setEJBQLString, setExecutionSession, setFlushOnExecute, setHintString, setIsCustomQueryUsed, setIsExecutionClone, setIsNativeConnectionRequired, setIsPrepared, setIsUserDefined, setIsUserDefinedSQLCall, setJPQLString, setName, setNullableArguments, setParameterDelimiter, setPartitioningPolicy, setProperties, setProperty, setQueryMechanism, setQueryTimeout, setRedirector, setSelectionCriteria, setSession, setSessionName, setShouldBindAllParameters, setShouldBindAllParameters, setShouldCacheStatement, setShouldMaintainCache, setShouldPrepare, setShouldRetrieveBypassCache, setShouldStoreBypassCache, setShouldUseWrapperPolicy, setShouldValidateUpdateCallCacheUse, setSourceMapping, setSQLStatement, setSQLString, setTranslationRow, shouldAllowNativeSQLQuery, shouldBindAllParameters, shouldCacheStatement, shouldCascadeAllParts, shouldCascadeByMapping, shouldCascadeOnlyDependentParts, shouldCascadeParts, shouldCascadePrivateParts, shouldCloneCall, shouldIgnoreBindAllParameters, shouldIgnoreCacheStatement, shouldMaintainCache, shouldPrepare, shouldPrepare, shouldRetrieveBypassCache, shouldStoreBypassCache, shouldUseWrapperPolicy, shouldValidateUpdateCallCacheUse, storeBypassCache, toString
protected boolean isExecuteCall
protected boolean returnNameValuePairs
protected java.util.Vector resultRows
protected java.util.List<java.lang.String> resultSetMappingNames
protected java.util.List<SQLResultSetMapping> resultSetMappings
public ResultSetMappingQuery()
public ResultSetMappingQuery(Call call)
public ResultSetMappingQuery(Call call, java.lang.String sqlResultSetMappingName)
public void addSQLResultSetMapping(SQLResultSetMapping resultSetMapping)
public void addSQLResultSetMappingName(java.lang.String name)
public void cacheResult(java.lang.Object unwrappedOriginal)
This method is called by the object builder when building an original. It will cause the original to be cached in the query results if the query is set to do so.
cacheResult
in class ReadQuery
public void convertClassNamesToClasses(java.lang.ClassLoader classLoader)
convertClassNamesToClasses
in class ObjectBuildingQuery
public boolean shouldReturnNameValuePairs()
public void setShouldReturnNameValuePairs(boolean returnNameValuePairs)
public void setSQLResultSetMapping(SQLResultSetMapping resultSetMapping)
public void setSQLResultSetMappings(java.util.List<SQLResultSetMapping> resultSetMappings)
public void setSQLResultSetMappingName(java.lang.String name)
public void setSQLResultSetMappingNames(java.util.List<java.lang.String> names)
names
- public java.util.List buildObjectsFromRecords(java.util.List databaseRecords)
public java.util.List buildObjectsFromRecords(java.util.List databaseRecords, int index)
protected java.util.List buildObjectsFromRecords(java.util.List databaseRecords, SQLResultSetMapping mapping)
public java.lang.Object executeDatabaseQuery() throws DatabaseException
executeDatabaseQuery
in class DatabaseQuery
DatabaseException
- - an error has occurred on the database.public boolean hasResultSetMappings()
public boolean isResultSetMappingQuery()
isResultSetMappingQuery
in class DatabaseQuery
protected void prepare()
public SQLResultSetMapping getSQLResultSetMapping()
public java.util.List<SQLResultSetMapping> getSQLResultSetMappings()
public java.lang.String getSQLResultSetMappingName()
public java.util.List<java.lang.String> getSQLResultSetMappingNames()
public void setIsExecuteCall(boolean isExecuteCall)