@Override public QueryResultIterable<Key<T>> fetchKeys() { FetchOptions opts = this.fetchOptions(); return new ToKeyIterable(this.prepareKeysOnly().asQueryResultIterable(opts)); }
@Override public QueryResultIterable<T> fetch() { FetchOptions opts = this.fetchOptions(); return new ToObjectIterable(this.prepare().asQueryResultIterable(opts)); }
@Override public Pair<? extends Iterable<JobRecord>, String> call() { QueryResultIterator<Entity> entities = preparedQuery.asQueryResultIterable(fetchOptions).iterator(); Cursor dsCursor = null; List<JobRecord> roots = new LinkedList<>(); while (entities.hasNext()) { if (limit > 0 && roots.size() >= limit) { dsCursor = entities.getCursor(); break; } JobRecord jobRecord = new JobRecord(entities.next()); roots.add(jobRecord); } return Pair.of(roots, dsCursor == null ? null : dsCursor.toWebSafeString()); } });
public Entity fetchResult(PreparedQuery preparedQuery) { return preparedQuery.asQueryResultIterable().iterator().next(); } });
private QueryResultIterable<Entity> executeQueryForIterable(FetchOptions fetchOptions) { Query query = new Query("Foo").addSort("bar"); return service.prepare(query).asQueryResultIterable(fetchOptions); }
entityIterable = entities; } else { entityIterable = preparedQuery.asQueryResultIterable(opts); entityIterable = preparedQuery.asQueryResultIterable();
@Test public void testAsQueryResultIterable() throws Exception { QueryResultIterable<Entity> iterable = preparedQuery.asQueryResultIterable(); assertNotNull(iterable); assertNotNull(iterable.iterator()); assertTrue(iterable.iterator().hasNext()); assertEquals(john, iterable.iterator().next()); }
@Test public void testAsQueryResultIterableWithOptions() throws Exception { QueryResultIterable<Entity> iterable = preparedQuery.asQueryResultIterable(withDefaults()); assertNotNull(iterable); assertNotNull(iterable.iterator()); assertTrue(iterable.iterator().hasNext()); assertEquals(john, iterable.iterator().next()); }
@Test public void testQueriesWithDifferentAncestorsInsideSameTransactionNoUsage() { Transaction tx = service.beginTransaction(); try { Key a1 = KeyFactory.createKey("ancestor", "1"); prepareQueryWithAncestor(tx, a1).asIterator(); Key a2 = KeyFactory.createKey("ancestor", "2"); prepareQueryWithAncestor(tx, a2).asList(FetchOptions.Builder.withDefaults()); Key a3 = KeyFactory.createKey("ancestor", "3"); prepareQueryWithAncestor(tx, a3).asIterable(); Key a4 = KeyFactory.createKey("ancestor", "4"); prepareQueryWithAncestor(tx, a4).asQueryResultIterable(); Key a5 = KeyFactory.createKey("ancestor", "5"); prepareQueryWithAncestor(tx, a5).asQueryResultIterator(); Key a6 = KeyFactory.createKey("ancestor", "6"); prepareQueryWithAncestor(tx, a6).asQueryResultList(FetchOptions.Builder.withDefaults()); } finally { tx.rollback(); } }