/** * Creates and returns a new Query instance that applies a field mask to the result and returns * the specified subset of fields. You can specify a list of field paths to return, or use an * empty list to only return the references of matching documents. * * @param fieldPaths The field paths to include. * @return The created Query. */ @Nonnull public Query select(FieldPath... fieldPaths) { QueryOptions newOptions = new QueryOptions(options); newOptions.fieldProjections = new ArrayList<>(); if (fieldPaths.length == 0) { fieldPaths = new FieldPath[] {FieldPath.DOCUMENT_ID}; } for (FieldPath path : fieldPaths) { FieldReference fieldReference = FieldReference.newBuilder().setFieldPath(path.getEncodedPath()).build(); newOptions.fieldProjections.add(fieldReference); } return new Query(firestore, path, newOptions); }
/** * Creates and returns a new Query instance that applies a field mask to the result and returns * the specified subset of fields. You can specify a list of field paths to return, or use an * empty list to only return the references of matching documents. * * @param fieldPaths The field paths to include. * @return The created Query. */ @Nonnull public Query select(FieldPath... fieldPaths) { QueryOptions newOptions = new QueryOptions(options); newOptions.fieldProjections = new ArrayList<>(); if (fieldPaths.length == 0) { fieldPaths = new FieldPath[] {FieldPath.DOCUMENT_ID}; } for (FieldPath path : fieldPaths) { FieldReference fieldReference = FieldReference.newBuilder().setFieldPath(path.getEncodedPath()).build(); newOptions.fieldProjections.add(fieldReference); } return new Query(firestore, path, newOptions); }
Filter toProto() { Filter.Builder result = Filter.newBuilder(); Value encodedValue = encodeValue(); result .getFieldFilterBuilder() .setField(FieldReference.newBuilder().setFieldPath(fieldPath.getEncodedPath())) .setValue(encodedValue) .setOp(operator); return result.build(); } }
Filter toProto() { Filter.Builder result = Filter.newBuilder(); result .getUnaryFilterBuilder() .setField(FieldReference.newBuilder().setFieldPath(fieldPath.getEncodedPath())) .setOp( value == null ? StructuredQuery.UnaryFilter.Operator.IS_NULL : StructuredQuery.UnaryFilter.Operator.IS_NAN); return result.build(); } }
Order toProto() { Order.Builder result = Order.newBuilder(); result.setField(FieldReference.newBuilder().setFieldPath(fieldPath.getEncodedPath())); result.setDirection(direction.getDirection()); return result.build(); } }
public static StructuredQuery filter( StructuredQuery.FieldFilter.Operator operator, String path, Value value) { StructuredQuery.Builder structuredQuery = StructuredQuery.newBuilder(); StructuredQuery.CompositeFilter.Builder compositeFilter = structuredQuery.getWhereBuilder().getCompositeFilterBuilder(); compositeFilter.setOp(StructuredQuery.CompositeFilter.Operator.AND); StructuredQuery.FieldFilter.Builder fieldFilter = compositeFilter.addFiltersBuilder().getFieldFilterBuilder(); fieldFilter.setField(StructuredQuery.FieldReference.newBuilder().setFieldPath(path)); fieldFilter.setOp(operator); fieldFilter.setValue(value); return structuredQuery.build(); }
Order toProto() { Order.Builder result = Order.newBuilder(); result.setField(FieldReference.newBuilder().setFieldPath(fieldPath.getEncodedPath())); result.setDirection(direction.getDirection()); return result.build(); } }
Filter toProto() { Filter.Builder result = Filter.newBuilder(); Value encodedValue = encodeValue(); result .getFieldFilterBuilder() .setField(FieldReference.newBuilder().setFieldPath(fieldPath.getEncodedPath())) .setValue(encodedValue) .setOp(operator); return result.build(); } }
public static StructuredQuery.FieldReference.Builder field(String fieldPath) { return StructuredQuery.FieldReference.newBuilder().setFieldPath(fieldPath); }
Filter toProto() { Filter.Builder result = Filter.newBuilder(); result .getUnaryFilterBuilder() .setField(FieldReference.newBuilder().setFieldPath(fieldPath.getEncodedPath())) .setOp( value == null ? StructuredQuery.UnaryFilter.Operator.IS_NULL : StructuredQuery.UnaryFilter.Operator.IS_NAN); return result.build(); } }
public static StructuredQuery unaryFilter(StructuredQuery.UnaryFilter.Operator operator) { StructuredQuery.Builder structuredQuery = StructuredQuery.newBuilder(); StructuredQuery.CompositeFilter.Builder compositeFilter = structuredQuery.getWhereBuilder().getCompositeFilterBuilder(); compositeFilter.setOp(StructuredQuery.CompositeFilter.Operator.AND); StructuredQuery.UnaryFilter.Builder fieldFilter = compositeFilter.addFiltersBuilder().getUnaryFilterBuilder(); fieldFilter.setField(StructuredQuery.FieldReference.newBuilder().setFieldPath("foo")); fieldFilter.setOp(operator); return structuredQuery.build(); }