/** * @see GraphTraversal#range(long, long) */ public static <A> GraphTraversal<A, A> range(final long low, final long high) { return __.<A>start().range(low, high); }
/** * @see GraphTraversal#range(Scope, long, long) */ public static <A> GraphTraversal<A, A> range(final Scope scope, final long low, final long high) { return __.<A>start().range(scope, low, high); }
@Override public Traversal<Vertex, Vertex> get_g_VX1X_outXcreatedX_inXcreatedX_rangeX1_3X(final Object v1Id) { return g.V(v1Id).out("created").in("created").range(1, 3); }
@Override public Traversal<Vertex, Vertex> get_g_VX1X_outXknowsX_outXcreatedX_rangeX0_1X(final Object v1Id) { return g.V(v1Id).out("knows").out("created").range(0, 1); }
@Override public Traversal<Vertex, Vertex> get_g_VX1X_outXcreatedX_inEXcreatedX_rangeX1_3X_outV(final Object v1Id) { return g.V(v1Id).out("created").inE("created").range(1, 3).outV(); }
@Override public Traversal<Vertex, Vertex> get_g_V_repeatXbothX_timesX3X_rangeX5_11X() { return g.V().repeat(both()).times(3).range(5, 11); }
@Override public Traversal<Vertex, Vertex> get_g_VX1X_outXknowsX_outEXcreatedX_rangeX0_1X_inV(final Object v1Id) { return g.V(v1Id).out("knows").outE("created").range(0, 1).inV(); }
@Test public void testQueryAllWithOffset() { HugeGraph graph = graph(); init10Vertices(); List<Vertex> vertexes = graph.traversal().V().range(8, 100).toList(); Assert.assertEquals(2, vertexes.size()); List<Vertex> vertexes2 = graph.traversal().V().range(8, -1).toList(); Assert.assertEquals(vertexes, vertexes2); }
@Override public Traversal<Vertex, String> get_g_V_localXpropertiesXlocationX_order_byXvalueX_limitX2XX_value() { return g.V().local(properties("location").order().by(T.value, Order.asc).range(0, 2)).value(); }
@Override public Traversal<Vertex, String> get_g_V_hasLabelXsongX_order_byXperformances_descX_byXnameX_rangeX110_120X_name() { return g.V().hasLabel("song").order().by("performances", Order.desc).by("name").range(110, 120).values("name"); }
assertNumStep(numV, 1, gts.V(sv[0]).out("knows"), TitanVertexStep.class); assertNumStep(10, 1, gts.V(sv[0]).local(__.outE("knows").limit(10)), TitanVertexStep.class); assertNumStep(10, 1, gts.V(sv[0]).local(__.outE("knows").range(10, 20)), LocalStep.class); assertNumStep(numV, 2, gts.V(sv[0]).outE("knows").order().by("weight", decr), TitanVertexStep.class, OrderGlobalStep.class); assertNumStep(10, 1, gts.V(sv[0]).local(__.outE("knows").order().by("weight", decr).limit(10)), TitanVertexStep.class); assertNumStep(numV / 5, 2, gts.V(sv[0]).outE("knows").has("weight", 1).order().by("weight", incr), TitanVertexStep.class, OrderGlobalStep.class); assertNumStep(10, 1, gts.V(sv[0]).local(__.outE("knows").has("weight", 1).order().by("weight", incr).limit(10)), TitanVertexStep.class); assertNumStep(5, 1, gts.V(sv[0]).local(__.outE("knows").has("weight", 1).has("weight", 1).order().by("weight", incr).range(10, 15)), LocalStep.class); assertNumStep(1, 1, gts.V(sv[0]).outE("knows").filter(__.inV().is(vs[50])), TitanVertexStep.class); assertNumStep(1, 1, gts.V(sv[0]).outE("knows").filter(__.otherV().is(vs[50])), TitanVertexStep.class); assertNumStep(1, 1, gts.V().has("id", numV / 5).has("weight", (numV / 5) % 5), TitanGraphStep.class); assertNumStep(numV / 5, 1, gts.V().has("weight", 1), TitanGraphStep.class); assertNumStep(10, 1, gts.V().has("weight", 1).range(0, 10), TitanGraphStep.class);
@Override public Traversal<Vertex, Map<String, String>> get_g_V_asXaX_out_asXbX_out_asXcX_selectXa_b_cX_byXnameX_rangeXlocal_1_3X() { return g.V().as("a").out().as("b").out().as("c").<Map<String, String>>select("a", "b", "c").by("name").range(local, 1, 3); }
assertTraversal(g.V().or(__.has("name", "Totoro"), __.has("length", P.lte(120))).order().by(ORDER_AGE_INCR).range(2, 3), john); assertTraversal(g.V().or(__.has("name", "Totoro"), __.has("length", P.lte(130)).order().by(ORDER_LENGTH_INCR).range(1, 2)), totoro, john); assertTraversal(g.V().or(__.has("name", "Totoro"), __.has("length", P.lte(130)).order().by(ORDER_LENGTH_INCR).range(1, 3)).limit(2), totoro, john);
@Test public void testQueryEdgeByPageWithOffset() { Assume.assumeTrue("Not support paging", storeFeatures().supportsQueryByPage()); HugeGraph graph = graph(); init100LookEdges(); Assert.assertThrows(IllegalStateException.class, () -> { graph.traversal().E() .has("~page", "").range(2, 10) .toList(); }); }
@Test public void testQueryByPageWithOffset() { Assume.assumeTrue("Not support paging", storeFeatures().supportsQueryByPage()); HugeGraph graph = graph(); init100Books(); Assert.assertThrows(IllegalStateException.class, () -> { graph.traversal().V() .has("~page", "").range(2, 10) .toList(); }); }
@Override public Traversal<Vertex, String> get_g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_rangeXlocal_1_2X() { return g.V().as("a").out().as("a").out().as("a").<List<String>>select(Pop.mixed, "a").by(unfold().values("name").fold()).range(local, 1, 2); }
@Override public Traversal<Vertex, String> get_g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_rangeXlocal_4_5X() { return g.V().as("a").out().as("a").out().as("a").<List<String>>select(Pop.mixed, "a").by(unfold().values("name").fold()).range(local, 4, 5); }
@Override public Traversal<Vertex, List<String>> get_g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_rangeXlocal_1_3X() { return g.V().as("a").out().as("a").out().as("a").<List<String>>select(Pop.mixed, "a").by(unfold().values("name").fold()).range(local, 1, 3); }
assertNumStep(numV, 1, gts.V(sv[0]).out("knows"), JanusGraphVertexStep.class); assertNumStep(10, 1, gts.V(sv[0]).local(__.outE("knows").limit(10)), JanusGraphVertexStep.class); assertNumStep(10, 1, gts.V(sv[0]).local(__.outE("knows").range(10, 20)), LocalStep.class); assertNumStep(numV, 2, gts.V(sv[0]).outE("knows").order().by("weight", decr), JanusGraphVertexStep.class, OrderGlobalStep.class); assertNumStep(5, 1, gts.V(sv[0]).local(__.outE("knows").has("weight", 1).has("weight", 1).order().by("weight", incr).range(10, 15)), LocalStep.class); assertNumStep(1, 1, gts.V(sv[0]).outE("knows").filter(__.inV().is(vs[50])), JanusGraphVertexStep.class); assertNumStep(1, 1, gts.V(sv[0]).outE("knows").filter(__.otherV().is(vs[50])), JanusGraphVertexStep.class); assertNumStep(1, 1, gts.V().has("id", numV / 5).has("weight", (numV / 5) % 5), JanusGraphStep.class); assertNumStep(numV / 5, 1, gts.V().has("weight", 1), JanusGraphStep.class); assertNumStep(10, 1, gts.V().has("weight", 1).range(0, 10), JanusGraphStep.class);