Skip to content

Instantly share code, notes, and snippets.

View okram's full-sized avatar
🏠
Working from home

Marko A. Rodriguez okram

🏠
Working from home
View GitHub Profile
public static String unHide(final String key) {
return key.startsWith(Graph.HIDDEN_PREFIX) ? key.substring(Graph.HIDDEN_PREFIX.length()) : key;
}
~/software/tinkerpop/tinkerpop3$ bin/gremlin.sh
\,,,/
(o o)
-----oOOo-(3)-oOOo-----
gremlin> :use install com.tinkerpop giraph-gremlin 3.0.0-SNAPSHOT
==>loaded: [com.tinkerpop, giraph-gremlin, 3.0.0-SNAPSHOT] - restart the console to use [giraph]
gremlin> :q
~/software/tinkerpop/tinkerpop3$ bin/gremlin.sh
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
*/
public class GremlinGroovySSupplier<A> implements SSupplier<A> {
private final String groovyScript;
private final GremlinGroovyScriptEngine engine = new GremlinGroovyScriptEngine();
public GremlinGroovySSupplier(final String groovyScript) {
this.groovyScript = groovyScript;
@Test
public void shouldSerialize() throws Exception {
SSupplier<Traversal> traversalSSupplier = new GremlinGroovySSupplier<>("TinkerFactory.createClassic().V.out.name");
byte[] bytes = Serializer.serializeObject(traversalSSupplier);
traversalSSupplier = (SSupplier<Traversal>) Serializer.deserializeObject(bytes);
Traversal traversal = traversalSSupplier.get();
assertEquals(TinkerGraphStep.class, traversal.getSteps().get(0).getClass());
assertEquals(VertexStep.class, traversal.getSteps().get(1).getClass());
assertEquals(ElementValueStep.class, traversal.getSteps().get(2).getClass());
assertEquals(traversal.getSteps().size(), 3);
$ bin/gremlin.sh
\,,,/
(o o)
-----oOOo-(3)-oOOo-----
gremlin> :use install com.tinkerpop giraph-gremlin 3.0.0-SNAPSHOT
==>loaded: [com.tinkerpop, giraph-gremlin, 3.0.0-SNAPSHOT] - restart the console to use [giraph]
gremlin> :q
$ bin/gremlin.sh
$ bin/gremlin.sh
\,,,/
(o o)
-----oOOo-(3)-oOOo-----
gremlin> :use install com.tinkerpop giraph-gremlin 3.0.0-SNAPSHOT
==>loaded: [com.tinkerpop, giraph-gremlin, 3.0.0-SNAPSHOT] - restart the console to use [giraph]
gremlin> :q
$ bin/gremlin.sh
\,,,/
(o o)
─────oOOo-( )-oOOo───3
public class GiraphGremlinGraphProvider extends AbstractGraphProvider {
@Override
public Map<String, Object> getBaseConfiguration(final String graphName) {
return new HashMap<String, Object>() {{
put("gremlin.graph", GiraphGraph.class.getName());
put("giraph.vertexInputFormatClass", "com.tinkerpop.gremlin.giraph.structure.io.kryo.KryoVertexInputFormat");
put("giraph.vertexOutputFormatClass", "com.tinkerpop.gremlin.giraph.structure.io.kryo.KryoVertexOutputFormat");
put("giraph.minWorkers", "1");
put("giraph.maxWorkers", "1");
$ bin/gremlin.sh
\,,,/
(o o)
─────oOOo─(3)─oOOo─────
gremlin> :use install com.tinkerpop giraph-gremlin 3.0.0-SNAPSHOT
==>loaded: [com.tinkerpop, giraph-gremlin, 3.0.0-SNAPSHOT] - restart the console to use [giraph]
gremlin> :q
$ bin/gremlin.sh
gremlin> g
==>giraphgraph[kryovertexinputformat->kryovertexoutputformat]
gremlin> g.V.out.name
==>lop
==>ripple
==>lop
==>lop