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 2018/05/30 18:07:48 UTC
[21/22] tinkerpop git commit: wip
wip
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/02f583e0
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/02f583e0
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/02f583e0
Branch: refs/heads/TINKERPOP-1975
Commit: 02f583e01d24c69a498bcc897d8b7d1327847fc4
Parents: 99a4b36
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed May 30 08:27:07 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed May 30 13:46:14 2018 -0400
----------------------------------------------------------------------
.../gremlin/jsr223/JavaTranslator.java | 28 ++++++++---------
.../structure/io/gryo/GryoSerializersV1d0.java | 32 --------------------
.../structure/io/gryo/GryoSerializersV3d0.java | 1 -
3 files changed, 12 insertions(+), 49 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/02f583e0/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
index 4813fab..6c3d906 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
@@ -27,7 +27,6 @@ import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.TraversalSource;
import org.apache.tinkerpop.gremlin.process.traversal.step.StepConfiguration;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.BulkSet;
-import org.apache.tinkerpop.gremlin.process.traversal.step.util.DefaultStepConfiguration;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.StepConfigurationProxy;
import org.apache.tinkerpop.gremlin.process.traversal.step.util.Tree;
import org.apache.tinkerpop.gremlin.process.traversal.strategy.TraversalStrategyProxy;
@@ -118,20 +117,11 @@ public final class JavaTranslator<S extends TraversalSource, T extends Traversal
throw new IllegalStateException(e.getMessage());
}
} else if (object instanceof TraversalStrategyProxy) {
- final Map<String, Object> map = new HashMap<>();
- final Configuration configuration = ((TraversalStrategyProxy) object).getConfiguration();
- configuration.getKeys().forEachRemaining(key -> map.put(key, translateObject(configuration.getProperty(key))));
- return invokeStrategyCreationMethod(object, map);
- } else if (object instanceof DefaultStepConfiguration) {
- final Map<String, Object> map = new LinkedHashMap<>();
- final Configuration configuration = ((DefaultStepConfiguration) object).getConfiguration();
- configuration.getKeys().forEachRemaining(key -> map.put(key, translateObject(configuration.getProperty(key))));
- return invokeStepConfigurationCreationMethod(object, map);
- }else if (object instanceof StepConfigurationProxy) {
- final Map<String, Object> map = new LinkedHashMap<>();
- final Configuration configuration = ((StepConfigurationProxy) object).getConfiguration();
- configuration.getKeys().forEachRemaining(key -> map.put(key, translateObject(configuration.getProperty(key))));
- return invokeStepConfigurationCreationMethod(object, map);
+ return invokeStrategyCreationMethod(object, translateConfigurationToMap(((TraversalStrategyProxy) object).getConfiguration()));
+ } else if (object instanceof StepConfiguration) {
+ return invokeStepConfigurationCreationMethod(object, translateConfigurationToMap(((StepConfiguration) object).getConfiguration()));
+ } else if (object instanceof StepConfigurationProxy) {
+ return invokeStepConfigurationCreationMethod(object, translateConfigurationToMap(((StepConfigurationProxy) object).getConfiguration()));
} else if (object instanceof Map) {
final Map<Object, Object> map = object instanceof Tree ?
new Tree() :
@@ -166,6 +156,12 @@ public final class JavaTranslator<S extends TraversalSource, T extends Traversal
return object;
}
+ private Map<String,Object> translateConfigurationToMap(final Configuration conf) {
+ final Map<String, Object> map = new LinkedHashMap<>();
+ conf.getKeys().forEachRemaining(key -> map.put(key, translateObject(conf.getProperty(key))));
+ return map;
+ }
+
private Object invokeStrategyCreationMethod(final Object delegate, final Map<String, Object> map) {
final Class<?> strategyClass = ((TraversalStrategyProxy) delegate).getStrategyClass();
final Map<String, Method> methodCache = localMethodCache.computeIfAbsent(strategyClass, k -> {
@@ -198,7 +194,7 @@ public final class JavaTranslator<S extends TraversalSource, T extends Traversal
}
private Object invokeStepConfigurationCreationMethod(final Object delegate, final Map<String, Object> map) {
- final Class<?> stepConfigurationClass = delegate instanceof DefaultStepConfiguration ? delegate.getClass() : ((StepConfigurationProxy) delegate).getStepConfigurationClass();
+ final Class<?> stepConfigurationClass = delegate instanceof StepConfiguration ? delegate.getClass() : ((StepConfigurationProxy) delegate).getStepConfigurationClass();
final Map<String, Method> methodCache = localMethodCache.computeIfAbsent(stepConfigurationClass, k -> {
final Map<String, Method> cacheEntry = new HashMap<>();
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/02f583e0/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV1d0.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV1d0.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV1d0.java
index 9fdfd4e..ca7c241 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV1d0.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV1d0.java
@@ -18,14 +18,11 @@
*/
package org.apache.tinkerpop.gremlin.structure.io.gryo;
-import org.apache.commons.configuration.Configuration;
import org.apache.tinkerpop.gremlin.process.remote.traversal.DefaultRemoteTraverser;
import org.apache.tinkerpop.gremlin.process.traversal.Bytecode;
import org.apache.tinkerpop.gremlin.process.traversal.P;
import org.apache.tinkerpop.gremlin.process.traversal.Path;
-import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.TraversalSource;
-import org.apache.tinkerpop.gremlin.process.traversal.step.util.DefaultStepConfiguration;
import org.apache.tinkerpop.gremlin.process.traversal.util.AndP;
import org.apache.tinkerpop.gremlin.process.traversal.util.ConnectiveP;
import org.apache.tinkerpop.gremlin.process.traversal.util.OrP;
@@ -47,10 +44,7 @@ import org.apache.tinkerpop.gremlin.util.function.Lambda;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
import java.util.List;
-import java.util.Map;
/**
* This class holds serializers for graph-based objects such as vertices, edges, properties, and paths. These objects
@@ -287,30 +281,4 @@ public final class GryoSerializersV1d0 {
return new DefaultRemoteTraverser<>(o, input.readLong());
}
}
-
-// public final static class DefaultStepConfigurationSerializer implements SerializerShim<DefaultStepConfiguration> {
-// @Override
-// public <O extends OutputShim> void write(final KryoShim<?, O> kryo, final O output, final DefaultStepConfiguration stepConfig) {
-// final LinkedHashMap<String,List<Object>> m = new LinkedHashMap<>();
-// final Configuration conf = stepConfig.getConfiguration();
-// final Iterator<String> keys = conf.getKeys();
-// while (keys.hasNext()) {
-// final String key = keys.next();
-// final List<Object> args = new ArrayList<>();
-//
-// // gryo doesn't (for whatever reason that i can't remember) coerce traversals to bytecode so if a
-// // step configuration has a traversal it needs to be coerced here. not sure........
-// conf.getList(key).forEach(x -> args.add(x instanceof Traversal ? ((Traversal) x).asAdmin().getBytecode() : x));
-// m.put(key, args);
-// }
-//
-// kryo.writeObject(output, m);
-// }
-//
-// @Override
-// public <I extends InputShim> DefaultStepConfiguration read(final KryoShim<I, ?> kryo, final I input, final Class<DefaultStepConfiguration> clazz) {
-// final LinkedHashMap<String,List<Object>> m = kryo.readObject(input, LinkedHashMap.class);
-// return DefaultStepConfiguration.
-// }
-// }
}
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/02f583e0/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV3d0.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV3d0.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV3d0.java
index da91e42..955e5d0 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV3d0.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoSerializersV3d0.java
@@ -51,7 +51,6 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
-import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;