@Override public void reset() { super.reset(); this.previousIterator = EmptyIterator.instance(); }
@Override public ComputerAwareStep<S, E> clone() { final ComputerAwareStep<S, E> clone = (ComputerAwareStep<S, E>) super.clone(); clone.previousIterator = EmptyIterator.instance(); return clone; }
@Override public ComputerResultStep<S> clone() { final ComputerResultStep<S> clone = (ComputerResultStep<S>) super.clone(); clone.currentIterator = EmptyIterator.instance(); return clone; } }
@Override public void reset() { super.reset(); this.head = null; this.done = false; this.iterator = EmptyIterator.instance(); }
@Override public void reset() { super.reset(); closeIterator(); this.iterator = EmptyIterator.instance(); }
@Override protected Traverser.Admin<E> processNextStart() { while (true) { if (this.iterator.hasNext()) { return this.isStart ? this.getTraversal().getTraverserGenerator().generate(this.iterator.next(), (Step) this, 1l) : this.head.split(this.iterator.next(), this); } else { if (this.isStart) { if (this.done) throw FastNoSuchElementException.instance(); else { this.done = true; this.iterator = null == this.iteratorSupplier ? EmptyIterator.instance() : this.iteratorSupplier.get(); } } else { this.head = this.starts.next(); this.iterator = null == this.iteratorSupplier ? EmptyIterator.instance() : this.iteratorSupplier.get(); } } } }
@Override protected Traverser.Admin<S> processNextStart() throws NoSuchElementException { while (true) { if (this.currentIterator.hasNext()) return this.currentIterator.next(); else { final ComputerResult result = this.starts.next().get(); this.currentIterator = attach(result.memory().exists(TraversalVertexProgram.HALTED_TRAVERSERS) ? result.memory().<TraverserSet<S>>get(TraversalVertexProgram.HALTED_TRAVERSERS).iterator() : EmptyIterator.instance(), result.graph()); } } }
@Override protected Iterator<E> flatMap(final Traverser.Admin<S> traverser) { final Traverser.Admin<S> innerTraverser = traverser.clone().asAdmin(); innerTraverser.setBulk(1L); for (final Traversal.Admin<S, E> coalesceTraversal : this.coalesceTraversals) { coalesceTraversal.reset(); coalesceTraversal.addStart(innerTraverser.split()); if (coalesceTraversal.hasNext()) return coalesceTraversal; } return EmptyIterator.instance(); }
@Override public Iterator<Edge> search(SearchVertexQuery uniQuery) { return EmptyIterator.instance(); }
@Override public void reset() { super.reset(); this.results = EmptyIterator.instance(); }
@Override public ComputerAwareStep<S, E> clone() { final ComputerAwareStep<S, E> clone = (ComputerAwareStep<S, E>) super.clone(); clone.previousIterator = EmptyIterator.instance(); return clone; }
@Override public void reset() { super.reset(); this.previousIterator = EmptyIterator.instance(); }
@Override public SqlgComputerAwareStep<S, E> clone() { final SqlgComputerAwareStep<S, E> clone = (SqlgComputerAwareStep<S, E>) super.clone(); clone.previousIterator = EmptyIterator.instance(); return clone; }
@Override public ComputerResultStep<S> clone() { final ComputerResultStep<S> clone = (ComputerResultStep<S>) super.clone(); clone.currentIterator = EmptyIterator.instance(); return clone; } }
@Override public void reset() { super.reset(); this.head = null; this.done = false; this.iterator = EmptyIterator.instance(); }
@Override public void reset() { super.reset(); this.results = EmptyIterator.instance(); }
@Override public SqlgComputerAwareStep<S, E> clone() { final SqlgComputerAwareStep<S, E> clone = (SqlgComputerAwareStep<S, E>) super.clone(); clone.previousIterator = EmptyIterator.instance(); return clone; }
private <E extends Element, S extends RestSchema<E>> Iterator<E> search(UniQuery query, Map<S, BaseRequest> schemas, RestCollector<S, BaseRequest, E> collector) { if (schemas.size() == 0) return EmptyIterator.instance(); logger.debug("Preparing search. Schemas: {}", schemas); List<HttpResponse<JsonNode>> results = schemas.values().stream().map(request -> { try { return request.asJson(); } catch (UnirestException e) { throw new RuntimeException("request: " + request.toString() + " unsuccessful"); } }).collect(Collectors.toList()); Iterator<S> schemaIterator = schemas.keySet().iterator(); return results.stream().flatMap(result -> collector.parse.apply(schemaIterator.next(), result).stream()).iterator(); }
@Override public void reset() { super.reset(); closeIterator(); this.iterator = EmptyIterator.instance(); }
@SuppressWarnings("unchecked") protected <E extends Element, R> Iterator<R> search(UniQuery query, Map<JdbcSchema<E>, Select> selects, SelectCollector<JdbcSchema<E>, Select, R> collector) { if (bulk.size() != 0) { contextManager.batch(bulk); bulk.clear(); } MetricsRunner metrics = new MetricsRunner(this, query, selects.keySet().stream().map(s -> ((ElementSchema) s)).collect(Collectors.toList())); logger.info("mapped schemas for search, schemas: {}", selects); if (selects.size() == 0) return EmptyIterator.instance(); Iterator<JdbcSchema<E>> schemaIterator = selects.keySet().iterator(); Set<R> collect = selects.values().stream() .map(select -> this.getContextManager().fetch(select)) .flatMap(res -> collector.parse.apply(schemaIterator.next(), res).stream()) .collect(Collectors.toSet()); metrics.stop((children) -> fillChildren(children, selects)); logger.info("results: {}", collect); return collect.iterator(); }