@Override protected void setValue(ListValue from, com.google.datastore.v1.Value.Builder to) { List<com.google.datastore.v1.Value> propertiesPb = new ArrayList<>(); for (Value<?> property : from.get()) { propertiesPb.add(property.toPb()); } to.setArrayValue( com.google.datastore.v1.ArrayValue.newBuilder().addAllValues(propertiesPb)); } };
@Override protected void setValue(ListValue from, com.google.datastore.v1.Value.Builder to) { List<com.google.datastore.v1.Value> propertiesPb = new ArrayList<>(); for (Value<?> property : from.get()) { propertiesPb.add(property.toPb()); } to.setArrayValue( com.google.datastore.v1.ArrayValue.newBuilder().addAllValues(propertiesPb)); } };
/** * Set a list of values for this {@code Value}. * <p> * The supplied value items must comply with the data types supported by Datastore. * * @param values a list of values to set. * @return this value builder. * @throws IllegalArgumentException if supplied {@code values} contains types * that are not recognised. */ public Builder value(final List<Object> values) { final ArrayValue arrayValues = ArrayValue .newBuilder() .addAllValues( values .stream() .map(v -> Value.builder(v).build().getPb()).collect(Collectors.toList())) .build(); this.value.setArrayValue(arrayValues); return this; }
v = Value.newBuilder().setArrayValue(arrayValueBuilder.build()).build();
/** * Create a new value containing an array of values. * * @param first First value to add. * @param values Array of values to add to builder. * @return A new value builder containing a list. */ public static Value.Builder from(final Value first, final Value... values) { final com.google.datastore.v1.ArrayValue.Builder builder = com.google.datastore.v1.ArrayValue.newBuilder(); builder.addValues(first.getPb()); for (final Value v : values) { builder.addValues(v.getPb()); } return new Value.Builder( com.google.datastore.v1.Value.newBuilder().setArrayValue(builder).build()); }
/** * Make an array value containing the specified values. */ public static Value.Builder makeValue(Value.Builder value1, Value.Builder value2, Value.Builder... rest) { ArrayValue.Builder arrayValue = ArrayValue.newBuilder(); arrayValue.addValues(value1); arrayValue.addValues(value2); for (Value.Builder builder : rest) { arrayValue.addValues(builder); } return Value.newBuilder().setArrayValue(arrayValue); }
/** * Make an array value containing the specified values. */ public static Value.Builder makeValue(Value.Builder value1, Value.Builder value2, Value.Builder... rest) { ArrayValue.Builder arrayValue = ArrayValue.newBuilder(); arrayValue.addValues(value1); arrayValue.addValues(value2); for (Value.Builder builder : rest) { arrayValue.addValues(builder); } return Value.newBuilder().setArrayValue(arrayValue); }
/** * Make a list value containing the specified values. */ public static Value.Builder makeValue(Value value1, Value value2, Value... rest) { ArrayValue.Builder arrayValue = ArrayValue.newBuilder(); arrayValue.addValues(value1); arrayValue.addValues(value2); arrayValue.addAllValues(Arrays.asList(rest)); return Value.newBuilder().setArrayValue(arrayValue); }
/** * Make an array value containing the specified values. */ public static Value.Builder makeValue(Iterable<Value> values) { return Value.newBuilder().setArrayValue(ArrayValue.newBuilder().addAllValues(values)); }
/** * Make a list value containing the specified values. */ public static Value.Builder makeValue(Value value1, Value value2, Value... rest) { ArrayValue.Builder arrayValue = ArrayValue.newBuilder(); arrayValue.addValues(value1); arrayValue.addValues(value2); arrayValue.addAllValues(Arrays.asList(rest)); return Value.newBuilder().setArrayValue(arrayValue); }
/** * Make an array value containing the specified values. */ public static Value.Builder makeValue(Iterable<Value> values) { return Value.newBuilder().setArrayValue(ArrayValue.newBuilder().addAllValues(values)); }
/** * Create a new value containing a list of values. * * @param values List of values to add to builder. * @return A new value builder containing a list. */ public static Value.Builder from(final List<Value> values) { final com.google.datastore.v1.ArrayValue.Builder builder = com.google.datastore.v1.ArrayValue.newBuilder(); values.stream().forEach(v -> builder.addValues(v.getPb())); return new Value.Builder(com.google.datastore.v1.Value.newBuilder().setArrayValue(builder).build()); }