public final class GroupStep<S,K,V> extends ReducingBarrierStep<S,Map<K,V>> implements ByModulating, TraversalParent, ProfilingAware, Grouping<S,K,V>
Modifier and Type | Class and Description |
---|---|
static class |
GroupStep.GroupBiOperator<K,V> |
ReducingBarrierStep.NonEmittingSeed
ProfilingAware.ProfiledBarrier
hasProcessedOnce, NON_EMITTING_SEED, reducingBiOperator, seedSupplier
id, labels, nextEnd, nextStep, previousStep, starts, traversal, traverserStepIdAndLabelsSetByChild
Constructor and Description |
---|
GroupStep(Traversal.Admin traversal) |
Modifier and Type | Method and Description |
---|---|
GroupStep<S,K,V> |
clone()
Cloning is used to duplicate steps for the purpose of traversal optimization and OLTP replication.
|
Map<K,V> |
generateFinalResult(Map<K,V> object)
Post-process the side-effect and return the post-processed side-effect.
|
Traversal.Admin<S,K> |
getKeyTraversal()
Determines if the provided traversal is equal to the key traversal that the
Grouping has. |
List<Traversal.Admin<?,?>> |
getLocalChildren() |
Set<TraverserRequirement> |
getRequirements()
Provide the necessary
TraverserRequirement that must be met by the traverser in order for the step to
function properly. |
Traversal.Admin<S,V> |
getValueTraversal()
Determines if the provided traversal is equal to the value traversal that the
Grouping has. |
int |
hashCode() |
void |
modulateBy(Traversal.Admin<?,?> kvTraversal) |
void |
prepareForProfiling()
Reset the
Barrier on the step to be wrapped in a ProfiledBarrier which can properly start/stop
the timer on the associated ProfileStep . |
Map<K,V> |
projectTraverser(Traverser.Admin<S> traverser) |
void |
replaceLocalChild(Traversal.Admin<?,?> oldTraversal,
Traversal.Admin<?,?> newTraversal) |
void |
setTraversal(Traversal.Admin<?,?> parentTraversal)
Set the
Traversal that this step is contained within. |
String |
toString() |
addBarrier, done, generateSeedFromStarts, getBiOperator, getMemoryComputeKey, getSeedSupplier, hasNextBarrier, nextBarrier, processAllStarts, processNextStart, reset, setReducingBiOperator, setSeedSupplier
addLabel, addStart, addStarts, equals, getId, getLabels, getNextStep, getPreviousStep, getStarts, getTraversal, hasNext, hasStarts, isTraverserStepIdAndLabelsSetByChild, next, prepareTraversalForNextStep, removeLabel, setId, setNextStep, setPreviousStep
finalize, getClass, notify, notifyAll, wait, wait, wait
modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy
addGlobalChild, addLocalChild, asStep, close, getGlobalChildren, getSelfAndChildRequirements, integrateChild, removeGlobalChild, removeLocalChild
convertValueTraversal, determineBarrierStep, doFinalReduction, hasBarrierInValueTraversal
forEachRemaining, remove
public GroupStep(Traversal.Admin traversal)
public void prepareForProfiling()
Barrier
on the step to be wrapped in a ProfiledBarrier
which can properly start/stop
the timer on the associated ProfileStep
.prepareForProfiling
in interface ProfilingAware
public Traversal.Admin<S,K> getKeyTraversal()
Grouping
Grouping
has.getKeyTraversal
in interface Grouping<S,K,V>
public Traversal.Admin<S,V> getValueTraversal()
Grouping
Grouping
has.getValueTraversal
in interface Grouping<S,K,V>
public void modulateBy(Traversal.Admin<?,?> kvTraversal)
modulateBy
in interface ByModulating
public void replaceLocalChild(Traversal.Admin<?,?> oldTraversal, Traversal.Admin<?,?> newTraversal)
replaceLocalChild
in interface TraversalParent
public Map<K,V> projectTraverser(Traverser.Admin<S> traverser)
projectTraverser
in class ReducingBarrierStep<S,Map<K,V>>
public List<Traversal.Admin<?,?>> 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.public GroupStep<S,K,V> 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,Map<K,V>>
setTraversal
in class AbstractStep<S,Map<K,V>>
parentTraversal
- the new traversal for this steppublic Map<K,V> generateFinalResult(Map<K,V> object)
Generating
generateFinalResult
in interface Generating<Map<K,V>,Map<K,V>>
object
- the pre-processed side-effect.Copyright © 2013–2022 Apache Software Foundation. All rights reserved.