Class FedXTupleQuery
java.lang.Object
org.eclipse.rdf4j.query.impl.AbstractOperation
org.eclipse.rdf4j.query.impl.AbstractQuery
org.eclipse.rdf4j.query.impl.AbstractParserQuery
org.eclipse.rdf4j.repository.sail.SailQuery
org.eclipse.rdf4j.repository.sail.SailTupleQuery
org.eclipse.rdf4j.federated.structures.FedXTupleQuery
- All Implemented Interfaces:
Operation
,Query
,TupleQuery
Abstraction of a
SailTupleQuery
which takes care for tracking the
FedXRepositoryConnection.BINDING_ORIGINAL_MAX_EXECUTION_TIME
during evaluation.
All methods are delegated to the actual SailTupleQuery
.- Author:
- Andreas Schwarte
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.rdf4j.query.impl.AbstractParserQuery
AbstractParserQuery.QueryInterruptIteration
Nested classes/interfaces inherited from interface org.eclipse.rdf4j.query.Query
Query.QueryType
-
Field Summary
Fields inherited from class org.eclipse.rdf4j.query.impl.AbstractParserQuery
DEFAULT_EXPLANATION_EXECUTION_TIMEOUT
Fields inherited from class org.eclipse.rdf4j.query.impl.AbstractOperation
bindings, dataset, includeInferred
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Removes all previously set bindings.boolean
evaluate()
void
evaluate
(TupleQueryResultHandler handler) Gets the "active" dataset for this query.Retrieves the bindings that have been set on this operation.Gets the dataset that has been set usingOperation.setDataset(Dataset)
, if any.boolean
Returns whether or not this operation will return inferred statements (if any are present in the repository).int
Returns the maximum operation execution time.int
Returns the maximum query evaluation time.int
hashCode()
void
removeBinding
(String name) Removes a previously set binding on the supplied variable.void
setBinding
(String name, Value value) Binds the specified variable to the supplied value.void
setDataset
(Dataset dataset) Specifies the dataset against which to execute an operation, overriding any dataset that is specified in the operation itself.void
setIncludeInferred
(boolean includeInferred) Determine whether evaluation results of this operation should include inferred statements (if any inferred statements are present in the repository).void
setMaxExecutionTime
(int maxExecutionTimeSeconds) Specifies the maximum time that an operation is allowed to run.void
setMaxQueryTime
(int maxQueryTime) Specifies the maximum time that a query is allowed to run.toString()
Methods inherited from class org.eclipse.rdf4j.repository.sail.SailQuery
explain, getConnection
Methods inherited from class org.eclipse.rdf4j.query.impl.AbstractParserQuery
enforceMaxQueryTime
-
Field Details
-
delegate
-
-
Constructor Details
-
FedXTupleQuery
-
-
Method Details
-
evaluate
- Specified by:
evaluate
in interfaceTupleQuery
- Overrides:
evaluate
in classSailTupleQuery
- Throws:
QueryEvaluationException
-
evaluate
public void evaluate(TupleQueryResultHandler handler) throws QueryEvaluationException, TupleQueryResultHandlerException - Specified by:
evaluate
in interfaceTupleQuery
- Overrides:
evaluate
in classSailTupleQuery
- Throws:
QueryEvaluationException
TupleQueryResultHandlerException
-
setMaxQueryTime
public void setMaxQueryTime(int maxQueryTime) Description copied from interface:Query
Specifies the maximum time that a query is allowed to run. The query will be interrupted when it exceeds the time limit. Any consecutive requests to fetch query results will result inQueryInterruptedException
s.- Specified by:
setMaxQueryTime
in interfaceQuery
- Overrides:
setMaxQueryTime
in classAbstractQuery
- Parameters:
maxQueryTime
- The maximum query time, measured in seconds. A negative or zero value indicates an unlimited query time (which is the default).
-
getMaxQueryTime
public int getMaxQueryTime()Description copied from interface:Query
Returns the maximum query evaluation time.- Specified by:
getMaxQueryTime
in interfaceQuery
- Overrides:
getMaxQueryTime
in classAbstractQuery
- Returns:
- The maximum query evaluation time, measured in seconds.
- See Also:
-
setBinding
Description copied from interface:Operation
Binds the specified variable to the supplied value. Any value that was previously bound to the specified value will be overwritten.- Specified by:
setBinding
in interfaceOperation
- Overrides:
setBinding
in classAbstractOperation
- Parameters:
name
- The name of the variable that should be bound.value
- The (new) value for the specified variable.
-
removeBinding
Description copied from interface:Operation
Removes a previously set binding on the supplied variable. Calling this method with an unbound variable name has no effect.- Specified by:
removeBinding
in interfaceOperation
- Overrides:
removeBinding
in classAbstractOperation
- Parameters:
name
- The name of the variable from which the binding is to be removed.
-
clearBindings
public void clearBindings()Description copied from interface:Operation
Removes all previously set bindings.- Specified by:
clearBindings
in interfaceOperation
- Overrides:
clearBindings
in classAbstractOperation
-
hashCode
public int hashCode()- Overrides:
hashCode
in classAbstractParserQuery
-
getParsedQuery
- Overrides:
getParsedQuery
in classSailTupleQuery
-
getBindings
Description copied from interface:Operation
Retrieves the bindings that have been set on this operation.- Specified by:
getBindings
in interfaceOperation
- Overrides:
getBindings
in classAbstractOperation
- Returns:
- A (possibly empty) set of operation variable bindings.
- See Also:
-
setDataset
Description copied from interface:Operation
Specifies the dataset against which to execute an operation, overriding any dataset that is specified in the operation itself.- Specified by:
setDataset
in interfaceOperation
- Overrides:
setDataset
in classAbstractOperation
-
getDataset
Description copied from interface:Operation
Gets the dataset that has been set usingOperation.setDataset(Dataset)
, if any.- Specified by:
getDataset
in interfaceOperation
- Overrides:
getDataset
in classAbstractOperation
-
setIncludeInferred
public void setIncludeInferred(boolean includeInferred) Description copied from interface:Operation
Determine whether evaluation results of this operation should include inferred statements (if any inferred statements are present in the repository). The default setting is 'true'.- Specified by:
setIncludeInferred
in interfaceOperation
- Overrides:
setIncludeInferred
in classAbstractOperation
- Parameters:
includeInferred
- indicates whether inferred statements should be included in the result.
-
getActiveDataset
Description copied from class:AbstractParserQuery
Gets the "active" dataset for this query. The active dataset is either the dataset that has been specified usingAbstractOperation.setDataset(Dataset)
or the dataset that has been specified in the query, where the former takes precedence over the latter.- Overrides:
getActiveDataset
in classAbstractParserQuery
- Returns:
- The active dataset, or null if there is no dataset.
-
getIncludeInferred
public boolean getIncludeInferred()Description copied from interface:Operation
Returns whether or not this operation will return inferred statements (if any are present in the repository).- Specified by:
getIncludeInferred
in interfaceOperation
- Overrides:
getIncludeInferred
in classAbstractOperation
- Returns:
- true if inferred statements will be returned, false otherwise.
-
setMaxExecutionTime
public void setMaxExecutionTime(int maxExecutionTimeSeconds) Description copied from interface:Operation
Specifies the maximum time that an operation is allowed to run. The operation will be interrupted when it exceeds the time limit. Any consecutive requests to fetch query results will result inQueryInterruptedException
s orUpdateExecutionException
s (depending on whether the operation is a query or an update).- Specified by:
setMaxExecutionTime
in interfaceOperation
- Overrides:
setMaxExecutionTime
in classAbstractOperation
- Parameters:
maxExecutionTimeSeconds
- The maximum query time, measured in seconds. A negative or zero value indicates an unlimited execution time (which is the default).
-
getMaxExecutionTime
public int getMaxExecutionTime()Description copied from interface:Operation
Returns the maximum operation execution time.- Specified by:
getMaxExecutionTime
in interfaceOperation
- Overrides:
getMaxExecutionTime
in classAbstractOperation
- Returns:
- The maximum operation execution time, measured in seconds.
- See Also:
-
toString
- Overrides:
toString
in classAbstractParserQuery
-
equals
- Overrides:
equals
in classAbstractParserQuery
-