public abstract class AbstractJoinNexusFactory extends Object implements IJoinNexusFactory
IJoinNexusFactory
.Modifier | Constructor and Description |
---|---|
protected |
AbstractJoinNexusFactory(ActionEnum action,
long writeTimestamp,
long readTimestamp,
Properties properties,
int solutionFlags,
IElementFilter<?> solutionFilter,
IEvaluationPlanFactory evaluationPlanFactory,
IRuleTaskFactory defaultRuleTaskFactory) |
Modifier and Type | Method and Description |
---|---|
ActionEnum |
getAction() |
IRuleTaskFactory |
getDefaultRuleTaskFactory() |
IEvaluationPlanFactory |
getEvaluationPlanFactory() |
Properties |
getProperties() |
long |
getReadTimestamp()
The timestamp for the read view of the relation(s).
|
IElementFilter<?> |
getSolutionFilter() |
int |
getSolutionFlags() |
long |
getWriteTimestamp()
The timestamp for the write view of the relation(s).
|
IJoinNexus |
newInstance(IIndexManager indexManager)
Singleton factory for an
IJoinNexus instance for the given
indexManager. |
protected abstract IJoinNexus |
newJoinNexus(IIndexManager indexManager)
Factory for
IJoinNexus instances used by
newInstance(IIndexManager) as past of its singleton pattern. |
void |
setReadTimestamp(long readTimestamp)
Used by fix point closure operations to advance the read timestamp to the
IIndexStore.getLastCommitTime() at the start of each round of
closure. |
String |
toString() |
protected void |
toString(StringBuilder sb)
Allows extension of
toString() by derived classes. |
protected AbstractJoinNexusFactory(ActionEnum action, long writeTimestamp, long readTimestamp, Properties properties, int solutionFlags, IElementFilter<?> solutionFilter, IEvaluationPlanFactory evaluationPlanFactory, IRuleTaskFactory defaultRuleTaskFactory)
action
- Indicates whether this is a Query, Insert, or Delete
operation.writeTimestamp
- The timestamp of the relation view(s) using to write on the
IMutableRelation
s (ignored if you are not execution
mutation programs).readTimestamp
- The timestamp of the relation view(s) used to read from the
access paths.solutionFlags
- Flags controlling the behavior of
#newSolution(IRule, IBindingSet)
.solutionFilter
- An optional filter that will be applied to keep matching
elements out of the IBuffer
for Query or Mutation
operations.evaluationPlanFactory
- The factory used to generate IEvaluationPlan
s for
IRule
s.defaultRuleTaskFactory
- The factory that will be used to generate the
IStepTask
to execute an IRule
unless the
IRule
explicitly specifies a factory object using
IRule.getTaskFactory()
.protected void toString(StringBuilder sb)
toString()
by derived classes.sb
- public IJoinNexus newInstance(IIndexManager indexManager)
IJoinNexusFactory
IJoinNexus
instance for the given
indexManager.
Note: The use of a singleton pattern helps to reduce the proliferation of
distinct IJoinNexus
instances for a given combination of
IJoinNexusFactory
and IIndexManager
objects. A distinct
IJoinNexus
instance is of course generated when the
IJoinNexusFactory
is de-serialized, e.g., during RMI, and when a
different IIndexManager
is used.
newInstance
in interface IJoinNexusFactory
indexManager
- Used to locate relations and parallelize operations during
rule execution.protected abstract IJoinNexus newJoinNexus(IIndexManager indexManager)
IJoinNexus
instances used by
newInstance(IIndexManager)
as past of its singleton pattern.public final ActionEnum getAction()
getAction
in interface IJoinNexusFactory
public final Properties getProperties()
getProperties
in interface IJoinNexusFactory
public final long getReadTimestamp()
IJoinNexusFactory
getReadTimestamp
in interface IJoinNexusFactory
public final void setReadTimestamp(long readTimestamp)
IJoinNexusFactory
IIndexStore.getLastCommitTime()
at the start of each round of
closure.setReadTimestamp
in interface IJoinNexusFactory
public final long getWriteTimestamp()
IJoinNexusFactory
getWriteTimestamp
in interface IJoinNexusFactory
public final int getSolutionFlags()
getSolutionFlags
in interface IJoinNexusFactory
public final IElementFilter<?> getSolutionFilter()
getSolutionFilter
in interface IJoinNexusFactory
public final IEvaluationPlanFactory getEvaluationPlanFactory()
getEvaluationPlanFactory
in interface IJoinNexusFactory
public final IRuleTaskFactory getDefaultRuleTaskFactory()
getDefaultRuleTaskFactory
in interface IJoinNexusFactory
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.