org.cumulus4j.store.query.eval
Class SubqueryExpressionEvaluator
java.lang.Object
org.cumulus4j.store.query.eval.AbstractExpressionEvaluator<SubqueryExpression>
org.cumulus4j.store.query.eval.SubqueryExpressionEvaluator
public class SubqueryExpressionEvaluator
- extends AbstractExpressionEvaluator<SubqueryExpression>
Evaluator handling a sub-query.
- Author:
- Andy Jefferson, Marco หงุ่ยตระกูล-Schulze - marco at nightlabs dot de (only added javadoc)
Methods inherited from class org.cumulus4j.store.query.eval.AbstractExpressionEvaluator |
_getResultSymbols, _queryResultObjects, getExpression, getFieldType, getLeft, getParent, getQueryEvaluator, getResultSymbols, getRight, queryResultDataEntryIDs, queryResultObjects, setLeft, setRight |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SubqueryExpressionEvaluator
public SubqueryExpressionEvaluator(QueryEvaluator queryEvaluator,
AbstractExpressionEvaluator<?> parent,
SubqueryExpression expression)
- Create an instance.
- Parameters:
queryEvaluator
- the evaluator responsible for the evaluation of the whole query.parent
- the parent in the tree structure or null
, if this is the root.expression
- the expression to evaluate.
_queryResultDataEntryIDs
protected Set<Long> _queryResultDataEntryIDs(ResultDescriptor resultDescriptor)
throws UnsupportedOperationException
- Description copied from class:
AbstractExpressionEvaluator
- Execute a query for the given
resultDescriptor
. This method should contain
the concrete logic for AbstractExpressionEvaluator.queryResultDataEntryIDs(ResultDescriptor)
and must be implemented
by subclasses.
- Specified by:
_queryResultDataEntryIDs
in class AbstractExpressionEvaluator<SubqueryExpression>
- Parameters:
resultDescriptor
- the descriptor specifying what candidates (usually "this" or a variable) the
caller is interested in as well as modifiers (e.g. negation
)
affecting the query.
- Returns:
- those
dataEntryID
s that match the query
criteria for the specified resultSymbol
or null
, if the symbol is not
supported (this should be consistent with the implementation of AbstractExpressionEvaluator._getResultSymbols()
).
- Throws:
UnsupportedOperationException
- if the implementation does not support querying at all
(e.g. because it makes no sense without more context) or if the concrete query situation is not
yet supported.- See Also:
AbstractExpressionEvaluator.queryResultDataEntryIDs(ResultDescriptor)
Copyright © 2013 NightLabs Consulting GmbH. All Rights Reserved.