Class VertexStepPlaceholder<E extends Element>
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep<S,E>
-
- org.apache.tinkerpop.gremlin.process.traversal.step.map.FlatMapStep<Vertex,E>
-
- org.apache.tinkerpop.gremlin.process.traversal.step.map.VertexStepPlaceholder<E>
-
- All Implemented Interfaces:
Serializable,AutoCloseable,Cloneable,Iterator<Traverser.Admin<E>>,Step<Vertex,E>,Configuring,GValueHolder<Vertex,E>,VertexStepContract<E>,Parameterizing
public class VertexStepPlaceholder<E extends Element> extends FlatMapStep<Vertex,E> implements GValueHolder<Vertex,E>, VertexStepContract<E>
Handles the logic of traversing to adjacent vertices or edges given a direction and edge labels for steps like,out,in,both,outE,inE, andbothE.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected ParameterswithConfiguration-
Fields inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep
id, labels, nextEnd, nextStep, previousStep, starts, traversal, traverserStepIdAndLabelsSetByChild
-
Fields inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.map.VertexStepContract
CONCRETE_STEPS
-
-
Constructor Summary
Constructors Constructor Description VertexStepPlaceholder(Traversal.Admin traversal, Class<E> returnClass, Direction direction, GValue<String>... edgeLabels)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VertexStep<E>asConcreteStep()VertexStepPlaceholder<E>clone()Cloning is used to duplicate steps for the purpose of traversal optimization and OLTP replication.voidclose()voidconfigure(Object... keyValues)Accept a configuration to theStep.booleanequals(Object o)protected Iterator<E>flatMap(Traverser.Admin<Vertex> traverser)DirectiongetDirection()String[]getEdgeLabels()GValue<String>[]getEdgeLabelsAsGValues()Collection<GValue<?>>getGValues()ParametersgetParameters()Gets the parameters on the step.Set<TraverserRequirement>getRequirements()Provide the necessaryTraverserRequirementthat must be met by the traverser in order for the step to function properly.Class<E>getReturnClass()inthashCode()booleanisParameterized()booleanreturnsEdge()Determines if the step returns edges.booleanreturnsVertex()Determines if the step returns vertices.voidreverseDirection()StringtoString()voidupdateVariable(String name, Object value)-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.map.FlatMapStep
closeIterator, processNextStart, reset
-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep
addLabel, addStart, addStarts, clearLabels, getId, getLabels, getNextStep, getPreviousStep, getStarts, getTraversal, hasNext, hasStarts, isTraverserStepIdAndLabelsSetByChild, next, prepareTraversalForNextStep, removeLabel, setId, setNextStep, setPreviousStep, setTraversal
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.GValueHolder
reduce
-
Methods inherited from interface java.util.Iterator
forEachRemaining, hasNext, next, remove
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Step
addLabel, addStart, addStarts, clearLabels, equals, getId, getLabels, getNextStep, getPreviousStep, getTraversal, hasStarts, removeLabel, reset, setId, setNextStep, setPreviousStep, setTraversal
-
-
-
-
Field Detail
-
withConfiguration
protected Parameters withConfiguration
-
-
Method Detail
-
getDirection
public Direction getDirection()
- Specified by:
getDirectionin interfaceVertexStepContract<E extends Element>
-
getEdgeLabels
public String[] getEdgeLabels()
- Specified by:
getEdgeLabelsin interfaceVertexStepContract<E extends Element>
-
getEdgeLabelsAsGValues
public GValue<String>[] getEdgeLabelsAsGValues()
- Specified by:
getEdgeLabelsAsGValuesin interfaceVertexStepContract<E extends Element>
-
getReturnClass
public Class<E> getReturnClass()
- Specified by:
getReturnClassin interfaceVertexStepContract<E extends Element>
-
reverseDirection
public void reverseDirection()
- Specified by:
reverseDirectionin interfaceVertexStepContract<E extends Element>
-
returnsVertex
public boolean returnsVertex()
Determines if the step returns vertices.- Specified by:
returnsVertexin interfaceVertexStepContract<E extends Element>
-
returnsEdge
public boolean returnsEdge()
Determines if the step returns edges.- Specified by:
returnsEdgein interfaceVertexStepContract<E extends Element>
-
flatMap
protected Iterator<E> flatMap(Traverser.Admin<Vertex> traverser)
- Specified by:
flatMapin classFlatMapStep<Vertex,E extends Element>
-
toString
public String toString()
- Overrides:
toStringin classAbstractStep<Vertex,E extends Element>
-
equals
public boolean equals(Object o)
- Overrides:
equalsin classAbstractStep<Vertex,E extends Element>
-
hashCode
public int hashCode()
- Overrides:
hashCodein classAbstractStep<Vertex,E extends Element>
-
clone
public VertexStepPlaceholder<E> clone()
Description copied from interface:StepCloning 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 whenStep.reset()is called. Moreover, the previous and next steps should be set toEmptyStep.
-
getRequirements
public Set<TraverserRequirement> getRequirements()
Description copied from interface:StepProvide the necessaryTraverserRequirementthat must be met by the traverser in order for the step to function properly. The provided default implements returns an empty set.- Specified by:
getRequirementsin interfaceStep<Vertex,E extends Element>- Specified by:
getRequirementsin interfaceVertexStepContract<E extends Element>- Returns:
- the set of requirements
-
asConcreteStep
public VertexStep<E> asConcreteStep()
- Specified by:
asConcreteStepin interfaceGValueHolder<Vertex,E extends Element>
-
isParameterized
public boolean isParameterized()
- Specified by:
isParameterizedin interfaceGValueHolder<Vertex,E extends Element>
-
updateVariable
public void updateVariable(String name, Object value)
- Specified by:
updateVariablein interfaceGValueHolder<Vertex,E extends Element>
-
getGValues
public Collection<GValue<?>> getGValues()
- Specified by:
getGValuesin interfaceGValueHolder<Vertex,E extends Element>
-
close
public void close() throws Exception- Specified by:
closein interfaceAutoCloseable- Throws:
Exception
-
configure
public void configure(Object... keyValues)
Description copied from interface:ConfiguringAccept a configuration to theStep. Note that this interface extendsParameterizingand so there is an expectation that theStepimplementation will have aParametersinstance that will house any values passed to this method. Storing these configurations inParametersis not a requirement however, IF the configuration is an expected option for the step and can be stored on a member field that can be accessed on the step by more direct means (i.e. like a getter method).- Specified by:
configurein interfaceConfiguring
-
getParameters
public Parameters getParameters()
Description copied from interface:ParameterizingGets the parameters on the step.- Specified by:
getParametersin interfaceParameterizing
-
-