Class PlanNodeBodyServiceQuery
- java.lang.Object
-
- com.complexible.stardog.plan.eval.service.ServiceQuery
-
- com.complexible.stardog.plan.eval.service.PlanNodeBodyServiceQuery
-
- Direct Known Subclasses:
LogicalServiceQuery
,PlanNodeBodyServiceQuery.CanonicalizedPlanNodeBodyServiceQuery
public abstract class PlanNodeBodyServiceQuery extends ServiceQuery
AServiceQuery
with aPlanNode
as the body.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
PlanNodeBodyServiceQuery.CanonicalizedPlanNodeBodyServiceQuery
This machinery allows subclasses to return a "canonicalized" version of the query to be used in plan caching.static class
PlanNodeBodyServiceQuery.CanonicalizedPlanNodeBodyServiceQueryBuilder
static class
PlanNodeBodyServiceQuery.PlanNodeBodyServiceQueryBuilder
Base builder forPlanNodeBodyServiceQuery
objects-
Nested classes/interfaces inherited from class com.complexible.stardog.plan.eval.service.ServiceQuery
ServiceQuery.DistinctValuesEstimationFunction, ServiceQuery.ServiceQueryBuilder
-
-
Field Summary
-
Fields inherited from class com.complexible.stardog.plan.eval.service.ServiceQuery
mCardinality, mOptions
-
-
Constructor Summary
Constructors Constructor Description PlanNodeBodyServiceQuery(IRI theServiceIri, com.complexible.stardog.plan.PlanNode body)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description com.complexible.stardog.plan.PlanNode
body()
boolean
equals(java.lang.Object obj)
java.lang.String
explain(com.complexible.stardog.plan.PlanVarInfo theVarInfo)
Returns an explain string for the service invocationjava.lang.String
explainVerbose(com.complexible.stardog.plan.PlanVarInfo theVarInfo)
Returns an explain string for the service invocation in a parsable verbose formatcom.google.common.collect.ImmutableSet<java.lang.Integer>
getAllVars()
com.google.common.collect.ImmutableSet<java.lang.Integer>
getAssuredVars()
What are the vars guaranteed to be bound by this query?com.google.common.collect.ImmutableSet<java.lang.Integer>
getContextVars()
com.google.common.collect.ImmutableSet<java.lang.Integer>
getObjectVars()
com.google.common.collect.ImmutableSet<java.lang.Integer>
getPredicateVars()
com.google.common.collect.ImmutableSet<java.lang.Integer>
getSubjectVars()
com.complexible.stardog.plan.cache.TermPositionPredicate
getTermPositionPredicate()
int
hashCode()
static PlanNodeBodyServiceQuery.PlanNodeBodyServiceQueryBuilder
noopBuilder(PlanNodeBodyServiceQuery query)
PlanNodeBodyServiceQuery
replaceBody(com.complexible.stardog.plan.PlanNode newBody)
com.complexible.stardog.plan.PlanNode
replaceBodyTerms(com.complexible.stardog.plan.util.PlanNodeVarReplacer termReplacer, com.complexible.stardog.plan.ServicePlanNode node)
The default implementation of query term replacement in a service body represented as a plan nodecom.complexible.stardog.plan.PlanNode
replaceBodyTerms(com.complexible.stardog.plan.util.PlanNodeVarReplacer termReplacer, com.complexible.stardog.plan.ServicePlanNode node, java.util.Set<java.lang.Integer> nonReplaceableVars)
The implementation of query term replacement in a service body represented as a plan node with a set of variables which cannot be replacedabstract PlanNodeBodyServiceQuery.PlanNodeBodyServiceQueryBuilder
toBuilder()
-
Methods inherited from class com.complexible.stardog.plan.eval.service.ServiceQuery
alternativeDistinctValues, distinctValues, estimateCardinality, estimateJoinCardinality, evaluate, evaluate, evaluateSilent, evaluateSilent, generatesValues, get, getCardinality, getNamespaces, getOptions, getRequiredInputBindings, getRequiredUnboundOutputs, getUnsatisfiableConstraintsMessage, hasDuplicates, isBodySparqlQuery, isClosed, preservesJoinArgumentOrdering, serviceTerm, setCardinality, setNamespaces, supportsJoinArgument
-
-
-
-
Constructor Detail
-
PlanNodeBodyServiceQuery
public PlanNodeBodyServiceQuery(IRI theServiceIri, com.complexible.stardog.plan.PlanNode body)
-
-
Method Detail
-
getSubjectVars
public com.google.common.collect.ImmutableSet<java.lang.Integer> getSubjectVars()
- Overrides:
getSubjectVars
in classServiceQuery
-
getPredicateVars
public com.google.common.collect.ImmutableSet<java.lang.Integer> getPredicateVars()
- Overrides:
getPredicateVars
in classServiceQuery
-
getObjectVars
public com.google.common.collect.ImmutableSet<java.lang.Integer> getObjectVars()
- Overrides:
getObjectVars
in classServiceQuery
-
getContextVars
public com.google.common.collect.ImmutableSet<java.lang.Integer> getContextVars()
- Overrides:
getContextVars
in classServiceQuery
-
body
public com.complexible.stardog.plan.PlanNode body()
-
replaceBody
public PlanNodeBodyServiceQuery replaceBody(com.complexible.stardog.plan.PlanNode newBody)
-
replaceBodyTerms
public com.complexible.stardog.plan.PlanNode replaceBodyTerms(com.complexible.stardog.plan.util.PlanNodeVarReplacer termReplacer, com.complexible.stardog.plan.ServicePlanNode node)
The default implementation of query term replacement in a service body represented as a plan node
-
replaceBodyTerms
public com.complexible.stardog.plan.PlanNode replaceBodyTerms(com.complexible.stardog.plan.util.PlanNodeVarReplacer termReplacer, com.complexible.stardog.plan.ServicePlanNode node, java.util.Set<java.lang.Integer> nonReplaceableVars)
The implementation of query term replacement in a service body represented as a plan node with a set of variables which cannot be replaced
-
getAssuredVars
public com.google.common.collect.ImmutableSet<java.lang.Integer> getAssuredVars()
Description copied from class:ServiceQuery
What are the vars guaranteed to be bound by this query?- Specified by:
getAssuredVars
in classServiceQuery
-
getAllVars
public com.google.common.collect.ImmutableSet<java.lang.Integer> getAllVars()
- Specified by:
getAllVars
in classServiceQuery
-
explain
public java.lang.String explain(com.complexible.stardog.plan.PlanVarInfo theVarInfo)
Description copied from class:ServiceQuery
Returns an explain string for the service invocation- Specified by:
explain
in classServiceQuery
- Returns:
- an explain string for the service invocation or
null
if there is no custom explanation
-
explainVerbose
public java.lang.String explainVerbose(com.complexible.stardog.plan.PlanVarInfo theVarInfo)
Description copied from class:ServiceQuery
Returns an explain string for the service invocation in a parsable verbose format- Specified by:
explainVerbose
in classServiceQuery
- Returns:
- an explain string in verbose format
-
hashCode
public int hashCode()
- Specified by:
hashCode
in classServiceQuery
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equals
in classServiceQuery
-
toBuilder
public abstract PlanNodeBodyServiceQuery.PlanNodeBodyServiceQueryBuilder toBuilder()
- Overrides:
toBuilder
in classServiceQuery
-
noopBuilder
public static PlanNodeBodyServiceQuery.PlanNodeBodyServiceQueryBuilder noopBuilder(PlanNodeBodyServiceQuery query)
-
getTermPositionPredicate
public com.complexible.stardog.plan.cache.TermPositionPredicate getTermPositionPredicate()
-
-