Class PropertyMapStep<K,E>
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep<S,E>
-
- org.apache.tinkerpop.gremlin.process.traversal.step.map.MapStep<S,E>
-
- org.apache.tinkerpop.gremlin.process.traversal.step.map.ScalarMapStep<Element,Map<K,E>>
-
- org.apache.tinkerpop.gremlin.process.traversal.step.map.PropertyMapStep<K,E>
-
- All Implemented Interfaces:
Serializable
,AutoCloseable
,Cloneable
,Iterator<Traverser.Admin<Map<K,E>>>
,Step<Element,Map<K,E>>
,ByModulating
,Configuring
,Parameterizing
,TraversalParent
public class PropertyMapStep<K,E> extends ScalarMapStep<Element,Map<K,E>> implements TraversalParent, ByModulating, Configuring
- Author:
- Marko A. Rodriguez (http://markorodriguez.com), Daniel Kuppitz (http://gremlin.guru)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected Parameters
parameters
protected String[]
propertyKeys
protected Traversal.Admin<Element,? extends Property>
propertyTraversal
protected PropertyType
returnType
protected int
tokens
protected TraversalRing<K,E>
traversalRing
-
Fields inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep
id, labels, nextEnd, nextStep, previousStep, starts, traversal, traverserStepIdAndLabelsSetByChild
-
-
Constructor Summary
Constructors Constructor Description PropertyMapStep(Traversal.Admin traversal, int options, PropertyType propertyType, String... propertyKeys)
PropertyMapStep(Traversal.Admin traversal, PropertyType propertyType, String... propertyKeys)
PropertyMapStep(Traversal.Admin traversal, PropertyType propertyType, TraversalRing<K,E> traversalRing, String... propertyKeys)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addElementProperties(Traverser.Admin<Element> traverser, Map<Object,Object> map)
protected void
addIncludedOptions(Element element, Map<Object,Object> map)
protected void
applyTraversalRingToMap(Map<Object,Object> map)
PropertyMapStep<K,E>
clone()
Cloning is used to duplicate steps for the purpose of traversal optimization and OLTP replication.void
configure(Object... keyValues)
Accept a configuration to theStep
.protected Object
getElementId(Element element)
protected String
getElementLabel(Element element)
int
getIncludedTokens()
List<Traversal.Admin<K,E>>
getLocalChildren()
Parameters
getParameters()
Gets the parameters on the step.String[]
getPropertyKeys()
Traversal.Admin<Element,? extends Property>
getPropertyTraversal()
Set<TraverserRequirement>
getRequirements()
Provide the necessaryTraverserRequirement
that must be met by the traverser in order for the step to function properly.PropertyType
getReturnType()
TraversalRing<K,E>
getTraversalRing()
protected String
getVertexPropertyKey(VertexProperty<?> vertexProperty)
protected Object
getVertexPropertyValue(VertexProperty<?> vertexProperty)
int
hashCode()
protected boolean
includeToken(int token)
protected Map<K,E>
map(Traverser.Admin<Element> traverser)
void
modulateBy(Traversal.Admin<?,?> selectTraversal)
void
setPropertyTraversal(Traversal.Admin<Element,? extends Property> propertyTraversal)
void
setTraversal(Traversal.Admin<?,?> parentTraversal)
Set theTraversal
that this step is contained within.String
toString()
-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.map.ScalarMapStep
processNextStart
-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep
addLabel, addStart, addStarts, equals, getId, getLabels, getNextStep, getPreviousStep, getStarts, getTraversal, hasNext, hasStarts, isTraverserStepIdAndLabelsSetByChild, next, prepareTraversalForNextStep, removeLabel, reset, setId, setNextStep, setPreviousStep
-
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.ByModulating
modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy, modulateBy
-
Methods inherited from interface java.util.Iterator
forEachRemaining, remove
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.TraversalParent
addGlobalChild, addLocalChild, asStep, close, getGlobalChildren, getSelfAndChildRequirements, integrateChild, removeGlobalChild, removeLocalChild, replaceLocalChild
-
-
-
-
Field Detail
-
propertyKeys
protected final String[] propertyKeys
-
returnType
protected final PropertyType returnType
-
tokens
protected int tokens
-
propertyTraversal
protected Traversal.Admin<Element,? extends Property> propertyTraversal
-
parameters
protected Parameters parameters
-
traversalRing
protected TraversalRing<K,E> traversalRing
-
-
Constructor Detail
-
PropertyMapStep
public PropertyMapStep(Traversal.Admin traversal, PropertyType propertyType, TraversalRing<K,E> traversalRing, String... propertyKeys)
-
PropertyMapStep
public PropertyMapStep(Traversal.Admin traversal, PropertyType propertyType, String... propertyKeys)
-
PropertyMapStep
public PropertyMapStep(Traversal.Admin traversal, int options, PropertyType propertyType, String... propertyKeys)
-
-
Method Detail
-
map
protected Map<K,E> map(Traverser.Admin<Element> traverser)
-
configure
public void configure(Object... keyValues)
Description copied from interface:Configuring
Accept a configuration to theStep
. Note that this interface extendsParameterizing
and so there is an expectation that theStep
implementation will have aParameters
instance that will house any values passed to this method. Storing these configurations inParameters
is 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:
configure
in interfaceConfiguring
-
getParameters
public Parameters getParameters()
Description copied from interface:Parameterizing
Gets the parameters on the step.- Specified by:
getParameters
in interfaceParameterizing
-
getLocalChildren
public List<Traversal.Admin<K,E>> getLocalChildren()
- Specified by:
getLocalChildren
in interfaceTraversalParent
-
modulateBy
public void modulateBy(Traversal.Admin<?,?> selectTraversal)
- Specified by:
modulateBy
in interfaceByModulating
-
setPropertyTraversal
public void setPropertyTraversal(Traversal.Admin<Element,? extends Property> propertyTraversal)
-
getReturnType
public PropertyType getReturnType()
-
getPropertyKeys
public String[] getPropertyKeys()
-
getPropertyTraversal
public Traversal.Admin<Element,? extends Property> getPropertyTraversal()
-
clone
public PropertyMapStep<K,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 whenStep.reset()
is called. Moreover, the previous and next steps should be set toEmptyStep
.
-
setTraversal
public void setTraversal(Traversal.Admin<?,?> parentTraversal)
Description copied from interface:Step
Set theTraversal
that this step is contained within.- Specified by:
setTraversal
in interfaceStep<K,E>
- Overrides:
setTraversal
in classAbstractStep<Element,Map<K,E>>
- Parameters:
parentTraversal
- the new traversal for this step
-
getRequirements
public Set<TraverserRequirement> getRequirements()
Description copied from interface:Step
Provide the necessaryTraverserRequirement
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 interfaceStep<K,E>
- Returns:
- the set of requirements
-
getIncludedTokens
public int getIncludedTokens()
-
includeToken
protected boolean includeToken(int token)
-
getVertexPropertyKey
protected String getVertexPropertyKey(VertexProperty<?> vertexProperty)
-
getVertexPropertyValue
protected Object getVertexPropertyValue(VertexProperty<?> vertexProperty)
-
addElementProperties
protected void addElementProperties(Traverser.Admin<Element> traverser, Map<Object,Object> map)
-
getTraversalRing
public TraversalRing<K,E> getTraversalRing()
-
-