Class AbstractStep<S,​E>

    • Constructor Detail

    • Method Detail

      • setId

        public void setId​(String id)
        Description copied from interface: Step
        Get the unique id of the step. These ids can change when strategies are applied and anonymous traversals are embedded in the parent traversal. A developer should typically not need to call this method.
        Specified by:
        setId in interface Step<S,​E>
        Parameters:
        id - the unique id of the step
      • getId

        public String getId()
        Description copied from interface: Step
        Get the unique id of this step.
        Specified by:
        getId in interface Step<S,​E>
        Returns:
        the unique id of the step
      • addLabel

        public void addLabel​(String label)
        Description copied from interface: Step
        Add a label to this step.
        Specified by:
        addLabel in interface Step<S,​E>
        Parameters:
        label - the label to add to this step
      • removeLabel

        public void removeLabel​(String label)
        Description copied from interface: Step
        Remove a label from this step.
        Specified by:
        removeLabel in interface Step<S,​E>
        Parameters:
        label - the label to remove from this step
      • clearLabels

        public void clearLabels()
        Description copied from interface: Step
        Removes all labels on the step.
        Specified by:
        clearLabels in interface Step<S,​E>
      • reset

        public void reset()
        Description copied from interface: Step
        Reset the state of the step such that it has no incoming starts. Internal states are to be reset, but any sideEffect data structures are not to be recreated.
        Specified by:
        reset in interface Step<S,​E>
      • hasStarts

        public boolean hasStarts()
        Description copied from interface: Step
        Determines if starts objects are present without iterating forward. This function has special applicability around ReducingBarrierStep implementations where they always return true for calls to Iterator.hasNext(). Using this function gives insight to what the step itself is holding in its iterator without performing any sort of processing on the step itself.
        Specified by:
        hasStarts in interface Step<S,​E>
      • setPreviousStep

        public void setPreviousStep​(Step<?,​S> step)
        Description copied from interface: Step
        Set the step that is previous to the current step. Used for linking steps together to form a function chain.
        Specified by:
        setPreviousStep in interface Step<S,​E>
        Parameters:
        step - the previous step of this step
      • getPreviousStep

        public Step<?,​S> getPreviousStep()
        Description copied from interface: Step
        Get the step prior to the current step.
        Specified by:
        getPreviousStep in interface Step<S,​E>
        Returns:
        The previous step
      • setNextStep

        public void setNextStep​(Step<E,​?> step)
        Description copied from interface: Step
        Set the step that is next to the current step. Used for linking steps together to form a function chain.
        Specified by:
        setNextStep in interface Step<S,​E>
        Parameters:
        step - the next step of this step
      • getNextStep

        public Step<E,​?> getNextStep()
        Description copied from interface: Step
        Get the next step to the current step.
        Specified by:
        getNextStep in interface Step<S,​E>
        Returns:
        The next step
      • hasNext

        public boolean hasNext()
        Specified by:
        hasNext in interface Iterator<S>
      • getTraversal

        public <A,​B> Traversal.Admin<A,​B> getTraversal()
        Description copied from interface: Step
        Get the Traversal.Admin that this step is contained within.
        Specified by:
        getTraversal in interface Step<S,​E>
        Type Parameters:
        A - The incoming object type of the traversal
        B - The outgoing object type of the traversal
        Returns:
        The traversal of this step
      • setTraversal

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

        public AbstractStep<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 Object
        Returns:
        The cloned step
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • isTraverserStepIdAndLabelsSetByChild

        public boolean isTraverserStepIdAndLabelsSetByChild()