public class QueryCacheStoreQuery extends Object implements StoreQuery
StoreQuery
implementation that caches the OIDs involved in
the query, and can determine whether or not the query has been dirtied.Modifier and Type | Class and Description |
---|---|
static class |
QueryCacheStoreQuery.CachedList
Result list implementation for a cached query result.
|
StoreQuery.Executor, StoreQuery.Range
EMPTY_BOOLEANS, EMPTY_CLASSES, EMPTY_METAS, EMPTY_OBJECTS, EMPTY_ORDERED_PARAMS, EMPTY_PARAMS, EMPTY_STRINGS
OP_DELETE, OP_SELECT, OP_UPDATE
Constructor and Description |
---|
QueryCacheStoreQuery(StoreQuery query,
QueryCache cache)
Create a new instance that delegates to
query if no
cached results are available. |
Modifier and Type | Method and Description |
---|---|
Object |
evaluate(Object value,
Object ob,
Object[] params,
OpenJPAStateManager sm) |
AggregateListener |
getAggregateListener(String tag)
Return the standard filter listener for the given tag, or null.
|
QueryCache |
getCache()
Return the
QueryCache that this object is associated with. |
Object |
getCompilation()
Get the current compilation for this query.
|
QueryContext |
getContext()
Return the query context that has been set.
|
StoreQuery |
getDelegate()
Delegate.
|
FilterListener |
getFilterListener(String tag)
Return the standard filter listener for the given tag, or null.
|
void |
invalidateCompilation()
Invalidate any internal compilation state.
|
Object |
newCompilation()
Create a new compilation for this query.
|
Object |
newCompilationKey()
Create a new key for caching compiled query information.
|
StoreQuery.Executor |
newDataStoreExecutor(ClassMetaData meta,
boolean subs)
Return an executor for datastore execution of this query.
|
StoreQuery.Executor |
newInMemoryExecutor(ClassMetaData meta,
boolean subs)
Return an executor for in-memory execution of this query.
|
void |
populateFromCompilation(Object comp)
Populate internal data from compilation.
|
boolean |
requiresCandidateType()
Whether this query requires a candidate class.
|
boolean |
requiresParameterDeclarations()
Whether this query requires parameters to be declared.
|
void |
setContext(QueryContext qctx)
Set the current query context.
|
boolean |
setQuery(Object query)
This is invoked when the user or a facade creates a new query with
an object that the system does not recognize.
|
boolean |
supportsAbstractExecutors()
Return true if this query supports execution against abstract or
interface types.
|
boolean |
supportsDataStoreExecution()
True if this query supports datastore execution, false if it
can only run in memory.
|
boolean |
supportsInMemoryExecution()
True if this query supports in-memory execution, false if it
can only run against the datastore.
|
boolean |
supportsParameterDeclarations()
Whether this query supports declared parameters.
|
Object |
writeReplace() |
public QueryCacheStoreQuery(StoreQuery query, QueryCache cache)
query
if no
cached results are available.public QueryCache getCache()
QueryCache
that this object is associated with.public StoreQuery getDelegate()
public Object writeReplace() throws ObjectStreamException
ObjectStreamException
public QueryContext getContext()
StoreQuery
getContext
in interface StoreQuery
public void setContext(QueryContext qctx)
StoreQuery
setContext
in interface StoreQuery
public boolean setQuery(Object query)
StoreQuery
setQuery
in interface StoreQuery
public FilterListener getFilterListener(String tag)
StoreQuery
getFilterListener
in interface StoreQuery
public AggregateListener getAggregateListener(String tag)
StoreQuery
getAggregateListener
in interface StoreQuery
public Object newCompilationKey()
StoreQuery
newCompilationKey
in interface StoreQuery
public Object newCompilation()
StoreQuery
newCompilation
in interface StoreQuery
public Object getCompilation()
StoreQuery
getCompilation
in interface StoreQuery
public void populateFromCompilation(Object comp)
StoreQuery
populateFromCompilation
in interface StoreQuery
public void invalidateCompilation()
StoreQuery
invalidateCompilation
in interface StoreQuery
public boolean supportsDataStoreExecution()
StoreQuery
supportsDataStoreExecution
in interface StoreQuery
public boolean supportsInMemoryExecution()
StoreQuery
supportsInMemoryExecution
in interface StoreQuery
public StoreQuery.Executor newInMemoryExecutor(ClassMetaData meta, boolean subs)
StoreQuery
StoreQuery.supportsAbstractExecutors()
, the given metadata
will always be for the candidate class of this query, or possibly
null if the candidate class is not itself persistence capable (like
an interface or abstract base class). Otherwise, the given type will
be a mapped class.newInMemoryExecutor
in interface StoreQuery
subs
- whether to include dependent mapped subclasses in the
results; independent subclasses should never be includedpublic StoreQuery.Executor newDataStoreExecutor(ClassMetaData meta, boolean subs)
StoreQuery
StoreQuery.supportsAbstractExecutors()
, the given metadata
will always be for the candidate class of this query, or possibly
null if the candidate class is not itself persistence capable (like
an interface or abstract base class). Otherwise, the given type will
be a mapped class.newDataStoreExecutor
in interface StoreQuery
subs
- whether to include dependent mapped subclasses in the
results; independent subclasses should never be includedpublic boolean supportsAbstractExecutors()
StoreQuery
supportsAbstractExecutors
in interface StoreQuery
public boolean requiresCandidateType()
StoreQuery
requiresCandidateType
in interface StoreQuery
public boolean requiresParameterDeclarations()
StoreQuery
requiresParameterDeclarations
in interface StoreQuery
public boolean supportsParameterDeclarations()
StoreQuery
supportsParameterDeclarations
in interface StoreQuery
public Object evaluate(Object value, Object ob, Object[] params, OpenJPAStateManager sm)
evaluate
in interface StoreQuery
Copyright © 2006–2018 Apache Software Foundation. All rights reserved.