Class CallStepPlaceholder<S,E>
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep<S,E>
-
- org.apache.tinkerpop.gremlin.process.traversal.step.map.CallStepPlaceholder<S,E>
-
- All Implemented Interfaces:
Serializable,AutoCloseable,Cloneable,Iterator<Traverser.Admin<E>>,Step<S,E>,Configuring,GValueHolder<S,E>,CallStepContract<S,E>,Parameterizing,PopContaining,TraversalParent
public final class CallStepPlaceholder<S,E> extends AbstractStep<S,E> implements CallStepContract<S,E>, GValueHolder<S,E>
Reference implementation for service calls via theServiceRegistryandServiceAPIs. This step can be used to start a traversal or it can be used mid-traversal with one at a time or barrier execution.- Author:
- Mike Personick (http://github.com/mikepersonick)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.PopContaining
PopContaining.PopInstruction
-
-
Field Summary
-
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.CallStepContract
CONCRETE_STEPS
-
-
Constructor Summary
Constructors Constructor Description CallStepPlaceholder(Traversal.Admin traversal, boolean isStart)CallStepPlaceholder(Traversal.Admin traversal, boolean isStart, String service)CallStepPlaceholder(Traversal.Admin traversal, boolean isStart, String service, GValue<Map<?,?>> staticParams)CallStepPlaceholder(Traversal.Admin traversal, boolean isStart, String service, GValue<Map<?,?>> staticParams, Traversal.Admin<S,Map<?,?>> mapTraversal)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CallStep<S,E>asConcreteStep()CallStepPlaceholder<S,E>clone()Cloning is used to duplicate steps for the purpose of traversal optimization and OLTP replication.voidconfigure(Object... keyValues)Accept a configuration to theStep.Collection<GValue<?>>getGValues()<S,E>
List<Traversal.Admin<S,E>>getLocalChildren()Gets a list of all "local" child traversals for this step.MapgetMergedParams()protected MapgetMergedParams(Traverser.Admin<S> traverser)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.StringgetServiceName()ServiceRegistrygetServiceRegistry()MapgetStaticParams()GValue<Map>getStaticParamsAsGValue()inthashCode()booleanisParameterized()protected Traverser.Admin<E>processNextStart()voidreset()Reset the state of the step such that it has no incoming starts.Service<S,E>service()Service<S,E>serviceGValueSafe()voidsetTraversal(Traversal.Admin<?,?> parentTraversal)Set theTraversalthat this step is contained within.StringtoString()voidupdateVariable(String name, Object value)-
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.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, setId, setNextStep, setPreviousStep
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.step.TraversalParent
addGlobalChild, addLocalChild, asStep, close, getGlobalChildren, getPopInstructions, getSelfAndChildRequirements, integrateChild, removeGlobalChild, removeLocalChild, replaceLocalChild
-
-
-
-
Constructor Detail
-
CallStepPlaceholder
public CallStepPlaceholder(Traversal.Admin traversal, boolean isStart)
-
CallStepPlaceholder
public CallStepPlaceholder(Traversal.Admin traversal, boolean isStart, String service)
-
CallStepPlaceholder
public CallStepPlaceholder(Traversal.Admin traversal, boolean isStart, String service, GValue<Map<?,?>> staticParams)
-
CallStepPlaceholder
public CallStepPlaceholder(Traversal.Admin traversal, boolean isStart, String service, GValue<Map<?,?>> staticParams, Traversal.Admin<S,Map<?,?>> mapTraversal)
-
-
Method Detail
-
serviceGValueSafe
public Service<S,E> serviceGValueSafe()
- Specified by:
serviceGValueSafein interfaceCallStepContract<S,E>
-
getServiceName
public String getServiceName()
- Specified by:
getServiceNamein interfaceCallStepContract<S,E>
-
processNextStart
protected Traverser.Admin<E> processNextStart()
- Specified by:
processNextStartin classAbstractStep<S,E>
-
getStaticParams
public Map getStaticParams()
- Specified by:
getStaticParamsin interfaceCallStepContract<S,E>
-
getStaticParamsAsGValue
public GValue<Map> getStaticParamsAsGValue()
- Specified by:
getStaticParamsAsGValuein interfaceCallStepContract<S,E>
-
getMergedParams
public Map getMergedParams()
- Specified by:
getMergedParamsin interfaceCallStepContract<S,E>
-
getMergedParams
protected Map getMergedParams(Traverser.Admin<S> traverser)
-
getServiceRegistry
public ServiceRegistry getServiceRegistry()
- Specified by:
getServiceRegistryin interfaceCallStepContract<S,E>
-
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.
-
getLocalChildren
public <S,E> List<Traversal.Admin<S,E>> getLocalChildren()
Description copied from interface:TraversalParentGets a list of all "local" child traversals for this step. A "local" traversal is one which is evaluated independently for each incoming traverser to the parent step. This is typically used in cases where the child is used to process or augment each traverser individually. SeeLocalSteporByModulatingas examples.- Specified by:
getLocalChildrenin interfaceTraversalParent
-
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,E>- Parameters:
parentTraversal- the new traversal for this step
-
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
-
toString
public String toString()
- Overrides:
toStringin classAbstractStep<S,E>
-
hashCode
public int hashCode()
- Overrides:
hashCodein classAbstractStep<S,E>
-
clone
public CallStepPlaceholder<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.
-
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
-
asConcreteStep
public CallStep<S,E> asConcreteStep()
- Specified by:
asConcreteStepin interfaceGValueHolder<S,E>
-
isParameterized
public boolean isParameterized()
- Specified by:
isParameterizedin interfaceGValueHolder<S,E>
-
updateVariable
public void updateVariable(String name, Object value)
- Specified by:
updateVariablein interfaceGValueHolder<S,E>
-
getGValues
public Collection<GValue<?>> getGValues()
- Specified by:
getGValuesin interfaceGValueHolder<S,E>
-
-