EclipseLink 2.4.2, build 'v20130514-5956486' API Reference

org.eclipse.persistence.queries
Class ResultSetMappingQuery

java.lang.Object
  extended by org.eclipse.persistence.queries.DatabaseQuery
      extended by org.eclipse.persistence.queries.ReadQuery
          extended by org.eclipse.persistence.queries.ObjectBuildingQuery
              extended by org.eclipse.persistence.queries.ResultSetMappingQuery
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

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

See Also:
SQLResultSetMapping, Serialized Form
Author:
Gordon Yorke
Since:
TopLink Java Essentials

Field Summary
protected  java.util.Vector resultRows
           
protected  java.util.List<java.lang.String> resultSetMappingNames
           
protected  java.util.List<SQLResultSetMapping> resultSetMappings
           
 
Fields inherited from class org.eclipse.persistence.queries.ObjectBuildingQuery
DEFAULT_LOCK_MODE, executionTime, isCacheCheckComplete, LOCK, LOCK_NOWAIT, LOCK_RESULT_PROPERTY, lockingClause, NO_LOCK, prefetchedCacheKeys, referenceClass, referenceClassName, requiresDeferredLocks, shouldBuildNullForNullPk, shouldRefreshIdentityMapResult, shouldRefreshRemoteIdentityMapResult, shouldRegisterResultsInUnitOfWork, shouldUseExclusiveConnection, wasDefaultLockMode
 
Fields inherited from class org.eclipse.persistence.queries.ReadQuery
fetchSize, firstResult, maxRows, queryId, queryResultCachingPolicy, temporaryCachedQueryResults
 
Fields inherited from class org.eclipse.persistence.queries.DatabaseQuery
accessors, allowNativeSQLQuery, argumentFields, arguments, argumentTypeNames, argumentTypes, argumentValues, BATCH_FETCH_PROPERTY, CascadeAggregateDelete, CascadeAllParts, CascadeByMapping, CascadeDependentParts, cascadePolicy, CascadePrivateParts, descriptor, 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 Summary
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
 
Method Summary
 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.
protected  java.util.List buildObjectsFromRecords(java.util.List databaseRecords)
          INTERNAL: This method is used to build the results.
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
protected  void prepare()
          INTERNAL: Prepare the receiver for execution in a session.
 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
 
Methods inherited from class org.eclipse.persistence.queries.ObjectBuildingQuery
clone, clonedQueryExecutionComplete, copyFromQuery, deepClone, dontRefreshIdentityMapResult, dontRefreshRemoteIdentityMapResult, getDataResults, getEntityFetchGroup, getExecutionFetchGroup, getExecutionTime, 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, wasDefaultLockMode
 
Methods inherited from class org.eclipse.persistence.queries.ReadQuery
buildObject, cacheQueryResults, clearQueryResults, doNotCacheQueryResults, getFetchSize, getFirstResult, getMaxRows, getQueryId, getQueryResults, getQueryResults, getQueryResults, getQueryResultsCachePolicy, getTemporaryCachedQueryResults, isDefaultPropertiesQuery, isReadQuery, prepareForExecution, remoteExecute, setFetchSize, setFirstResult, setMaxRows, setQueryId, setQueryResults, setQueryResultsCachePolicy, setTemporaryCachedQueryResults, shouldCacheQueryResults
 
Methods inherited from class org.eclipse.persistence.queries.DatabaseQuery
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, getArguments, getArgumentTypeNames, getArgumentTypes, getArgumentValues, getBatchObjects, getCall, getCascadePolicy, getDatasourceCall, getDatasourceCalls, getDefaultRedirector, getDescriptor, 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, 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
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

resultRows

protected java.util.Vector resultRows

resultSetMappingNames

protected java.util.List<java.lang.String> resultSetMappingNames

resultSetMappings

protected java.util.List<SQLResultSetMapping> resultSetMappings
Constructor Detail

ResultSetMappingQuery

public ResultSetMappingQuery()
PUBLIC: Initialize the state of the query.


ResultSetMappingQuery

public ResultSetMappingQuery(Call call)
PUBLIC: Initialize the query to use the specified call.


ResultSetMappingQuery

public ResultSetMappingQuery(Call call,
                             java.lang.String sqlResultSetMappingName)
PUBLIC: Initialize the query to use the specified call and SQLResultSetMapping

Method Detail

addSQLResultSetMapping

public void addSQLResultSetMapping(SQLResultSetMapping resultSetMapping)
PUBLIC: This will be the SQLResultSetMapping that is used by this query to process the database results


addSQLResultSetMappingName

public void addSQLResultSetMappingName(java.lang.String name)
PUBLIC: Add a SQLResultSetMapping that is used by this query to process the database results.


cacheResult

public void cacheResult(java.lang.Object unwrappedOriginal)
INTERNAL:

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.

Specified by:
cacheResult in class ReadQuery

convertClassNamesToClasses

public void convertClassNamesToClasses(java.lang.ClassLoader classLoader)
INTERNAL: Convert all the class-name-based settings in this ResultSetMapping to actual class-based settings. This method is used when converting a project that has been built with class names to a project with classes.

Overrides:
convertClassNamesToClasses in class ObjectBuildingQuery

setSQLResultSetMapping

public void setSQLResultSetMapping(SQLResultSetMapping resultSetMapping)
PUBLIC: This will be the SQLResultSetMapping that is used by this query to process the database results


setSQLResultSetMappings

public void setSQLResultSetMappings(java.util.List<SQLResultSetMapping> resultSetMappings)
PUBLIC: This will be the SQLResultSetMappings that are used by this query to process the database results


setSQLResultSetMappingName

public void setSQLResultSetMappingName(java.lang.String name)
PUBLIC: This will be the SQLResultSetMapping that is used by this query to process the database results


setSQLResultSetMappingNames

public void setSQLResultSetMappingNames(java.util.List<java.lang.String> names)
PUBLIC: This will be the SQLResult

Parameters:
names -

buildObjectsFromRecords

protected java.util.List buildObjectsFromRecords(java.util.List databaseRecords)
INTERNAL: This method is used to build the results. Interpreting the SQLResultSetMapping(s).


buildObjectsFromRecords

protected java.util.List buildObjectsFromRecords(java.util.List databaseRecords,
                                                 SQLResultSetMapping mapping)
INTERNAL: This method is used to build the results. Interpreting the SQLResultSetMapping.


executeDatabaseQuery

public java.lang.Object executeDatabaseQuery()
                                      throws DatabaseException
INTERNAL: Executes the prepared query on the datastore.

Specified by:
executeDatabaseQuery in class DatabaseQuery
Returns:
- the result of executing the query.
Throws:
DatabaseException - - an error has occurred on the database.

prepare

protected void prepare()
INTERNAL: Prepare the receiver for execution in a session.

Overrides:
prepare in class ReadQuery

getSQLResultSetMapping

public SQLResultSetMapping getSQLResultSetMapping()
PUBLIC: This will be the SQLResultSetMapping that is used by this query to process the database results


getSQLResultSetMappings

public java.util.List<SQLResultSetMapping> getSQLResultSetMappings()
PUBLIC: This will be the SQLResultSetMapping that is used by this query to process the database results


getSQLResultSetMappingName

public java.lang.String getSQLResultSetMappingName()
PUBLIC: Return the result set mapping name.


getSQLResultSetMappingNames

public java.util.List<java.lang.String> getSQLResultSetMappingNames()
PUBLIC: Return the result set mapping name.


EclipseLink 2.4.2, build 'v20130514-5956486' API Reference