You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by dk...@apache.org on 2017/01/09 14:59:04 UTC
[43/50] tinkerpop git commit: Removed use of deprecated ScriptEngines
class. CTR
Removed use of deprecated ScriptEngines class. CTR
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/65be461a
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/65be461a
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/65be461a
Branch: refs/heads/TINKERPOP-1545-tp32
Commit: 65be461ad1f633896d938fe6de65fce8bbff9b09
Parents: 3064b93
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu Jan 5 11:29:26 2017 -0500
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Thu Jan 5 11:29:26 2017 -0500
----------------------------------------------------------------------
.../gremlin/groovy/engine/GremlinExecutor.java | 16 ++++++++++++++++
.../server/op/traversal/TraversalOpProcessor.java | 9 +++------
2 files changed, 19 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/65be461a/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutor.java
----------------------------------------------------------------------
diff --git a/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutor.java b/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutor.java
index 87d5728..486f19e 100644
--- a/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutor.java
+++ b/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/engine/GremlinExecutor.java
@@ -24,6 +24,8 @@ import org.apache.commons.lang3.concurrent.BasicThreadFactory;
import org.apache.tinkerpop.gremlin.jsr223.CachedGremlinScriptEngineManager;
import org.apache.tinkerpop.gremlin.jsr223.GremlinPlugin;
import org.apache.tinkerpop.gremlin.jsr223.GremlinScriptEngineManager;
+import org.apache.tinkerpop.gremlin.process.traversal.Bytecode;
+import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.javatuples.Pair;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -349,6 +351,20 @@ public class GremlinExecutor implements AutoCloseable {
}
/**
+ * Evaluates bytecode with bindings for a specific language into a {@link Traversal}.
+ */
+ public Traversal.Admin eval(final Bytecode bytecode, final Bindings boundVars, final String language) throws ScriptException {
+ final String lang = Optional.ofNullable(language).orElse("gremlin-groovy");
+
+ final Bindings bindings = new SimpleBindings();
+ bindings.putAll(globalBindings);
+ bindings.putAll(boundVars);
+
+ return useGremlinScriptEngineManager ?
+ gremlinScriptEngineManager.getEngineByName(lang).eval(bytecode, bindings) : scriptEngines.eval(bytecode, bindings, lang);
+ }
+
+ /**
* @deprecated As of release 3.2.4, replaced by {@link #getScriptEngineManager()}.
*/
@Deprecated
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/65be461a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
----------------------------------------------------------------------
diff --git a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
index 5461007..c5a05e4 100644
--- a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
+++ b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
@@ -235,9 +235,7 @@ public class TraversalOpProcessor extends AbstractOpProcessor {
throw new OpProcessorException(msg, ResponseMessage.build(message).code(ResponseStatusCode.REQUEST_ERROR_INVALID_REQUEST_ARGUMENTS).statusMessage(msg).create());
}
- final Optional<Map<String, String>> aliases = validatedAliases(message);
-
- return aliases.get();
+ return validatedAliases(message).get();
}
private static Optional<Map<String, String>> validatedAliases(final RequestMessage message) throws OpProcessorException {
@@ -328,7 +326,7 @@ public class TraversalOpProcessor extends AbstractOpProcessor {
}
}
- private void iterateBytecodeTraversal(final Context context) throws OpProcessorException, Exception {
+ private void iterateBytecodeTraversal(final Context context) throws Exception {
final RequestMessage msg = context.getRequestMessage();
logger.debug("Traversal request {} for in thread {}", msg.getRequestId(), Thread.currentThread().getName());
@@ -351,10 +349,9 @@ public class TraversalOpProcessor extends AbstractOpProcessor {
if (!lambdaLanguage.isPresent())
traversal = JavaTranslator.of(g).translate(bytecode);
else {
- final ScriptEngines engines = context.getGremlinExecutor().getScriptEngines();
final SimpleBindings b = new SimpleBindings();
b.put(Tokens.VAL_TRAVERSAL_SOURCE_ALIAS, g);
- traversal = engines.eval(bytecode, b, lambdaLanguage.get());
+ traversal = context.getGremlinExecutor().eval(bytecode, b, lambdaLanguage.get());
}
} catch (Exception ex) {
logger.error("Could not deserialize the Traversal instance", context);