public final class AggregateStep<S> extends AbstractStep<S,S> implements SideEffectCapable<Collection,Collection>, TraversalParent, ByModulating, LocalBarrier<S>
id, labels, nextEnd, nextStep, previousStep, starts, traversal, traverserStepIdAndLabelsSetByChild
Constructor and Description |
---|
AggregateStep(Traversal.Admin traversal,
String sideEffectKey) |
Modifier and Type | Method and Description |
---|---|
void |
addBarrier(TraverserSet<S> barrier)
Add a barrier to the step.
|
AggregateStep<S> |
clone()
Cloning is used to duplicate steps for the purpose of traversal optimization and OLTP replication.
|
List<Traversal.Admin<S,Object>> |
getLocalChildren() |
Set<TraverserRequirement> |
getRequirements()
Provide the necessary
TraverserRequirement that must be met by the traverser in order for the step to
function properly. |
String |
getSideEffectKey()
The side-effect key of the step.
|
int |
hashCode() |
boolean |
hasNextBarrier()
Whether or not the step has an accessible barrier.
|
void |
modulateBy(Traversal.Admin<?,?> aggregateTraversal) |
TraverserSet<S> |
nextBarrier()
Get the next barrier within this step.
|
void |
processAllStarts()
Process all left traversers by do not yield the resultant output.
|
protected Traverser.Admin<S> |
processNextStart() |
void |
reset()
Reset the state of the step such that it has no incoming starts.
|
void |
setTraversal(Traversal.Admin<?,?> parentTraversal)
Set the
Traversal that this step is contained within. |
String |
toString() |
addLabel, addStart, addStarts, equals, getId, getLabels, getNextStep, getPreviousStep, getStarts, getTraversal, hasNext, isTraverserStepIdAndLabelsSetByChild, next, prepareTraversalForNextStep, removeLabel, setId, setNextStep, setPreviousStep
finalize, getClass, notify, notifyAll, wait, wait, wait
generateFinalResult
addGlobalChild, addLocalChild, asStep, close, getGlobalChildren, getSelfAndChildRequirements, integrateChild, removeGlobalChild, removeLocalChild
modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy
getMemoryComputeKey
forEachRemaining, remove
public AggregateStep(Traversal.Admin traversal, String sideEffectKey)
public String getSideEffectKey()
SideEffectCapable
getSideEffectKey
in interface SideEffectCapable<Collection,Collection>
public String toString()
toString
in class AbstractStep<S,S>
public void modulateBy(Traversal.Admin<?,?> aggregateTraversal)
modulateBy
in interface ByModulating
public List<Traversal.Admin<S,Object>> getLocalChildren()
getLocalChildren
in interface TraversalParent
public Set<TraverserRequirement> getRequirements()
Step
TraverserRequirement
that must be met by the traverser in order for the step to
function properly. The provided default implements returns an empty set.getRequirements
in interface Step<S,S>
public AggregateStep<S> clone()
Step
Step.reset()
is called. Moreover, the previous and next steps should be set to EmptyStep
.public void setTraversal(Traversal.Admin<?,?> parentTraversal)
Step
Traversal
that this step is contained within.setTraversal
in interface Step<S,S>
setTraversal
in class AbstractStep<S,S>
parentTraversal
- the new traversal for this steppublic int hashCode()
hashCode
in class AbstractStep<S,S>
protected Traverser.Admin<S> processNextStart()
processNextStart
in class AbstractStep<S,S>
public void processAllStarts()
Barrier
ReducingBarrierStep
, where traversers can be processed "on the fly" and thus, reduce memory consumption.processAllStarts
in interface Barrier<TraverserSet<S>>
public boolean hasNextBarrier()
Barrier
hasNextBarrier
in interface Barrier<TraverserSet<S>>
public TraverserSet<S> nextBarrier() throws NoSuchElementException
Barrier
nextBarrier
in interface Barrier<TraverserSet<S>>
NoSuchElementException
public void addBarrier(TraverserSet<S> barrier)
Barrier
addBarrier
in interface Barrier<TraverserSet<S>>
barrier
- the barrier to merge inpublic void reset()
Step
Copyright © 2013–2020 Apache Software Foundation. All rights reserved.