/** * @see GraphTraversal#to(Direction, String...) */ public static GraphTraversal<Vertex, Vertex> to(final Direction direction, final String... edgeLabels) { return __.<Vertex>start().to(direction, edgeLabels); }
@Override public Traversal<Vertex, Vertex> get_g_VX1X_to_XOUT_knowsX(final Object v1Id) { return g.V(v1Id).to(Direction.OUT, "knows"); }
@Override public Traversal<Edge, Edge> get_g_addEXknowsX_fromXaX_toXbX_propertyXweight_0_1X(final Vertex a, final Vertex b) { return g.addE("knows").from(a).to(b).property("weight", 0.1d); }
@Override public Traversal<Vertex, Edge> get_g_withSideEffectXb_bX_VXaX_addEXknowsX_toXbX_propertyXweight_0_5X(final Vertex a, final Vertex b) { return g.withSideEffect("b", b).V(a).addE("knows").to("b").property("weight", 0.5d); }
@Override public Traversal<Vertex, Edge> get_g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX(final Object v1Id) { return g.V(v1Id).as("a").out("created").addE("createdBy").to("a"); }
@Override public Traversal<Vertex, Edge> get_g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX_propertyXweight_2X(final Object v1Id) { return g.V(v1Id).as("a").out("created").addE("createdBy").to("a").property("weight", 2.0d); }
@Test @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_EDGES) public void shouldNotTraverseV_In_addOutE() { assertTraversal(create().V().as("a").in().addE("test").to("a"), true); }
@Test @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_EDGES) public void shouldNotTraverseV_In_addEXOUTX() { assertTraversal(create().V().as("a").in().addE("test").to("a"), true); }
@Test @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_EDGES) public void shouldNotTraverseV_out_addOutE() { assertTraversal(create().V().as("a").out().addE("test").to("a"), true); }
@Override public Traversal<Vertex, Path> get_g_V_asXaX_out_asXbX_out_asXcX_path_fromXbX_toXcX_byXnameX() { return g.V().as("a").out().as("b").out().as("c").path().from("b").to("c").by("name"); } }
@Benchmark public Edge testAddE() { return g.V(a).as("a").V(b).as("b").addE("knows").from("a").to("b").next(); }
@Override public Traversal<Vertex, Path> get_g_VX1X_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_cyclicPath_fromXaX_toXbX_path(final Object v1Id) { return g.V(v1Id).as("a").out("created").as("b").in("created").as("c").cyclicPath().from("a").to("b").path(); } }
@Override public Traversal<Vertex, Edge> get_g_V_hasXname_markoX_asXaX_outEXcreatedX_asXbX_inV_addEXselectXbX_labelX_toXaX() { return g.V().has("name", "marko").as("a").outE("created").as("b").inV().addE(select("b").label()).to("a"); }
@Test @FeatureRequirementSet(FeatureRequirementSet.Package.SIMPLE) public void shouldGenerateDefaultIdOnAddEWithGeneratedId() throws Exception { final ElementIdStrategy strategy = ElementIdStrategy.build().create(); final GraphTraversalSource sg = create(strategy); final Vertex v = sg.addV().next(); final Edge e = sg.withSideEffect("v", v).V(v).addE("self").to("v").property("test", "value").next(); assertEquals("value", e.value("test")); assertNotNull(UUID.fromString(sg.E(e).id().next().toString())); }
@Override public Traversal<Vertex, Path> get_g_V_asXaX_out_asXbX_out_asXcX_simplePath_byXlabelX_fromXbX_toXcX_path_byXnameX() { return g.V().as("a").out().as("b").out().as("c").simplePath().by(T.label).from("b").to("c").path().by("name"); } }
@Override public Traversal<Edge, Edge> get_g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_descX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX() { return g.addE(V().outE().label().groupCount().order(local).by(values, desc).select(keys).<String>unfold().limit(1)).from(V().has("name", "vadas")).to(V().has("name", "lop")); } }
@Test @FeatureRequirementSet(FeatureRequirementSet.Package.SIMPLE) public void shouldGenerateDefaultIdOnAddEWithSpecifiedId() throws Exception { final ElementIdStrategy strategy = ElementIdStrategy.build().create(); final GraphTraversalSource sg = create(strategy); final Vertex v = sg.addV().next(); final Edge e = sg.withSideEffect("v", v).V(v).addE("self").to("v").property("test", "value").property(T.id, "some-id").next(); assertEquals("value", e.value("test")); assertEquals("some-id", sg.E(e).id().next()); assertEquals("some-id", sg.E("some-id").id().next()); }
@Test @FeatureRequirementSet(FeatureRequirementSet.Package.SIMPLE) public void shouldSetIdOnAddEWithIdPropertyKeySpecifiedAndNameSuppliedAsProperty() throws Exception { final ElementIdStrategy strategy = ElementIdStrategy.build().idPropertyKey("name").create(); final GraphTraversalSource sg = create(strategy); final Vertex v = sg.addV().next(); final Edge e = sg.withSideEffect("v", v).V(v).addE("self").to("v").property("test", "value").property(T.id, "some-id").next(); assertEquals("value", e.value("test")); assertEquals("some-id", e.value("name")); assertEquals("some-id", sg.E(e).id().next()); assertEquals("some-id", sg.E("some-id").id().next()); }
@Test @FeatureRequirementSet(FeatureRequirementSet.Package.SIMPLE) public void shouldSetIdOnAddEWithNamePropertyKeySpecifiedAndNameSuppliedAsProperty() throws Exception { final ElementIdStrategy strategy = ElementIdStrategy.build().idPropertyKey("name").create(); final GraphTraversalSource sg = create(strategy); final Vertex v = sg.addV().next(); final Edge e = sg.withSideEffect("v", v).V(v).addE("self").to("v").property("test", "value").property("name", "some-id").next(); assertEquals("value", e.value("test")); assertEquals("some-id", e.value("name")); assertEquals("some-id", sg.E(e).id().next()); assertEquals("some-id", sg.E("some-id").id().next()); }