@Override public void apply(final Traversal.Admin<?, ?> traversal) { if (TraversalHelper.hasStepOfAssignableClass(ConnectiveStep.class, traversal)) { processConnectiveMarker(traversal); } }
@Override public void addGlobalChildOption(final M pickToken, final Traversal.Admin<S, E> traversalOption) { final Object pickTokenKey = PickTokenKey.make(pickToken); if (this.traversalOptions.containsKey(pickTokenKey)) this.traversalOptions.get(pickTokenKey).add(traversalOption); else this.traversalOptions.put(pickTokenKey, new ArrayList<>(Collections.singletonList(traversalOption))); // adding an IdentityStep acts as a placeholder when reducing barriers get in the way - see the // standardAlgorithm() method for more information. if (TraversalHelper.hasStepOfAssignableClass(ReducingBarrierStep.class, traversalOption)) traversalOption.addStep(0, new IdentityStep(traversalOption)); traversalOption.addStep(new EndStep(traversalOption)); if (!this.hasBarrier && !TraversalHelper.getStepsOfAssignableClassRecursively(Barrier.class, traversalOption).isEmpty()) this.hasBarrier = true; this.integrateChild(traversalOption); }
public static boolean isLocalProperties(final Traversal.Admin<?, ?> traversal) { for (final Step step : traversal.getSteps()) { if (step instanceof RepeatStep) { for (final Traversal.Admin<?, ?> global : ((RepeatStep<?>) step).getGlobalChildren()) { if (TraversalHelper.hasStepOfAssignableClass(VertexStep.class, global)) return false; } } else if (step instanceof VertexStep) { return false; } else if (step instanceof EdgeVertexStep) { return false; } else if (step instanceof TraversalParent) { for (final Traversal.Admin<?, ?> local : ((TraversalParent) step).getLocalChildren()) { if (!TraversalHelper.isLocalProperties(local)) return false; } } } return true; }
if (TraversalHelper.onGraphComputer(traversal) || traversal.getTraverserRequirements().contains(TraverserRequirement.PATH) || (IS_TESTING && ((TraversalHelper.hasStepOfAssignableClass(ProfileStep.class, TraversalHelper.getRootTraversal(traversal)) || TraversalHelper.hasStepOfAssignableClass(ProfileSideEffectStep.class, TraversalHelper.getRootTraversal(traversal)))))) // necessary cause ProfileTest analyzes counts return;
public static boolean mayOptimize(final Traversal.Admin<?, ?> traversal) { return !TraversalHelper.hasStepOfAssignableClass(InjectStep.class, traversal); } }
public static boolean mayOptimize(final Traversal.Admin<?, ?> traversal) { return !TraversalHelper.hasStepOfAssignableClass(InjectStep.class, traversal); } }
@SuppressWarnings("unchecked") public SqlgGraphStep(final SqlgGraph sqlgGraph, final Traversal.Admin traversal, final Class<E> returnClass, final boolean isStart, final Object... ids) { super(traversal, returnClass, isStart, ids); this.sqlgGraph = sqlgGraph; this.requiresSack = TraversalHelper.hasStepOfAssignableClass(SackStep.class, traversal); this.requiresOneBulk = SqlgTraversalUtil.hasOneBulkRequirement(traversal); }
@SuppressWarnings("unchecked") public SqlgGraphStep(final SqlgGraph sqlgGraph, final Traversal.Admin traversal, final Class<E> returnClass, final boolean isStart, final Object... ids) { super(traversal, returnClass, isStart, ids); this.sqlgGraph = sqlgGraph; this.requiresSack = TraversalHelper.hasStepOfAssignableClass(SackStep.class, traversal); this.requiresOneBulk = SqlgTraversalUtil.hasOneBulkRequirement(traversal); }
@Override public void apply(final Traversal.Admin<?, ?> traversal) { if (TraversalHelper.hasStepOfAssignableClass(ConnectiveStep.class, traversal)) { processConnectiveMarker(traversal); } }
@Override public void addGlobalChildOption(final M pickToken, final Traversal.Admin<S, E> traversalOption) { final Object pickTokenKey = PickTokenKey.make(pickToken); if (this.traversalOptions.containsKey(pickTokenKey)) this.traversalOptions.get(pickTokenKey).add(traversalOption); else this.traversalOptions.put(pickTokenKey, new ArrayList<>(Collections.singletonList(traversalOption))); // adding an IdentityStep acts as a placeholder when reducing barriers get in the way - see the // standardAlgorithm() method for more information. if (TraversalHelper.hasStepOfAssignableClass(ReducingBarrierStep.class, traversalOption)) traversalOption.addStep(0, new IdentityStep(traversalOption)); traversalOption.addStep(new EndStep(traversalOption)); if (!this.hasBarrier && !TraversalHelper.getStepsOfAssignableClassRecursively(Barrier.class, traversalOption).isEmpty()) this.hasBarrier = true; this.integrateChild(traversalOption); }
public static boolean isLocalProperties(final Traversal.Admin<?, ?> traversal) { for (final Step step : traversal.getSteps()) { if (step instanceof RepeatStep) { for (final Traversal.Admin<?, ?> global : ((RepeatStep<?>) step).getGlobalChildren()) { if (TraversalHelper.hasStepOfAssignableClass(VertexStep.class, global)) return false; } } else if (step instanceof VertexStep) { return false; } else if (step instanceof EdgeVertexStep) { return false; } else if (step instanceof TraversalParent) { for (final Traversal.Admin<?, ?> local : ((TraversalParent) step).getLocalChildren()) { if (!TraversalHelper.isLocalProperties(local)) return false; } } } return true; }
if (TraversalHelper.onGraphComputer(traversal) || traversal.getTraverserRequirements().contains(TraverserRequirement.PATH) || (IS_TESTING && ((TraversalHelper.hasStepOfAssignableClass(ProfileStep.class, TraversalHelper.getRootTraversal(traversal)) || TraversalHelper.hasStepOfAssignableClass(ProfileSideEffectStep.class, TraversalHelper.getRootTraversal(traversal)))))) // necessary cause ProfileTest analyzes counts return;
if (vertexStep.returnsEdge()) PredicatesUtil.collectPredicates(uniGraphVertexStep, child); else if (TraversalHelper.hasStepOfAssignableClass(TraversalParent.class, child)){ TraversalHelper.getStepsOfAssignableClass(TraversalParent.class, child).forEach(traversalParent1 -> { traversalParent.getLocalChildren().forEach(child1 -> {