Class TraversalFlatMapStep<S,E>

All Implemented Interfaces:
Serializable, AutoCloseable, Cloneable, Iterator<Traverser.Admin<E>>, Step<S,E>, PopContaining, TraversalParent

public final class TraversalFlatMapStep<S,E> extends FlatMapStep<S,E> implements TraversalParent
Author:
Marko A. Rodriguez (http://markorodriguez.com)
See Also:
  • Constructor Details

  • Method Details

    • flatMap

      protected Iterator<E> flatMap(Traverser.Admin<S> traverser)
      Specified by:
      flatMap in class FlatMapStep<S,E>
    • getLocalChildren

      public List<Traversal.Admin<S,E>> getLocalChildren()
      Description copied from interface: TraversalParent
      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.
      Specified by:
      getLocalChildren in interface TraversalParent
    • clone

      public TraversalFlatMapStep<S,E> clone()
      Description copied from interface: Step
      Cloning 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 when Step.reset() is called. Moreover, the previous and next steps should be set to EmptyStep.
      Specified by:
      clone in interface Step<S,E>
      Overrides:
      clone in class AbstractStep<S,E>
      Returns:
      The cloned step
    • setTraversal

      public void setTraversal(Traversal.Admin<?,?> parentTraversal)
      Description copied from interface: Step
      Set the Traversal that this step is contained within.
      Specified by:
      setTraversal in interface Step<S,E>
      Overrides:
      setTraversal in class AbstractStep<S,E>
      Parameters:
      parentTraversal - the new traversal for this step
    • toString

      public String toString()
      Overrides:
      toString in class AbstractStep<S,E>
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class AbstractStep<S,E>
    • getRequirements

      public Set<TraverserRequirement> getRequirements()
      Description copied from interface: Step
      Provide the necessary TraverserRequirement that must be met by the traverser in order for the step to function properly. The provided default implements returns an empty set.
      Specified by:
      getRequirements in interface Step<S,E>
      Returns:
      the set of requirements