Class StandardOpProcessor
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor
-
- org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor
-
- org.apache.tinkerpop.gremlin.server.op.standard.StandardOpProcessor
-
- All Implemented Interfaces:
AutoCloseable
,OpProcessor
public class StandardOpProcessor extends AbstractEvalOpProcessor
SimpleOpProcessor
implementation that handlesScriptEngine
script evaluation outside the context of a session.- Author:
- Stephen Mallette (http://stephen.genoprime.com)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor
AbstractEvalOpProcessor.BindingSupplier
-
-
Field Summary
Fields Modifier and Type Field Description protected Function<Context,AbstractEvalOpProcessor.BindingSupplier>
bindingMaker
static String
OP_PROCESSOR_NAME
-
Fields inherited from class org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor
CONFIG_MAX_PARAMETERS, DEFAULT_MAX_PARAMETERS, evalOpTimer, INVALID_BINDINGS_KEYS, maxParameters
-
Fields inherited from class org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor
manageTransactions
-
-
Constructor Summary
Constructors Constructor Description StandardOpProcessor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
protected Function<Context,AbstractEvalOpProcessor.BindingSupplier>
getBindingMaker()
A useful method for those extending this class, where the means for binding construction can be supplied to this class.ThrowingConsumer<Context>
getEvalOp()
Provides an operation for evaluating a Gremlin script.String
getName()
The name of the processor which requests must refer to "processor" field on a request.void
init(Settings settings)
Initialize theOpProcessor
with settings from the server.Optional<ThrowingConsumer<Context>>
selectOther(Context ctx)
A sub-class may have additional "ops" that it will service.-
Methods inherited from class org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor
evalOpInternal, select, validateEvalMessage
-
Methods inherited from class org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor
attemptCommit, attemptRollback, determineIfSpecialException, generateResultMetaData, generateStatusAttributes, handleIterator, isForceFlushed, iterateComplete, makeFrame
-
-
-
-
Field Detail
-
OP_PROCESSOR_NAME
public static final String OP_PROCESSOR_NAME
- See Also:
- Constant Field Values
-
bindingMaker
protected final Function<Context,AbstractEvalOpProcessor.BindingSupplier> bindingMaker
-
-
Method Detail
-
getName
public String getName()
Description copied from interface:OpProcessor
The name of the processor which requests must refer to "processor" field on a request.
-
init
public void init(Settings settings)
Description copied from interface:OpProcessor
Initialize theOpProcessor
with settings from the server. This method should only be called once at server startup by a single thread.
-
getEvalOp
public ThrowingConsumer<Context> getEvalOp()
Description copied from class:AbstractEvalOpProcessor
Provides an operation for evaluating a Gremlin script.- Specified by:
getEvalOp
in classAbstractEvalOpProcessor
- Returns:
-
selectOther
public Optional<ThrowingConsumer<Context>> selectOther(Context ctx) throws OpProcessorException
Description copied from class:AbstractEvalOpProcessor
A sub-class may have additional "ops" that it will service. Calls toOpProcessor.select(Context)
that are not handled will be passed to this method to see if the sub-class can service the requested op code.- Specified by:
selectOther
in classAbstractEvalOpProcessor
- Returns:
- Throws:
OpProcessorException
-
getBindingMaker
protected Function<Context,AbstractEvalOpProcessor.BindingSupplier> getBindingMaker()
A useful method for those extending this class, where the means for binding construction can be supplied to this class. This function is used inevalOp(Context)
to create the final argument toAbstractEvalOpProcessor.evalOpInternal(Context, Supplier, BindingSupplier)
. In this way an extending class can use the defaultAbstractEvalOpProcessor.BindingSupplier
which carries a lot of re-usable functionality or provide a new one to override the existing approach.
-
-