@Override public long getTotalHits() { return iterable.getTotalHits(); } }
@Override public <TResult extends AggregationResult> TResult getAggregationResult(String name, Class<? extends TResult> resultType) { return iterable.getAggregationResult(name, resultType); } }
private Vertex findExistingVertexWithHash(String hash, Authorizations authorizations) { Iterator<Vertex> existingVertices = this.graph.query(authorizations) .has(VisalloProperties.CONTENT_HASH.getPropertyName(), hash) .vertices() .iterator(); if (existingVertices.hasNext()) { return existingVertices.next(); } return null; }
@Override public void close() throws Exception { this.searchResults.close(); }
/** * Create a {@link java.util.stream.Stream} containing the results of executing the queries, in order. The results * are not loaded into memory first. */ public static Stream<Element> stream(Query... queries) { return Arrays.stream(queries) .map(query -> StreamSupport.stream(query.elements().spliterator(), false)) .reduce(Stream::concat) .orElseGet(Stream::empty); }
@Override public void close() throws IOException { iterable.close(); }
/** * Create a {@link java.util.stream.Stream} containing the results of executing the queries, in order. The results * are not loaded into memory first. */ public static Stream<Element> stream(Query... queries) { return Arrays.stream(queries) .map(query -> StreamSupport.stream(query.elements().spliterator(), false)) .reduce(Stream::concat) .orElseGet(Stream::empty); }
@Override public long getTotalHits() { return iterable.getTotalHits(); } }
@Override public <TResult extends AggregationResult> TResult getAggregationResult(String name, Class<? extends TResult> resultType) { return iterable.getAggregationResult(name, resultType); } }
@Override public Iterator<T> iterator() { init(); if (response == null) { return new ArrayList<T>().iterator(); } Iterator<T> it; if (firstCall) { it = firstIterable.iterator(); firstCall = false; } else { response = getInitialSearchResponse(); it = searchResponseToIterable(response).iterator(); } String scrollId = response.getScrollId(); return new InfiniteIterator(scrollId, it); }
@Override public void close() throws IOException { iterable.close(); }
/** * Create a {@link java.util.stream.Stream} containing the results of executing the queries, in order. The results * are not loaded into memory first. */ public static Stream<Element> stream(Query... queries) { return Arrays.stream(queries) .map(query -> StreamSupport.stream(query.elements().spliterator(), false)) .reduce(Stream::concat) .orElseGet(Stream::empty); }
@Override public long getTotalHits() { return iterable.getTotalHits(); }
@Override public <TResult extends AggregationResult> TResult getAggregationResult(String name, Class<? extends TResult> resultType) { return iterable.getAggregationResult(name, resultType); } }
@Override public Iterator<T> iterator() { init(); if (response == null) { return new ArrayList<T>().iterator(); } Iterator<T> it; if (firstCall) { it = firstIterable.iterator(); firstCall = false; } else { response = getInitialSearchResponse(); it = searchResponseToIterable(response).iterator(); } String scrollId = response.getScrollId(); return new InfiniteIterator(scrollId, it); }
@Test public void testClosingIterables() throws IOException { graph.prepareVertex("v1", VISIBILITY_A) .addPropertyValue("k1", "name", "joe", VISIBILITY_A) .save(AUTHORIZATIONS_A); graph.prepareVertex("v2", VISIBILITY_A) .addPropertyValue("k1", "name", "matt", VISIBILITY_A) .save(AUTHORIZATIONS_A); graph.flush(); // Ensure that closing doesn't cause an error if we haven't iterated yet Iterable<Vertex> vertices1 = graph.getVertices(AUTHORIZATIONS_A); if (vertices1 instanceof Closeable) { ((Closeable) vertices1).close(); } // Ensure that closing doesn't cause an error if the iterable was fully traversed vertices1 = graph.getVertices(AUTHORIZATIONS_A); toList(vertices1); if (vertices1 instanceof Closeable) { ((Closeable) vertices1).close(); } // Ensure that closing query results doesn't cause an error if we haven't iterated yet QueryResultsIterable<Vertex> queryResults = graph.query(AUTHORIZATIONS_A).hasId("v1").vertices(); queryResults.close(); // Ensure that closing query results doesn't cause an error if the iterable was fully traversed queryResults = graph.query(AUTHORIZATIONS_A).hasId("v1").vertices(); toList(queryResults); queryResults.close(); }
@Override public long getTotalHits() { return iterable.getTotalHits(); }
@Override public <TResult extends AggregationResult> TResult getAggregationResult(String name, Class<? extends TResult> resultType) { return iterable.getAggregationResult(name, resultType); } }
@Override public Iterator<T> iterator() { init(); if (firstResponse == null) { return new ArrayList<T>().iterator(); } SearchResponse response; Iterator<T> it; if (firstCall) { response = firstResponse; it = firstIterable.iterator(); firstCall = false; } else { response = getInitialSearchResponse(); it = searchResponseToIterable(response).iterator(); } String scrollId = response.getScrollId(); return new InfiniteIterator(scrollId, it); }
@Test public void testClosingIterables() throws IOException { graph.prepareVertex("v1", VISIBILITY_A) .addPropertyValue("k1", "name", "joe", VISIBILITY_A) .save(AUTHORIZATIONS_A); graph.prepareVertex("v2", VISIBILITY_A) .addPropertyValue("k1", "name", "matt", VISIBILITY_A) .save(AUTHORIZATIONS_A); graph.flush(); // Ensure that closing doesn't cause an error if we haven't iterated yet Iterable<Vertex> vertices1 = graph.getVertices(AUTHORIZATIONS_A); if (vertices1 instanceof Closeable) { ((Closeable) vertices1).close(); } // Ensure that closing doesn't cause an error if the iterable was fully traversed vertices1 = graph.getVertices(AUTHORIZATIONS_A); toList(vertices1); if (vertices1 instanceof Closeable) { ((Closeable) vertices1).close(); } // Ensure that closing query results doesn't cause an error if we haven't iterated yet QueryResultsIterable<Vertex> queryResults = graph.query(AUTHORIZATIONS_A).hasId("v1").vertices(); queryResults.close(); // Ensure that closing query results doesn't cause an error if the iterable was fully traversed queryResults = graph.query(AUTHORIZATIONS_A).hasId("v1").vertices(); toList(queryResults); queryResults.close(); }