/** * The Builder api is programmer-hostile */ public static void addProjection(final ProjectionEntityQuery.Builder builder, final List<String> projection) { if (!projection.isEmpty()) { builder.addProjection(projection.get(0), projection.subList(1, projection.size()).toArray(new String[projection.size() - 1])); } }
Query<ProjectionEntity> scKeyProjectionQuery = Query.newProjectionEntityQueryBuilder() .addProjection("__key__") .setNamespace(NAMESPACE) .setKind(KIND1)
/** Example of creating and running a projection entity query. */ // [TARGET newProjectionEntityQueryBuilder()] // [VARIABLE "my_kind"] // [VARIABLE "my_property"] public QueryResults<ProjectionEntity> newProjectionEntityQuery(String kind, String property) { // [START newProjectionEntityQuery] Query<ProjectionEntity> query = Query.newProjectionEntityQueryBuilder().setKind(kind).addProjection(property).build(); QueryResults<ProjectionEntity> results = datastore.run(query); // Use results // [END newProjectionEntityQuery] return results; } }