Class AbstractRemoteTraversal<S,E>
- java.lang.Object
- 
- org.apache.tinkerpop.gremlin.process.remote.traversal.AbstractRemoteTraversal<S,E>
 
- 
- All Implemented Interfaces:
- Serializable,- AutoCloseable,- Cloneable,- Iterator<E>,- RemoteTraversal<S,E>,- Traversal<S,E>,- Traversal.Admin<S,E>
 - Direct Known Subclasses:
- DriverRemoteTraversal,- EmbeddedRemoteTraversal
 
 public abstract class AbstractRemoteTraversal<S,E> extends Object implements RemoteTraversal<S,E> This is a stub implementation forRemoteTraversaland requires that thenextTraverser()method is implemented fromTraversal.Admin. It is this method that gets called fromRemoteStepwhen theTraversalis iterated.- Author:
- Stephen Mallette (http://stephen.genoprime.com)
- See Also:
- Serialized Form
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.TraversalTraversal.Admin<S,E>, Traversal.Exceptions, Traversal.Symbols
 
- 
 - 
Constructor SummaryConstructors Constructor Description AbstractRemoteTraversal()
 - 
Method SummaryAll Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description <S2,E2>
 Traversal.Admin<S2,E2>addStep(int index, Step<?,?> step)Add aStepto an arbitrary point in the traversal.voidapplyStrategies()Apply the registeredTraversalStrategiesto the traversal.Traversal.Admin<S,E>clone()Cloning is used to duplicate the traversal typically in OLAP environments.BytecodegetBytecode()Get theBytecodeassociated with the construction of this traversal.Optional<Graph>getGraph()GValueManagergetGValueManager()Get theGValueManagerassociated with this traversal.TraversalParentgetParent()Get theTraversalParentStepthat is the parent of this traversal.TraversalSideEffectsgetSideEffects()Get theTraversalSideEffectsassociated with the traversal.List<Step>getSteps()Get theStepinstances associated with this traversal.TraversalStrategiesgetStrategies()Get theTraversalStrategiesassociated with this traversal.TraverserGeneratorgetTraverserGenerator()Get theTraverserGeneratorassociated with this traversal.Set<TraverserRequirement>getTraverserRequirements()Get the set of allTraverserRequirements for this traversal.booleanisLocked()When the traversal has had itsTraversalStrategiesapplied to it, it is locked.voidlock()Lock the traversal and perform any final adjustments to it after strategy application.abstract Traverser.Admin<E>nextTraverser()Note that internally#nextTraverser()is called from within a loop (specifically inAbstractStep.next()that breaks properly when aNoSuchElementExceptionis thrown.<S2,E2>
 Traversal.Admin<S2,E2>removeStep(int index)Remove aStepfrom the traversal.voidsetGraph(Graph graph)voidsetGValueManager(GValueManager gValueManager)Set theGValueManagerassociated with this traversal.voidsetParent(TraversalParent step)Set theTraversalParentStepthat is the parent of this traversal.voidsetSideEffects(TraversalSideEffects sideEffects)Set theTraversalSideEffectsof this traversal.voidsetStrategies(TraversalStrategies strategies)Set theTraversalStrategiesto be used by this traversal at evaluation time.- 
Methods inherited from class java.lang.Objectequals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 - 
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.TraversalasAdmin, close, discard, explain, fill, forEachRemaining, forEachRemaining, iterate, next, notifyClose, profile, promise, toBulkSet, toList, toSet, toStream, tryNext
 - 
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Traversal.AdminaddStart, addStarts, addStep, equals, getEndStep, getStartStep, getTraversalSource, getTraverserSetSupplier, isRoot, removeStep, reset
 
- 
 
- 
- 
- 
Method Detail- 
nextTraverserpublic abstract Traverser.Admin<E> nextTraverser() Note that internally#nextTraverser()is called from within a loop (specifically inAbstractStep.next()that breaks properly when aNoSuchElementExceptionis thrown. In other words the "results" should be iterated to force that failure.- Specified by:
- nextTraverserin interface- Traversal.Admin<S,E>
 
 - 
getSideEffectspublic TraversalSideEffects getSideEffects() Description copied from interface:Traversal.AdminGet theTraversalSideEffectsassociated with the traversal. This method should not be called externally for purposes of retrieving side-effects as traversal results. Traversal results should only be returned by way of the execution of the traversal itself. Should a side-effect of a traversal be needed it should only be obtained by usingGraphTraversal.cap(String, String...)so that the side-effect can be included as part of the traversal iteration. Relying on this method to get side-effects in these situations may not result in consistent behavior across all types of executions and environments (e.g. remoting).- Specified by:
- getSideEffectsin interface- Traversal.Admin<S,E>
- Returns:
- The traversal sideEffects
 
 - 
getBytecodepublic Bytecode getBytecode() Description copied from interface:Traversal.AdminGet theBytecodeassociated with the construction of this traversal.- Specified by:
- getBytecodein interface- Traversal.Admin<S,E>
- Returns:
- the byte code representation of the traversal
 
 - 
getGValueManagerpublic GValueManager getGValueManager() Description copied from interface:Traversal.AdminGet theGValueManagerassociated with this traversal.- Specified by:
- getGValueManagerin interface- Traversal.Admin<S,E>
 
 - 
setGValueManagerpublic void setGValueManager(GValueManager gValueManager) Description copied from interface:Traversal.AdminSet theGValueManagerassociated with this traversal.- Specified by:
- setGValueManagerin interface- Traversal.Admin<S,E>
 
 - 
getStepspublic List<Step> getSteps() Description copied from interface:Traversal.AdminGet theStepinstances associated with this traversal. The steps are ordered according to their linked list structure as defined byStep.getPreviousStep()andStep.getNextStep().- Specified by:
- getStepsin interface- Traversal.Admin<S,E>
- Returns:
- the ordered steps of the traversal
 
 - 
addSteppublic <S2,E2> Traversal.Admin<S2,E2> addStep(int index, Step<?,?> step) throws IllegalStateException Description copied from interface:Traversal.AdminAdd aStepto an arbitrary point in the traversal.- Specified by:
- addStepin interface- Traversal.Admin<S,E>
- Type Parameters:
- S2- the new start type of the traversal (if the added step was a start step)
- E2- the new end type of the traversal (if the added step was an end step)
- Parameters:
- index- the location in the traversal to insert the step
- step- the step to add
- Returns:
- the newly modulated traversal
- Throws:
- IllegalStateException- if the- TraversalStrategieshave already been applied
 
 - 
removeSteppublic <S2,E2> Traversal.Admin<S2,E2> removeStep(int index) throws IllegalStateException Description copied from interface:Traversal.AdminRemove aStepfrom the traversal. Those implementing this method should take care to reset state for the step in theGValueManager.- Specified by:
- removeStepin interface- Traversal.Admin<S,E>
- Type Parameters:
- S2- the new start type of the traversal (if the removed step was a start step)
- E2- the new end type of the traversal (if the removed step was an end step)
- Parameters:
- index- the location in the traversal of the step to be evicted
- Returns:
- the newly modulated traversal
- Throws:
- IllegalStateException- if the- TraversalStrategieshave already been applied
 
 - 
applyStrategiespublic void applyStrategies() throws IllegalStateExceptionDescription copied from interface:Traversal.AdminApply the registeredTraversalStrategiesto the traversal. Once the strategies are applied, the traversal is "locked" and can no longer have steps added to it. The order of operations for strategy applications should be: globally id steps, apply each strategy in turn to root traversal, then recursively to nested traversals.- Specified by:
- applyStrategiesin interface- Traversal.Admin<S,E>
- Throws:
- IllegalStateException- if the- TraversalStrategieshave already been applied
 
 - 
getTraverserGeneratorpublic TraverserGenerator getTraverserGenerator() Description copied from interface:Traversal.AdminGet theTraverserGeneratorassociated with this traversal. The traversal generator createsTraverserinstances that are respective of the traversal'sTraverserRequirement.- Specified by:
- getTraverserGeneratorin interface- Traversal.Admin<S,E>
- Returns:
- the generator of traversers
 
 - 
getTraverserRequirementspublic Set<TraverserRequirement> getTraverserRequirements() Description copied from interface:Traversal.AdminGet the set of allTraverserRequirements for this traversal.- Specified by:
- getTraverserRequirementsin interface- Traversal.Admin<S,E>
- Returns:
- the features of a traverser that are required to execute properly in this traversal
 
 - 
setSideEffectspublic void setSideEffects(TraversalSideEffects sideEffects) Description copied from interface:Traversal.AdminSet theTraversalSideEffectsof this traversal.- Specified by:
- setSideEffectsin interface- Traversal.Admin<S,E>
- Parameters:
- sideEffects- the sideEffects to set for this traversal.
 
 - 
setStrategiespublic void setStrategies(TraversalStrategies strategies) Description copied from interface:Traversal.AdminSet theTraversalStrategiesto be used by this traversal at evaluation time.- Specified by:
- setStrategiesin interface- Traversal.Admin<S,E>
- Parameters:
- strategies- the strategies to use on this traversal
 
 - 
getStrategiespublic TraversalStrategies getStrategies() Description copied from interface:Traversal.AdminGet theTraversalStrategiesassociated with this traversal.- Specified by:
- getStrategiesin interface- Traversal.Admin<S,E>
- Returns:
- the strategies associated with this traversal
 
 - 
setParentpublic void setParent(TraversalParent step) Description copied from interface:Traversal.AdminSet theTraversalParentStepthat is the parent of this traversal. Traversals can be nested and this is the means by which the traversal tree is connected. If there is no parent, then it should be aEmptyStep.- Specified by:
- setParentin interface- Traversal.Admin<S,E>
- Parameters:
- step- the traversal holder parent step or- EmptyStepif it has no parent
 
 - 
getParentpublic TraversalParent getParent() Description copied from interface:Traversal.AdminGet theTraversalParentStepthat is the parent of this traversal. Traversals can be nested and this is the means by which the traversal tree is walked.- Specified by:
- getParentin interface- Traversal.Admin<S,E>
- Returns:
- the traversal holder parent step or EmptyStepif it has no parent.
 
 - 
clonepublic Traversal.Admin<S,E> clone() Description copied from interface:Traversal.AdminCloning is used to duplicate the traversal typically in OLAP environments.
 - 
isLockedpublic boolean isLocked() Description copied from interface:Traversal.AdminWhen the traversal has had itsTraversalStrategiesapplied to it, it is locked.- Specified by:
- isLockedin interface- Traversal.Admin<S,E>
- Returns:
- whether the traversal is locked
 
 - 
lockpublic void lock() Description copied from interface:Traversal.AdminLock the traversal and perform any final adjustments to it after strategy application.- Specified by:
- lockin interface- Traversal.Admin<S,E>
 
 - 
getGraphpublic Optional<Graph> getGraph() Description copied from interface:Traversal.Admin- Specified by:
- getGraphin interface- Traversal.Admin<S,E>
 
 - 
setGraphpublic void setGraph(Graph graph) - Specified by:
- setGraphin interface- Traversal.Admin<S,E>
 
 
- 
 
-