All Superinterfaces:
FederatedServiceResolver
All Known Implementing Classes:
DefaultEvaluationStrategy
, EvaluationStrategyImpl
, ExtendedEvaluationStrategy
, FederationEvalStrategy
, LimitedSizeEvaluationStrategy
, SailFederationEvalStrategy
, SimpleEvaluationStrategy
, SparqlFederationEvalStrategy
, StrictEvaluationStrategy
, TupleFunctionEvaluationStrategy
Author:
Arjohn Kampman, James Leigh
Method Summary
All Methods Instance Methods Abstract Methods Default Methods
Evaluates the tuple expression against the supplied triple source with the specified set of variable bindings as
input.
Evaluates the tuple expression against the supplied triple source with the specified set of variable bindings as
input.
Gets the value of this expression.
default boolean
Enable or disable results size tracking for the query plan.
boolean
boolean
Evaluates the boolean expression on the supplied TripleSource object.
Prepare a QueryEvaluationStep that tries to do as much work once per query avoiding repeated calls to the same
code as much as possible.
default void
Set the collection factory that will create the collections to use during query evaluaton.
void
void
default void
Enable or disable results size tracking for the query plan.
default void
Enable or disable time tracking for the query plan.
Method Details
optimize
Parameters:
expr
- the TupleExpr
to optimize.
evaluationStatistics
- the EvaluationStatistics
of the data source, to be used for query planning.
bindings
- a-priori bindings supplied for the query, which can potentially be inlined.
Returns:
the optimized TupleExpr
.
Since:
3.0
See Also:
evaluate
Evaluates the tuple expression against the supplied triple source with the specified set of variable bindings as
input.
Parameters:
expr
- The Service Expression to evaluate
serviceUri
- TODO
bindings
- The variables bindings iterator to use for evaluating the expression, if applicable.
Returns:
A closeable iterator over all of variable binding sets that match the tuple expression.
Throws:
QueryEvaluationException
evaluate
Evaluates the tuple expression against the supplied triple source with the specified set of variable bindings as
input.
Parameters:
expr
- The Tuple Expression to evaluate
bindings
- The variables bindings to use for evaluating the expression, if applicable.
Returns:
A closeable iterator over the variable binding sets that match the tuple expression.
Throws:
QueryEvaluationException
precompile
Prepare a QueryEvaluationStep that tries to do as much work once per query avoiding repeated calls to the same
code as much as possible. This depends on java invoke dynamic for performance.
Parameters:
expr
- that is to be evaluated later
Returns:
a QueryEvaluationStep that may avoid doing repeating the same work over and over.
evaluate
Gets the value of this expression.
Parameters:
expr
-
bindings
- The variables bindings to use for evaluating the expression, if applicable.
Returns:
The Value that this expression evaluates to, or null if the expression could not be evaluated.
Throws:
ValueExprEvaluationException
QueryEvaluationException
isTrue
Evaluates the boolean expression on the supplied TripleSource object.
Parameters:
expr
-
bindings
- The variables bindings to use for evaluating the expression, if applicable.
Returns:
The result of the evaluation.
Throws:
ValueExprEvaluationException
- If the value expression could not be evaluated, for example when comparing
two incompatible operands. When thrown, the result of the boolean expression
is neither true nor false , but unknown.
QueryEvaluationException
setTrackResultSize
@Experimental
default void setTrackResultSize (boolean trackResultSize)
Enable or disable results size tracking for the query plan. Useful to determine which parts of a query plan
generated the most data.
Parameters:
trackResultSize
- true to enable tracking.
isTrackResultSize
Enable or disable results size tracking for the query plan.
setTrackTime
Enable or disable time tracking for the query plan. Useful to determine which parts of a query plan take the most
time to evaluate.
Parameters:
trackTime
- true to enable tracking.
makeSet
default <T> Set <T> makeSet ()
makeQueue
default <T> Queue <T> makeQueue ()
setCollectionFactory
Set the collection factory that will create the collections to use during query evaluaton.
Parameters:
a
- CollectionFactory that should be used during future query evaluations