You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2017/02/27 15:44:24 UTC
[1/2] tinkerpop git commit: Deprecated some old plugin infrastructure
code
Repository: tinkerpop
Updated Branches:
refs/heads/master 2e64a9521 -> 28b3139ed
Deprecated some old plugin infrastructure code
Moved PluggedIn out of plugins package as that package is basically being deleted in 3.3.0. CTR
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/ec8f81e6
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/ec8f81e6
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/ec8f81e6
Branch: refs/heads/master
Commit: ec8f81e687e086940a10d4d2e4ed0ee624bbaa7e
Parents: de38c6d
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Feb 27 10:43:19 2017 -0500
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Feb 27 10:43:19 2017 -0500
----------------------------------------------------------------------
CHANGELOG.asciidoc | 1 +
.../tinkerpop/gremlin/console/Console.groovy | 1 -
.../tinkerpop/gremlin/console/Mediator.groovy | 1 -
.../tinkerpop/gremlin/console/PluggedIn.groovy | 166 +++++++++++++++++++
.../console/commands/InstallCommand.groovy | 2 +-
.../console/plugin/ConsolePluginAcceptor.groovy | 2 +
.../gremlin/console/plugin/PluggedIn.groovy | 2 +
.../groovy/plugin/GremlinPluginAdapterTest.java | 2 +-
.../jsr223/UtilitiesGremlinPluginTest.java | 2 +-
.../gremlin/jsr223/console/PluginAcceptor.java | 2 +
10 files changed, 176 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 34d74d4..7998974 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -28,6 +28,7 @@ TinkerPop 3.2.5 (Release Date: NOT OFFICIALLY RELEASED YET)
* Removed `HasTest.g_V_hasId_compilationEquality` from process test suite as it makes too many assumptions about provider compilation.
* Deprecated `CustomizerProvider` infrastructure.
+* Deprecated `PluginAcceptor` infrastructure.
* Improved consistency of the application of bindings to `GremlinScriptEngine` implementations in the `BindingsGremlinPlugin`.
* Fixed a bug in OLAP `ComputerAwareStep` where end-step labels were not being appended to the traverser correctly.
* Refactor `SparkContext` handler to support external kill and stop operations.
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Console.groovy
----------------------------------------------------------------------
diff --git a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Console.groovy b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Console.groovy
index be71cb0..651d6f3 100644
--- a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Console.groovy
+++ b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Console.groovy
@@ -28,7 +28,6 @@ import org.apache.tinkerpop.gremlin.console.commands.PluginCommand
import org.apache.tinkerpop.gremlin.console.commands.RemoteCommand
import org.apache.tinkerpop.gremlin.console.commands.SubmitCommand
import org.apache.tinkerpop.gremlin.console.commands.UninstallCommand
-import org.apache.tinkerpop.gremlin.console.plugin.PluggedIn
import org.apache.tinkerpop.gremlin.groovy.loaders.GremlinLoader
import org.apache.tinkerpop.gremlin.groovy.plugin.GremlinPlugin
import org.apache.tinkerpop.gremlin.jsr223.CoreGremlinPlugin
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Mediator.groovy
----------------------------------------------------------------------
diff --git a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Mediator.groovy b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Mediator.groovy
index 74f956d..2f5b827 100644
--- a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Mediator.groovy
+++ b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Mediator.groovy
@@ -18,7 +18,6 @@
*/
package org.apache.tinkerpop.gremlin.console
-import org.apache.tinkerpop.gremlin.console.plugin.PluggedIn
import org.apache.tinkerpop.gremlin.groovy.plugin.RemoteAcceptor
/**
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/PluggedIn.groovy
----------------------------------------------------------------------
diff --git a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/PluggedIn.groovy b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/PluggedIn.groovy
new file mode 100644
index 0000000..a1e1ee7
--- /dev/null
+++ b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/PluggedIn.groovy
@@ -0,0 +1,166 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tinkerpop.gremlin.console
+
+import org.apache.tinkerpop.gremlin.console.plugin.ConsolePluginAcceptor
+import org.apache.tinkerpop.gremlin.groovy.plugin.*
+import org.apache.tinkerpop.gremlin.jsr223.BindingsCustomizer
+import org.apache.tinkerpop.gremlin.jsr223.ImportCustomizer
+import org.apache.tinkerpop.gremlin.jsr223.ScriptCustomizer
+import org.apache.tinkerpop.gremlin.jsr223.console.ConsoleCustomizer
+import org.apache.tinkerpop.gremlin.jsr223.console.GremlinShellEnvironment
+import org.codehaus.groovy.tools.shell.Groovysh
+import org.codehaus.groovy.tools.shell.IO
+
+/**
+ * @author Stephen Mallette (http://stephen.genoprime.com)
+ */
+class PluggedIn {
+ private static final String LINE_SEPARATOR = System.getProperty("line.separator")
+ private final GremlinPlugin plugin
+ private boolean activated = false
+
+ private final Groovysh shell
+ private final IO io
+
+ public PluggedIn(final GremlinPlugin plugin, final Groovysh shell, final IO io, final boolean activated) {
+ this.plugin = plugin
+ this.activated = activated
+ this.shell = shell
+ this.io = io
+ }
+
+ GremlinPlugin getPlugin() {
+ return plugin
+ }
+
+ boolean getActivated() {
+ return activated
+ }
+
+ void activate() {
+ plugin.pluginTo(new ConsolePluginAcceptor(shell, io))
+ this.activated = true
+ }
+
+ void deactivate() {
+ this.activated = false
+ }
+
+ public static class GremlinPluginAdapter implements GremlinPlugin {
+ org.apache.tinkerpop.gremlin.jsr223.GremlinPlugin corePlugin
+ private final Groovysh shell
+ private final IO io
+
+ public GremlinPluginAdapter(final org.apache.tinkerpop.gremlin.jsr223.GremlinPlugin corePlugin, final Groovysh shell, final IO io) {
+ this.corePlugin = corePlugin
+ this.shell = shell
+ this.io = io
+ }
+
+ @Override
+ String getName() {
+ return corePlugin.getName()
+ }
+
+ @Override
+ void pluginTo(final PluginAcceptor pluginAcceptor) throws IllegalEnvironmentException, PluginInitializationException {
+ corePlugin.getCustomizers("gremlin-groovy").get().each {
+ if (it instanceof ImportCustomizer) {
+ def imports = [] as Set
+ it.getClassPackages().collect {Mediator.IMPORT_SPACE + it.getName() + Mediator.IMPORT_WILDCARD }.each { imports.add(it) }
+ it.getMethodClasses().collect {Mediator.IMPORT_STATIC_SPACE + it.getCanonicalName() + Mediator.IMPORT_WILDCARD}.each {imports.add(it)}
+ it.getEnumClasses().collect {Mediator.IMPORT_STATIC_SPACE + it.getCanonicalName() + Mediator.IMPORT_WILDCARD}.each {imports.add(it)}
+ pluginAcceptor.addImports(imports)
+ } else if (it instanceof ScriptCustomizer) {
+ it.getScripts().collect { it.join(LINE_SEPARATOR) }.each { pluginAcceptor.eval(it) }
+ } else if (it instanceof BindingsCustomizer) {
+ it.bindings.entrySet().each { kv -> pluginAcceptor.addBinding(kv.key, kv.value) }
+ }
+ }
+ }
+
+ @Override
+ boolean requireRestart() {
+ return corePlugin.requireRestart()
+ }
+
+ @Override
+ Optional<RemoteAcceptor> remoteAcceptor() {
+ // find a consoleCustomizer if available
+ if (!corePlugin.getCustomizers("gremlin-groovy").isPresent() || !corePlugin.getCustomizers("gremlin-groovy").get().any{ it instanceof ConsoleCustomizer })
+ return Optional.empty()
+
+ ConsoleCustomizer customizer = (ConsoleCustomizer) corePlugin.getCustomizers("gremlin-groovy").get().find{ it instanceof ConsoleCustomizer }
+ return Optional.of(new RemoteAcceptorAdapter(customizer.getRemoteAcceptor(new GroovyGremlinShellEnvironment())))
+ }
+
+ public class GroovyGremlinShellEnvironment implements GremlinShellEnvironment {
+
+ @Override
+ def <T> T getVariable(final String variableName) {
+ return (T) shell.interp.context.getVariable(variableName)
+ }
+
+ @Override
+ def <T> void setVariable(final String variableName, final T variableValue) {
+ shell.interp.context.setVariable(variableName, variableValue)
+ }
+
+ @Override
+ void println(final String line) {
+ io.println(line)
+ }
+
+ @Override
+ def <T> T execute(final String line) {
+ return (T) shell.execute(line)
+ }
+ }
+ }
+
+ public static class RemoteAcceptorAdapter implements RemoteAcceptor {
+
+ private org.apache.tinkerpop.gremlin.jsr223.console.RemoteAcceptor remoteAcceptor
+
+ public RemoteAcceptorAdapter(org.apache.tinkerpop.gremlin.jsr223.console.RemoteAcceptor remoteAcceptor) {
+ this.remoteAcceptor = remoteAcceptor
+ }
+
+ @Override
+ Object connect(final List<String> args) throws RemoteException {
+ return remoteAcceptor.connect(args)
+ }
+
+ @Override
+ Object configure(final List<String> args) throws RemoteException {
+ return remoteAcceptor.configure(args)
+ }
+
+ @Override
+ Object submit(final List<String> args) throws RemoteException {
+ return remoteAcceptor.submit(args)
+ }
+
+ @Override
+ void close() throws IOException {
+ remoteAcceptor.close()
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/commands/InstallCommand.groovy
----------------------------------------------------------------------
diff --git a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/commands/InstallCommand.groovy b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/commands/InstallCommand.groovy
index c8a49df..5386e89 100644
--- a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/commands/InstallCommand.groovy
+++ b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/commands/InstallCommand.groovy
@@ -20,7 +20,7 @@ package org.apache.tinkerpop.gremlin.console.commands
import org.apache.tinkerpop.gremlin.console.ConsoleFs
import org.apache.tinkerpop.gremlin.console.Mediator
-import org.apache.tinkerpop.gremlin.console.plugin.PluggedIn
+import org.apache.tinkerpop.gremlin.console.PluggedIn
import org.apache.tinkerpop.gremlin.groovy.plugin.GremlinPlugin
import groovy.grape.Grape
import org.apache.tinkerpop.gremlin.groovy.util.Artifact
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/ConsolePluginAcceptor.groovy
----------------------------------------------------------------------
diff --git a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/ConsolePluginAcceptor.groovy b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/ConsolePluginAcceptor.groovy
index b7ff7d4..bbb2dfd 100644
--- a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/ConsolePluginAcceptor.groovy
+++ b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/ConsolePluginAcceptor.groovy
@@ -25,7 +25,9 @@ import org.codehaus.groovy.tools.shell.IO
/**
* @author Stephen Mallette (http://stephen.genoprime.com)
+ * @deprecated As of release 3.2.5, not replaced.
*/
+@Deprecated
class ConsolePluginAcceptor implements PluginAcceptor, org.apache.tinkerpop.gremlin.jsr223.console.PluginAcceptor {
public static final String ENVIRONMENT_NAME = "console";
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/PluggedIn.groovy
----------------------------------------------------------------------
diff --git a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/PluggedIn.groovy b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/PluggedIn.groovy
index 3012caf..a4afb28 100644
--- a/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/PluggedIn.groovy
+++ b/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/plugin/PluggedIn.groovy
@@ -35,7 +35,9 @@ import org.codehaus.groovy.tools.shell.IO
/**
* @author Stephen Mallette (http://stephen.genoprime.com)
+ * @deprecated As of release 3.2.5, replaced by {@link org.apache.tinkerpop.gremlin.console.PluggedIn}
*/
+@Deprecated
class PluggedIn {
private static final String LINE_SEPARATOR = System.getProperty("line.separator")
private final GremlinPlugin plugin
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/groovy/plugin/GremlinPluginAdapterTest.java
----------------------------------------------------------------------
diff --git a/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/groovy/plugin/GremlinPluginAdapterTest.java b/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/groovy/plugin/GremlinPluginAdapterTest.java
index dfc9006..fb8f990 100644
--- a/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/groovy/plugin/GremlinPluginAdapterTest.java
+++ b/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/groovy/plugin/GremlinPluginAdapterTest.java
@@ -19,7 +19,7 @@
package org.apache.tinkerpop.gremlin.console.groovy.plugin;
import org.apache.tinkerpop.gremlin.TestHelper;
-import org.apache.tinkerpop.gremlin.console.plugin.PluggedIn;
+import org.apache.tinkerpop.gremlin.console.PluggedIn;
import org.apache.tinkerpop.gremlin.jsr223.BindingsCustomizer;
import org.apache.tinkerpop.gremlin.jsr223.Customizer;
import org.apache.tinkerpop.gremlin.jsr223.DefaultBindingsCustomizer;
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/jsr223/UtilitiesGremlinPluginTest.java
----------------------------------------------------------------------
diff --git a/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/jsr223/UtilitiesGremlinPluginTest.java b/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/jsr223/UtilitiesGremlinPluginTest.java
index abecf8c..65b2ee0 100644
--- a/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/jsr223/UtilitiesGremlinPluginTest.java
+++ b/gremlin-console/src/test/java/org/apache/tinkerpop/gremlin/console/jsr223/UtilitiesGremlinPluginTest.java
@@ -20,7 +20,7 @@ package org.apache.tinkerpop.gremlin.console.jsr223;
import org.apache.commons.io.input.NullInputStream;
import org.apache.tinkerpop.gremlin.console.plugin.ConsolePluginAcceptor;
-import org.apache.tinkerpop.gremlin.console.plugin.PluggedIn;
+import org.apache.tinkerpop.gremlin.console.PluggedIn;
import org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerFactory;
import org.codehaus.groovy.tools.shell.Groovysh;
import org.codehaus.groovy.tools.shell.IO;
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ec8f81e6/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/PluginAcceptor.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/PluginAcceptor.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/PluginAcceptor.java
index ce8b913..cd6951b 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/PluginAcceptor.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/PluginAcceptor.java
@@ -31,7 +31,9 @@ import java.util.Set;
* and provides the abstractions required for a plugin to work regardless of the environmental implementations.
*
* @author Stephen Mallette (http://stephen.genoprime.com)
+ * @deprecated As of release 3.2.5, not replaced.
*/
+@Deprecated
public interface PluginAcceptor {
public void addImports(final Set<String> importStatements);
[2/2] tinkerpop git commit: Merge branch 'tp32'
Posted by sp...@apache.org.
Merge branch 'tp32'
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/28b3139e
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/28b3139e
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/28b3139e
Branch: refs/heads/master
Commit: 28b3139ed21f8b31e84eddf724610bf3662c5118
Parents: 2e64a95 ec8f81e
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Feb 27 10:44:13 2017 -0500
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Feb 27 10:44:13 2017 -0500
----------------------------------------------------------------------
CHANGELOG.asciidoc | 1 +
.../tinkerpop/gremlin/console/Console.groovy | 1 -
.../tinkerpop/gremlin/console/Mediator.groovy | 1 -
.../tinkerpop/gremlin/console/PluggedIn.groovy | 166 +++++++++++++++++++
.../console/commands/InstallCommand.groovy | 2 +-
.../console/plugin/ConsolePluginAcceptor.groovy | 2 +
.../gremlin/console/plugin/PluggedIn.groovy | 2 +
.../groovy/plugin/GremlinPluginAdapterTest.java | 2 +-
.../jsr223/UtilitiesGremlinPluginTest.java | 2 +-
.../gremlin/jsr223/console/PluginAcceptor.java | 2 +
10 files changed, 176 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/28b3139e/CHANGELOG.asciidoc
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/28b3139e/gremlin-console/src/main/groovy/org/apache/tinkerpop/gremlin/console/Console.groovy
----------------------------------------------------------------------