Interface TraversalParent

All Superinterfaces:
AutoCloseable, PopContaining
All Known Subinterfaces:
AddEdgeStepContract<S>, AddElementStepContract<S,E>, AddPropertyStepContract<S>, AddVertexStepContract<S>, CallStepContract<S,E>, MergeStepContract<S,E,C>, ReadOnlyTraversalParent, TraversalOptionParent<M,S,E>
All Known Implementing Classes:
AbstractAddEdgeStepPlaceholder, AbstractAddElementStepPlaceholder, AbstractAddVertexStepPlaceholder, AbstractMergeElementStepPlaceholder, AddEdgeStartStep, AddEdgeStartStepPlaceholder, AddEdgeStep, AddEdgeStepPlaceholder, AddLabelStep, AddPropertyStep, AddPropertyStepPlaceholder, AddVertexStartStep, AddVertexStartStepPlaceholder, AddVertexStep, AddVertexStepPlaceholder, AggregateStep, AllStep, AndStep, AnyStep, BranchStep, CallStep, CallStepPlaceholder, ChooseStep, CoalesceStep, CombineStep, ConcatStep, ConnectedComponentVertexProgramStep, ConnectiveStep, DateDiffStep, DedupGlobalStep, DifferenceStep, DisjunctStep, DropLabelsStep, ElementMapStep, EmptyStep, FormatStep, GraphStep, GroupCountSideEffectStep, GroupCountStep, GroupSideEffectStep, GroupStep, HasStep, IndexStep, IntersectStep, IsStep, LocalStep, MatchStep, MathStep, MergeEdgeStep, MergeEdgeStepPlaceholder, MergeElementStep, MergeStep, MergeVertexStep, MergeVertexStepPlaceholder, NoneStep, NotStep, OptionalStep, OrderGlobalStep, OrderLocalStep, OrStep, PageRankVertexProgramStep, PathFilterStep, PathStep, PeerPressureVertexProgramStep, ProductStep, ProjectStep, PropertyMapStep, RepeatStep, SackValueStep, SampleGlobalStep, SelectOneStep, SelectStep, ShortestPathVertexProgramStep, SplitGlobalStep, SplitLocalStep, TinkerGraphStep, TraversalFilterStep, TraversalFlatMapStep, TraversalMapStep, TraversalSelectStep, TraversalSideEffectStep, TraversalVertexProgramStep, TreeSideEffectStep, TreeStep, UnionStep, WherePredicateStep, WhereTraversalStep

public interface TraversalParent extends PopContaining, AutoCloseable
Indicates that a step can contain child Traversals. Any step which implements this interface should override at least one of getGlobalChildren() or getLocalChildren(). All TraversalParents should call integrateChild(Traversal.Admin<?, ?>) for all child traversals as they are added to the step, and TraversalParents should override Step.setTraversal(Traversal.Admin<?, ?>), and call integrateChild(Traversal.Admin<?, ?>) again for all child traversals.
Author:
Marko A. Rodriguez (http://markorodriguez.com)
  • Method Details

    • getGlobalChildren

      default <S, E> List<Traversal.Admin<S,E>> getGlobalChildren()
      Gets a list of all "global" child traversals for this step. A "global" traversal is one which evaluates across all of its parents incoming traversers at once. This is typically used in cases where the child traversal represents a branch of traversal flow. See BranchStep as an example.
    • getLocalChildren

      default <S, E> List<Traversal.Admin<S,E>> getLocalChildren()
      Gets a list of all "local" child traversals for this step. A "local" traversal is one which is evaluated independently for each incoming traverser to the parent step. This is typically used in cases where the child is used to process or augment each traverser individually. See LocalStep or ByModulating as examples.
    • addLocalChild

      default void addLocalChild(Traversal.Admin<?,?> localChildTraversal)
    • addGlobalChild

      default void addGlobalChild(Traversal.Admin<?,?> globalChildTraversal)
    • removeLocalChild

      default void removeLocalChild(Traversal.Admin<?,?> localChildTraversal)
    • removeGlobalChild

      default void removeGlobalChild(Traversal.Admin<?,?> globalChildTraversal)
    • replaceLocalChild

      default void replaceLocalChild(Traversal.Admin<?,?> oldTraversal, Traversal.Admin<?,?> newTraversal)
    • getSelfAndChildRequirements

      default Set<TraverserRequirement> getSelfAndChildRequirements(TraverserRequirement... selfRequirements)
    • asStep

      default Step<?,?> asStep()
    • integrateChild

      default <S, E> Traversal.Admin<S,E> integrateChild(Traversal.Admin<?,?> childTraversal)
    • close

      default void close() throws Exception
      Specified by:
      close in interface AutoCloseable
      Throws:
      Exception
    • getPopInstructions

      default HashSet<PopContaining.PopInstruction> getPopInstructions()
      Specified by:
      getPopInstructions in interface PopContaining