Package org.apache.openjpa.kernel
Class ExpressionStoreQuery.InMemoryExecutor
- java.lang.Object
 - 
- org.apache.openjpa.kernel.AbstractStoreQuery.AbstractExecutor
 - 
- org.apache.openjpa.kernel.ExpressionStoreQuery.AbstractExpressionExecutor
 - 
- org.apache.openjpa.kernel.ExpressionStoreQuery.InMemoryExecutor
 
 
 
 
- 
- All Implemented Interfaces:
 Serializable,StoreQuery.Executor
- Enclosing class:
 - ExpressionStoreQuery
 
public static class ExpressionStoreQuery.InMemoryExecutor extends ExpressionStoreQuery.AbstractExpressionExecutor implements StoreQuery.Executor, Serializable
Runs the expression query in memory.- See Also:
 - Serialized Form
 
 
- 
- 
Constructor Summary
Constructors Constructor Description InMemoryExecutor(ExpressionStoreQuery q, ClassMetaData candidate, boolean subclasses, ExpressionParser parser, Object parsed, InMemoryExpressionFactory factory) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ResultObjectProviderexecuteQuery(StoreQuery q, Object[] params, StoreQuery.Range range)Return the result of executing this query with the given parameter values.String[]getDataStoreActions(StoreQuery q, Object[] params, StoreQuery.Range range)Return a description of the commands that will be sent to the datastore in order to execute the query.ObjectgetOrderingValue(StoreQuery q, Object[] params, Object resultObject, int orderIndex)Extract the value of theorderIndexth ordering expression inQuery#getOrderingClausesfrom the given result object.Class[]getProjectionTypes(StoreQuery q)Return the expected types of the projections used by this query, or an empty array if not a projection.QueryExpressions[]getQueryExpressions()Return the parsed query expressions for our candidate types.- 
Methods inherited from class org.apache.openjpa.kernel.ExpressionStoreQuery.AbstractExpressionExecutor
assertNotContainer, getAccessPathMetaDatas, getAlias, getAscending, getOperation, getOrderedParameterTypes, getProjectionAliases, getRange, getResultClass, getResultShape, getUpdates, hasGrouping, isAggregate, isDistinct, isPacking, toParameterArray, validate 
- 
Methods inherited from class org.apache.openjpa.kernel.AbstractStoreQuery.AbstractExecutor
executeDelete, executeUpdate, getParameterTypes 
- 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
- 
Methods inherited from interface org.apache.openjpa.kernel.StoreQuery.Executor
executeDelete, executeUpdate, getAccessPathMetaDatas, getAlias, getAscending, getOperation, getOrderedParameterTypes, getParameterTypes, getProjectionAliases, getRange, getResultClass, getResultShape, getUpdates, hasGrouping, isAggregate, isDistinct, isPacking, toParameterArray, validate 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
InMemoryExecutor
public InMemoryExecutor(ExpressionStoreQuery q, ClassMetaData candidate, boolean subclasses, ExpressionParser parser, Object parsed, InMemoryExpressionFactory factory)
 
 - 
 
- 
Method Detail
- 
getQueryExpressions
public QueryExpressions[] getQueryExpressions()
Description copied from interface:StoreQuery.ExecutorReturn the parsed query expressions for our candidate types. The expressions are available only after query has been parsed.- Specified by:
 getQueryExpressionsin interfaceStoreQuery.Executor- Overrides:
 getQueryExpressionsin classAbstractStoreQuery.AbstractExecutor
 
- 
executeQuery
public ResultObjectProvider executeQuery(StoreQuery q, Object[] params, StoreQuery.Range range)
Description copied from interface:StoreQuery.ExecutorReturn the result of executing this query with the given parameter values. If this query is a projection and this executor does not pack results itself, each element of the returned result object provider should be an object array containing the projection values.- Specified by:
 executeQueryin interfaceStoreQuery.Executor- See Also:
 StoreQuery.Executor.isPacking(org.apache.openjpa.kernel.StoreQuery)
 
- 
getDataStoreActions
public String[] getDataStoreActions(StoreQuery q, Object[] params, StoreQuery.Range range)
Description copied from interface:StoreQuery.ExecutorReturn a description of the commands that will be sent to the datastore in order to execute the query.- Specified by:
 getDataStoreActionsin interfaceStoreQuery.Executor- Overrides:
 getDataStoreActionsin classAbstractStoreQuery.AbstractExecutor
 
- 
getOrderingValue
public Object getOrderingValue(StoreQuery q, Object[] params, Object resultObject, int orderIndex)
Description copied from interface:StoreQuery.ExecutorExtract the value of theorderIndexth ordering expression inQuery#getOrderingClausesfrom the given result object. The result object will be an object from the result object provider returned fromStoreQuery.Executor.executeQuery(org.apache.openjpa.kernel.StoreQuery, java.lang.Object[], org.apache.openjpa.kernel.StoreQuery.Range). This method is used when several result lists have to be merged in memory. If this exeuctor's parent query supports executors on abstract or interface classes, this method will not be used.- Specified by:
 getOrderingValuein interfaceStoreQuery.Executor- Overrides:
 getOrderingValuein classAbstractStoreQuery.AbstractExecutor- See Also:
 StoreQuery.supportsAbstractExecutors()
 
- 
getProjectionTypes
public Class[] getProjectionTypes(StoreQuery q)
Description copied from interface:StoreQuery.ExecutorReturn the expected types of the projections used by this query, or an empty array if not a projection.- Specified by:
 getProjectionTypesin interfaceStoreQuery.Executor- Overrides:
 getProjectionTypesin classExpressionStoreQuery.AbstractExpressionExecutor
 
 - 
 
 -