Class MatchStep<S,E>
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep<S,E>
-
- org.apache.tinkerpop.gremlin.process.traversal.step.util.ComputerAwareStep<S,Map<String,E>>
-
- org.apache.tinkerpop.gremlin.process.traversal.step.map.MatchStep<S,E>
-
- All Implemented Interfaces:
Serializable,AutoCloseable,Cloneable,Iterator<Traverser.Admin<Map<String,E>>>,Step<S,Map<String,E>>,GraphComputing,PathProcessor,Scoping,TraversalParent
public final class MatchStep<S,E> extends ComputerAwareStep<S,Map<String,E>> implements TraversalParent, Scoping, PathProcessor
- Author:
- Marko A. Rodriguez (http://markorodriguez.com)
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMatchStep.CountMatchAlgorithmstatic classMatchStep.GreedyMatchAlgorithmstatic classMatchStep.Helperstatic interfaceMatchStep.MatchAlgorithmstatic classMatchStep.MatchEndStepstatic classMatchStep.MatchStartStepstatic classMatchStep.TraversalType-
Nested classes/interfaces inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.ComputerAwareStep
ComputerAwareStep.EndStep<S>
-
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.PathProcessor
PathProcessor.ElementRequirement
-
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.Scoping
Scoping.KeyNotFoundException, Scoping.Variable
-
-
Field Summary
-
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 MatchStep(Traversal.Admin traversal, ConnectiveStep.Connective connective, Traversal... matchTraversals)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddGlobalChild(Traversal.Admin<?,?> globalChildTraversal)MatchStep<S,E>clone()Cloning is used to duplicate steps for the purpose of traversal optimization and OLTP replication.protected Iterator<Traverser.Admin<Map<String,E>>>computerAlgorithm()ConnectiveStep.ConnectivegetConnective()List<Traversal.Admin<Object,Object>>getGlobalChildren()Set<String>getKeepLabels()MatchStep.MatchAlgorithmgetMatchAlgorithm()Set<String>getMatchEndLabels()Set<String>getMatchStartLabels()Set<TraverserRequirement>getRequirements()Provide the necessaryTraverserRequirementthat must be met by the traverser in order for the step to function properly.Set<String>getScopeKeys()Get the labels that this scoping step will access during the traversalinthashCode()voidremoveGlobalChild(Traversal.Admin<?,?> globalChildTraversal)voidreset()Reset the state of the step such that it has no incoming starts.voidsetDedupLabels(Set<String> labels)voidsetKeepLabels(Set<String> keepLabels)voidsetMatchAlgorithm(Class<? extends MatchStep.MatchAlgorithm> matchAlgorithmClass)voidsetTraversal(Traversal.Admin<?,?> parentTraversal)Set theTraversalthat this step is contained within.protected Iterator<Traverser.Admin<Map<String,E>>>standardAlgorithm()StringtoString()-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.ComputerAwareStep
onGraphComputer, processNextStart
-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep
addLabel, addStart, addStarts, clearLabels, equals, getId, getLabels, getNextStep, getPreviousStep, getStarts, getTraversal, hasNext, hasStarts, isTraverserStepIdAndLabelsSetByChild, next, prepareTraversalForNextStep, removeLabel, 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.GraphComputing
atMaster
-
Methods inherited from interface java.util.Iterator
forEachRemaining, remove
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.PathProcessor
getMaxRequirement
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.Scoping
getNullableScopeValue, getSafeScopeValue, getScopeValue
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.TraversalParent
addLocalChild, asStep, close, getLocalChildren, getSelfAndChildRequirements, integrateChild, removeLocalChild, replaceLocalChild
-
-
-
-
Constructor Detail
-
MatchStep
public MatchStep(Traversal.Admin traversal, ConnectiveStep.Connective connective, Traversal... matchTraversals)
-
-
Method Detail
-
getConnective
public ConnectiveStep.Connective getConnective()
-
addGlobalChild
public void addGlobalChild(Traversal.Admin<?,?> globalChildTraversal)
- Specified by:
addGlobalChildin interfaceTraversalParent
-
removeGlobalChild
public void removeGlobalChild(Traversal.Admin<?,?> globalChildTraversal)
- Specified by:
removeGlobalChildin interfaceTraversalParent
-
getGlobalChildren
public List<Traversal.Admin<Object,Object>> getGlobalChildren()
- Specified by:
getGlobalChildrenin interfaceTraversalParent
-
setKeepLabels
public void setKeepLabels(Set<String> keepLabels)
- Specified by:
setKeepLabelsin interfacePathProcessor
-
getKeepLabels
public Set<String> getKeepLabels()
- Specified by:
getKeepLabelsin interfacePathProcessor
-
getScopeKeys
public Set<String> getScopeKeys()
Description copied from interface:ScopingGet the labels that this scoping step will access during the traversal- Specified by:
getScopeKeysin interfaceScoping- Returns:
- the accessed labels of the scoping step
-
reset
public void reset()
Description copied from interface:StepReset 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.
-
setMatchAlgorithm
public void setMatchAlgorithm(Class<? extends MatchStep.MatchAlgorithm> matchAlgorithmClass)
-
getMatchAlgorithm
public MatchStep.MatchAlgorithm getMatchAlgorithm()
-
clone
public MatchStep<S,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.
-
setTraversal
public void setTraversal(Traversal.Admin<?,?> parentTraversal)
Description copied from interface:StepSet theTraversalthat this step is contained within.- Specified by:
setTraversalin interfaceStep<S,E>- Overrides:
setTraversalin classAbstractStep<S,Map<String,E>>- Parameters:
parentTraversal- the new traversal for this step
-
standardAlgorithm
protected Iterator<Traverser.Admin<Map<String,E>>> standardAlgorithm() throws NoSuchElementException
- Specified by:
standardAlgorithmin classComputerAwareStep<S,Map<String,E>>- Throws:
NoSuchElementException
-
computerAlgorithm
protected Iterator<Traverser.Admin<Map<String,E>>> computerAlgorithm() throws NoSuchElementException
- Specified by:
computerAlgorithmin classComputerAwareStep<S,Map<String,E>>- Throws:
NoSuchElementException
-
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<S,E>- Returns:
- the set of requirements
-
-