Package org.datanucleus.store.query
Class AbstractJavaQuery<T>
java.lang.Object
org.datanucleus.store.query.Query<T>
org.datanucleus.store.query.AbstractJavaQuery<T>
- All Implemented Interfaces:
Serializable
,ExecutionContextListener
- Direct Known Subclasses:
AbstractJDOQLQuery
,AbstractJPQLQuery
Abstract representation of a Java-based query.
To be extended by Java-based query languages.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.datanucleus.store.query.Query
Query.QueryType, Query.SubqueryDefinition
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Collection
<T> Collection of candidates for this query.private static final long
protected String
Cached form of the single string form of the query.Fields inherited from class org.datanucleus.store.query.Query
candidateClass, candidateClassName, clr, compilation, ec, explicitParameters, explicitVariables, EXTENSION_CHECK_UNUSED_PARAMETERS, EXTENSION_CLOSE_RESULTS_AT_EC_CLOSE, EXTENSION_COMPILATION_CACHED, EXTENSION_COMPILE_OPTIMISE_VAR_THIS, EXTENSION_EVALUATE_IN_MEMORY, EXTENSION_EXCLUDE_SUBCLASSES, EXTENSION_FLUSH_BEFORE_EXECUTION, EXTENSION_JDOQL_ALLOW_ALL, EXTENSION_JDOQL_STRICT, EXTENSION_JPQL_ALLOW_RANGE, EXTENSION_JPQL_STRICT, EXTENSION_LOAD_RESULTS_AT_COMMIT, EXTENSION_QUERY_TYPE, EXTENSION_RESULT_CACHE_TYPE, EXTENSION_RESULT_CACHE_VALIDATE_OBJECTS, EXTENSION_RESULT_SIZE_METHOD, EXTENSION_RESULTS_CACHED, EXTENSION_SQL_ALLOW_ALL, EXTENSION_SQL_SYNTAX_CHECKS, EXTENSION_UPDATE_ALL_CANDIDATE_FIELDS, EXTENSION_USE_FETCH_PLAN, extensions, filter, from, fromInclNo, fromInclParam, grouping, having, ignoreCache, implicitParameters, imports, inputParameters, insertFields, insertSelectQuery, ordering, parameterNames, parsedImports, queryResults, range, result, resultClass, resultClassName, resultDistinct, storeMgr, subclasses, subqueries, tasks, toExclNo, toExclParam, type, unique, unmodifiable, update
-
Constructor Summary
ConstructorsConstructorDescriptionAbstractJavaQuery
(StoreManager storeMgr, ExecutionContext ec) Constructor for a Java-based query. -
Method Summary
Modifier and TypeMethodDescriptionabstract void
compileGeneric
(Map<Object, Object> parameterValues) Method to generate the generic compilation of this query.protected String
dereferenceFilter
(String input) Method to expand the subqueries defined in a filter.protected void
Method to discard our current compiled query due to changes.protected boolean
Convenience method to return whether the query should be evaluated in-memory.abstract String
Accessor for a single string form of the query.protected long
performDeletePersistentAll
(Map parameters) Execute the query to delete persistent objects.void
setCandidates
(Collection<T> pcs) Set the candidate collection to query.void
setCandidates
(Extent<T> pcs) Set the candidate Extent to query.toString()
Stringifier methodMethods inherited from class org.datanucleus.store.query.Query
addExtension, addSubquery, applyImplicitParameterValueToCompilation, applyImplicitParameterValueToSubqueries, assertIsModifiable, assertIsOpen, assertSupportsCancel, cancel, cancel, cancelTaskObject, checkForMissingParameters, checkParameterTypesAgainstCompilation, checkUnusedParameters, close, closeAll, compile, compileInternal, declareExplicitParameters, declareExplicitVariables, declareImports, deepFindSymbolForParameterInCompilation, deletePersistentAll, deletePersistentAll, deletePersistentAll, deregisterTask, equals, execute, executeQuery, executeWithArray, executeWithMap, executionContextClosing, getBooleanExtensionProperty, getCandidateClass, getCandidateClassMetaData, getCandidateClassName, getCompilation, getDatastoreReadTimeoutMillis, getDatastoreWriteTimeoutMillis, getExecutionContext, getExplicitParametersDeclaration, getExplicitVariablesDeclaration, getExtension, getExtensions, getFetchPlan, getFilter, getFrom, getGrouping, getHaving, getIgnoreCache, getImplicitParameters, getImportsDeclaration, getInputParameters, getInsertFields, getInsertSelectQuery, getLanguage, getNativeQuery, getOrdering, getParameterMapForValues, getParsedImports, getQueryManager, getRange, getRangeFromIncl, getRangeFromInclParam, getRangeToExcl, getRangeToExclParam, getResult, getResultClass, getResultClassName, getResultDistinct, getSerializeRead, getStoreManager, getStringExtensionProperty, getSubqueryForVariable, getSupportedExtensions, getType, getUpdate, hashCode, hasSubqueryForVariable, isCompiled, isSubclasses, isUnique, isUnmodifiable, performExecute, prepareDatastore, processesRangeInDatastoreQuery, registerTask, resolveClassDeclaration, setCacheResults, setCandidateClass, setCandidateClassName, setCompilation, setDatastoreReadTimeoutMillis, setDatastoreWriteTimeoutMillis, setExtensions, setFetchPlan, setFilter, setFrom, setGrouping, setHaving, setIgnoreCache, setImplicitParameter, setImplicitParameter, setInsertFields, setInsertSelectQuery, setOrdering, setRange, setRange, setResult, setResultClass, setResultClassName, setResultDistinct, setResultMetaData, setSerializeRead, setSubclasses, setType, setUnique, setUnmodifiable, setUpdate, shouldReturnSingleRow, supportsTimeout, useCaching, useFetchPlan, useResultsCaching
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
candidateCollection
Collection of candidates for this query. -
singleString
Cached form of the single string form of the query.
-
-
Constructor Details
-
AbstractJavaQuery
Constructor for a Java-based query.- Parameters:
storeMgr
- StoreManager for this queryec
- ExecutionContext
-
-
Method Details
-
setCandidates
Set the candidate Extent to query. Passing in null clears off the current candidate Extent.- Specified by:
setCandidates
in classQuery<T>
- Parameters:
pcs
- the Candidate Extent.
-
setCandidates
Set the candidate collection to query. Passing in null clears off the current candidate collection.- Specified by:
setCandidates
in classQuery<T>
- Parameters:
pcs
- the Candidate collection.
-
discardCompiled
protected void discardCompiled()Method to discard our current compiled query due to changes.- Overrides:
discardCompiled
in classQuery<T>
- See Also:
-
compileGeneric
Method to generate the generic compilation of this query.- Parameters:
parameterValues
- Values for any parameters
-
performDeletePersistentAll
Execute the query to delete persistent objects.- Overrides:
performDeletePersistentAll
in classQuery<T>
- Parameters:
parameters
- the Map containing all of the parameters.- Returns:
- the number of deleted objects.
-
getSingleStringQuery
Accessor for a single string form of the query.- Returns:
- Single string form of the query.
-
toString
Stringifier method -
evaluateInMemory
protected boolean evaluateInMemory()Convenience method to return whether the query should be evaluated in-memory.- Returns:
- Use in-memory evaluation?
-
dereferenceFilter
Method to expand the subqueries defined in a filter.- Parameters:
input
- the input string- Returns:
- The filter expanded
-