43
43
import com .google .gcloud .datastore .Query ;
44
44
import com .google .gcloud .datastore .Query .ResultType ;
45
45
import com .google .gcloud .datastore .QueryResults ;
46
+ import com .google .gcloud .datastore .ReadOption ;
46
47
import com .google .gcloud .datastore .StringValue ;
47
48
import com .google .gcloud .datastore .StructuredQuery ;
48
49
import com .google .gcloud .datastore .StructuredQuery .CompositeFilter ;
49
50
import com .google .gcloud .datastore .StructuredQuery .OrderBy ;
50
- import com .google .gcloud .datastore .StructuredQuery .Projection ;
51
51
import com .google .gcloud .datastore .StructuredQuery .PropertyFilter ;
52
52
import com .google .gcloud .datastore .Transaction ;
53
53
import com .google .gcloud .datastore .testing .LocalGcdHelper ;
@@ -373,7 +373,8 @@ private void setUpQueryTests() {
373
373
.set ("priority" , 4 )
374
374
.set ("created" , includedDate )
375
375
.set ("percent_complete" , 10.0 )
376
- .set ("description" , StringValue .builder ("Learn Cloud Datastore" ).indexed (false ).build ())
376
+ .set ("description" ,
377
+ StringValue .builder ("Learn Cloud Datastore" ).excludeFromIndexes (true ).build ())
377
378
.set ("tag" , "fun" , "l" , "programming" )
378
379
.build ());
379
380
}
@@ -512,7 +513,7 @@ public void testProjectionQuery() {
512
513
// [START projection_query]
513
514
Query <ProjectionEntity > query = Query .projectionEntityQueryBuilder ()
514
515
.kind ("Task" )
515
- .projection (Projection . property ( "priority" ), Projection . property ( "percent_complete" ) )
516
+ .projection ("priority" , "percent_complete" )
516
517
.build ();
517
518
// [END projection_query]
518
519
assertValidQuery (query );
@@ -523,7 +524,7 @@ public void testRunProjectionQuery() {
523
524
setUpQueryTests ();
524
525
Query <ProjectionEntity > query = Query .projectionEntityQueryBuilder ()
525
526
.kind ("Task" )
526
- .projection (Projection . property ( "priority" ), Projection . property ( "percent_complete" ) )
527
+ .projection ("priority" , "percent_complete" )
527
528
.build ();
528
529
// [START run_query_projection]
529
530
List <Long > priorities = new LinkedList <>();
@@ -565,8 +566,8 @@ public void testDistinctQuery() {
565
566
// [START distinct_query]
566
567
Query <ProjectionEntity > query = Query .projectionEntityQueryBuilder ()
567
568
.kind ("Task" )
568
- .projection (Projection . property ( "type" ), Projection . property ( "priority" ) )
569
- .groupBy ("type" , "priority" )
569
+ .projection ("type" , "priority" )
570
+ .distinctOn ("type" , "priority" )
570
571
.orderBy (OrderBy .asc ("type" ), OrderBy .asc ("priority" ))
571
572
.build ();
572
573
// [END distinct_query]
@@ -579,8 +580,8 @@ public void testDistinctOnQuery() {
579
580
// [START distinct_on_query]
580
581
Query <ProjectionEntity > query = Query .projectionEntityQueryBuilder ()
581
582
.kind ("Task" )
582
- .projection (Projection . property ( "type" ), Projection . first ( "priority" ) )
583
- .groupBy ("type" )
583
+ .projection ("type" , "priority" )
584
+ .distinctOn ("type" )
584
585
.orderBy (OrderBy .asc ("type" ), OrderBy .asc ("priority" ))
585
586
.build ();
586
587
// [END distinct_on_query]
@@ -726,9 +727,16 @@ private Cursor cursorPaging(int pageSize, Cursor pageCursor) {
726
727
727
728
@ Test
728
729
public void testEventualConsistentQuery () {
730
+ setUpQueryTests ();
729
731
// [START eventual_consistent_query]
730
- // Read consistency cannot be specified in gcloud-java.
732
+ Query <Entity > query = Query .entityQueryBuilder ()
733
+ .kind ("Task" )
734
+ .filter (PropertyFilter .hasAncestor (
735
+ datastore .newKeyFactory ().kind ("TaskList" ).newKey ("default" )))
736
+ .build ();
737
+ datastore .run (query , ReadOption .eventualConsistency ());
731
738
// [END eventual_consistent_query]
739
+ assertValidQuery (query );
732
740
}
733
741
734
742
@ Test
0 commit comments