Class GroupStep<S,K,V>
- java.lang.Object
 - 
- org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep<S,E>
 - 
- org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep<S,Map<K,V>>
 - 
- org.apache.tinkerpop.gremlin.process.traversal.step.map.GroupStep<S,K,V>
 
 
 
 
- 
- All Implemented Interfaces:
 Serializable,AutoCloseable,Cloneable,Iterator<Traverser.Admin<Map<K,V>>>,Step<S,Map<K,V>>,Barrier<Map<K,V>>,ByModulating,Generating<Map<K,V>,Map<K,V>>,Grouping<S,K,V>,MemoryComputing<Map<K,V>>,ProfilingAware,TraversalParent
public final class GroupStep<S,K,V> extends ReducingBarrierStep<S,Map<K,V>> implements ByModulating, TraversalParent, ProfilingAware, Grouping<S,K,V>
- Author:
 - Marko A. Rodriguez (http://markorodriguez.com)
 - See Also:
 - Serialized Form
 
 
- 
- 
Nested Class Summary
Nested Classes Modifier and Type Class Description static classGroupStep.GroupBiOperator<K,V>- 
Nested classes/interfaces inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep
ReducingBarrierStep.NonEmittingSeed 
- 
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.ProfilingAware
ProfilingAware.ProfiledBarrier 
 - 
 
- 
Field Summary
- 
Fields inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep
hasProcessedOnce, NON_EMITTING_SEED, reducingBiOperator, seedSupplier 
- 
Fields inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep
id, labels, nextEnd, nextStep, previousStep, starts, traversal, traverserStepIdAndLabelsSetByChild 
 - 
 
- 
Constructor Summary
Constructors Constructor Description GroupStep(Traversal.Admin traversal) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method 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 theGroupinghas.List<Traversal.Admin<?,?>>getLocalChildren()Set<TraverserRequirement>getRequirements()Provide the necessaryTraverserRequirementthat 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 theGroupinghas.inthashCode()voidmodulateBy(Traversal.Admin<?,?> kvTraversal)voidprepareForProfiling()Reset theBarrieron the step to be wrapped in aProfilingAware.ProfiledBarrierwhich can properly start/stop the timer on the associatedProfileStep.Map<K,V>projectTraverser(Traverser.Admin<S> traverser)voidreplaceLocalChild(Traversal.Admin<?,?> oldTraversal, Traversal.Admin<?,?> newTraversal)voidsetTraversal(Traversal.Admin<?,?> parentTraversal)Set theTraversalthat this step is contained within.StringtoString()- 
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep
addBarrier, done, generateSeedFromStarts, getBiOperator, getMemoryComputeKey, getSeedSupplier, hasNextBarrier, nextBarrier, processAllStarts, processNextStart, reset, setReducingBiOperator, setSeedSupplier 
- 
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep
addLabel, addStart, addStarts, clearLabels, equals, getId, getLabels, getNextStep, getPreviousStep, getStarts, getTraversal, hasNext, hasStarts, isTraverserStepIdAndLabelsSetByChild, next, prepareTraversalForNextStep, removeLabel, setId, setNextStep, setPreviousStep 
- 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait 
- 
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.ByModulating
modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy 
- 
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.Grouping
convertValueTraversal, determineBarrierStep, doFinalReduction, hasBarrierInValueTraversal 
- 
Methods inherited from interface java.util.Iterator
forEachRemaining, remove 
- 
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.TraversalParent
addGlobalChild, addLocalChild, asStep, close, getGlobalChildren, getSelfAndChildRequirements, integrateChild, removeGlobalChild, removeLocalChild 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
GroupStep
public GroupStep(Traversal.Admin traversal)
 
 - 
 
- 
Method Detail
- 
prepareForProfiling
public void prepareForProfiling()
Reset theBarrieron the step to be wrapped in aProfilingAware.ProfiledBarrierwhich can properly start/stop the timer on the associatedProfileStep.- Specified by:
 prepareForProfilingin interfaceProfilingAware
 
- 
getKeyTraversal
public Traversal.Admin<S,K> getKeyTraversal()
Description copied from interface:GroupingDetermines if the provided traversal is equal to the key traversal that theGroupinghas.- Specified by:
 getKeyTraversalin interfaceGrouping<S,K,V>
 
- 
getValueTraversal
public Traversal.Admin<S,V> getValueTraversal()
Description copied from interface:GroupingDetermines if the provided traversal is equal to the value traversal that theGroupinghas.- Specified by:
 getValueTraversalin interfaceGrouping<S,K,V>
 
- 
modulateBy
public void modulateBy(Traversal.Admin<?,?> kvTraversal)
- Specified by:
 modulateByin interfaceByModulating
 
- 
replaceLocalChild
public void replaceLocalChild(Traversal.Admin<?,?> oldTraversal, Traversal.Admin<?,?> newTraversal)
- Specified by:
 replaceLocalChildin interfaceTraversalParent
 
- 
projectTraverser
public Map<K,V> projectTraverser(Traverser.Admin<S> traverser)
- Specified by:
 projectTraverserin classReducingBarrierStep<S,Map<K,V>>
 
- 
getLocalChildren
public List<Traversal.Admin<?,?>> getLocalChildren()
- Specified by:
 getLocalChildrenin interfaceTraversalParent
 
- 
getRequirements
public Set<TraverserRequirement> getRequirements()
Description copied from interface:StepProvide the necessaryTraverserRequirementthat must be met by the traverser in order for the step to function properly. The provided default implements returns an empty set.- Specified by:
 getRequirementsin interfaceStep<S,K>- Returns:
 - the set of requirements
 
 
- 
clone
public GroupStep<S,K,V> clone()
Description copied from interface:StepCloning is used to duplicate steps for the purpose of traversal optimization and OLTP replication. When cloning a step, it is important that the steps, the cloned step is equivalent to the state of the step whenStep.reset()is called. Moreover, the previous and next steps should be set toEmptyStep. 
- 
setTraversal
public void setTraversal(Traversal.Admin<?,?> parentTraversal)
Description copied from interface:StepSet theTraversalthat this step is contained within.- Specified by:
 setTraversalin interfaceStep<S,K>- Overrides:
 setTraversalin classAbstractStep<S,Map<K,V>>- Parameters:
 parentTraversal- the new traversal for this step
 
- 
generateFinalResult
public Map<K,V> generateFinalResult(Map<K,V> object)
Description copied from interface:GeneratingPost-process the side-effect and return the post-processed side-effect. The default implementation is simply the identity function and returns the argument.- Specified by:
 generateFinalResultin interfaceGenerating<S,K>- Parameters:
 object- the pre-processed side-effect.- Returns:
 - the post-processed side-effect.
 
 
 - 
 
 -