public abstract class AbstractStep<S,E> extends Object implements Step<S,E>
| Modifier and Type | Field and Description |
|---|---|
protected String |
id |
protected Set<String> |
labels |
protected Traverser.Admin<E> |
nextEnd |
protected Step<E,?> |
nextStep |
protected Step<?,S> |
previousStep |
protected ExpandableStepIterator<S> |
starts |
protected Traversal.Admin |
traversal |
protected boolean |
traverserStepIdAndLabelsSetByChild |
| Constructor and Description |
|---|
AbstractStep(Traversal.Admin traversal) |
| Modifier and Type | Method and Description |
|---|---|
void |
addLabel(String label)
Add a label to this step.
|
void |
addStart(Traverser.Admin<S> start)
Add a single
Traverser.Admin to the step. |
void |
addStarts(Iterator<Traverser.Admin<S>> starts)
Add an iterator of
Traverser.Admin objects of type S to the step. |
AbstractStep<S,E> |
clone()
Cloning is used to duplicate steps for the purpose of traversal optimization and OLTP replication.
|
boolean |
equals(Object other) |
String |
getId()
Get the unique id of this step.
|
Set<String> |
getLabels()
Get the labels of this step.
|
Step<E,?> |
getNextStep()
Get the next step to the current step.
|
Step<?,S> |
getPreviousStep()
Get the step prior to the current step.
|
ExpandableStepIterator<S> |
getStarts() |
<A,B> Traversal.Admin<A,B> |
getTraversal()
Get the
Traversal.Admin that this step is contained within. |
int |
hashCode() |
boolean |
hasNext() |
boolean |
hasStarts()
Determines if starts objects are present without iterating forward.
|
boolean |
isTraverserStepIdAndLabelsSetByChild() |
Traverser.Admin<E> |
next() |
protected Traverser.Admin<E> |
prepareTraversalForNextStep(Traverser.Admin<E> traverser) |
protected abstract Traverser.Admin<E> |
processNextStart() |
void |
removeLabel(String label)
Remove a label from this step.
|
void |
reset()
Reset the state of the step such that it has no incoming starts.
|
void |
setId(String id)
Get the unique id of the step.
|
void |
setNextStep(Step<E,?> step)
Set the step that is next to the current step.
|
void |
setPreviousStep(Step<?,S> step)
Set the step that is previous to the current step.
|
void |
setTraversal(Traversal.Admin<?,?> traversal)
Set the
Traversal that this step is contained within. |
String |
toString() |
finalize, getClass, notify, notifyAll, wait, wait, waitequals, getRequirementsforEachRemaining, removeprotected String id
protected Traversal.Admin traversal
protected ExpandableStepIterator<S> starts
protected Traverser.Admin<E> nextEnd
protected boolean traverserStepIdAndLabelsSetByChild
public AbstractStep(Traversal.Admin traversal)
public void setId(String id)
Steppublic void addLabel(String label)
Steppublic void removeLabel(String label)
StepremoveLabel in interface Step<S,E>label - the label to remove from this steppublic Set<String> getLabels()
StepStep.addLabel(java.lang.String).public void reset()
Steppublic void addStarts(Iterator<Traverser.Admin<S>> starts)
StepTraverser.Admin objects of type S to the step.public void addStart(Traverser.Admin<S> start)
StepTraverser.Admin to the step.public boolean hasStarts()
StepReducingBarrierStep 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.public void setPreviousStep(Step<?,S> step)
StepsetPreviousStep in interface Step<S,E>step - the previous step of this steppublic Step<?,S> getPreviousStep()
StepgetPreviousStep in interface Step<S,E>public void setNextStep(Step<E,?> step)
StepsetNextStep in interface Step<S,E>step - the next step of this steppublic Step<E,?> getNextStep()
StepgetNextStep in interface Step<S,E>public Traverser.Admin<E> next()
next in interface Iterator<Traverser.Admin<E>>public boolean hasNext()
hasNext in interface Iterator<Traverser.Admin<E>>public <A,B> Traversal.Admin<A,B> getTraversal()
StepTraversal.Admin that this step is contained within.getTraversal in interface Step<S,E>A - The incoming object type of the traversalB - The outgoing object type of the traversalpublic void setTraversal(Traversal.Admin<?,?> traversal)
StepTraversal that this step is contained within.setTraversal in interface Step<S,E>traversal - the new traversal for this stepprotected abstract Traverser.Admin<E> processNextStart() throws NoSuchElementException
NoSuchElementExceptionpublic AbstractStep<S,E> clone()
StepStep.reset() is called. Moreover, the previous and next steps should be set to EmptyStep.public ExpandableStepIterator<S> getStarts()
public boolean isTraverserStepIdAndLabelsSetByChild()
protected Traverser.Admin<E> prepareTraversalForNextStep(Traverser.Admin<E> traverser)
Copyright © 2013–2022 Apache Software Foundation. All rights reserved.