Skip to content

Commit 5b4ea32

Browse files
ajkannanaozarov
authored andcommitted
Remove check for empty list and add deprecated to javadoc for meaning in builder.
1 parent fae2908 commit 5b4ea32

File tree

5 files changed

+18
-6
lines changed

5 files changed

+18
-6
lines changed

gcloud-java-datastore/src/main/java/com/google/gcloud/datastore/ListValue.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,6 @@ public List<? extends Value<?>> get() {
108108

109109
@Override
110110
public ListValue build() {
111-
Preconditions.checkState(!get().isEmpty(), "value list could not be empty");
112111
return new ListValue(this);
113112
}
114113
}

gcloud-java-datastore/src/main/java/com/google/gcloud/datastore/Value.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ public abstract class Value<V> extends Serializable<com.google.datastore.v1beta3
3535

3636
private static final long serialVersionUID = -1899638277588872742L;
3737

38-
3938
private final transient ValueType valueType;
4039
private final transient boolean excludeFromIndexes;
4140
private final transient int meaning;
@@ -76,7 +75,6 @@ public final com.google.datastore.v1beta3.Value toProto(P value) {
7675
protected abstract void setValue(P from, com.google.datastore.v1beta3.Value.Builder to);
7776
}
7877

79-
@SuppressWarnings("deprecation")
8078
abstract static class BaseBuilder<V, P extends Value<V>, B extends BaseBuilder<V, P, B>>
8179
implements ValueBuilder<V, P, B> {
8280

@@ -113,11 +111,13 @@ public B excludeFromIndexes(boolean excludeFromIndexes) {
113111
return self();
114112
}
115113

114+
@Deprecated
116115
@Override
117116
public int getMeaning() {
118117
return meaning;
119118
}
120119

120+
@Deprecated
121121
@Override
122122
public B meaning(int meaning) {
123123
this.meaning = meaning;
@@ -144,6 +144,7 @@ private B self() {
144144
public abstract P build();
145145
}
146146

147+
@SuppressWarnings("deprecation")
147148
<P extends Value<V>, B extends BaseBuilder<V, P, B>> Value(ValueBuilder<V, P, B> builder) {
148149
valueType = builder.getValueType();
149150
excludeFromIndexes = builder.getExcludeFromIndexes();

gcloud-java-datastore/src/main/java/com/google/gcloud/datastore/ValueBuilder.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ public interface ValueBuilder<V, P extends Value<V>, B extends ValueBuilder<V, P
3333

3434
B excludeFromIndexes(boolean excludeFromIndexes);
3535

36+
@Deprecated
3637
int getMeaning();
3738

3839
@Deprecated

gcloud-java-datastore/src/test/java/com/google/gcloud/datastore/DatastoreTest.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ public class DatastoreTest {
9191
.addValue(STR_VALUE, BOOL_VALUE)
9292
.build();
9393
private static final ListValue LIST_VALUE2 = ListValue.of(Collections.singletonList(KEY_VALUE));
94+
private static final ListValue EMPTY_LIST_VALUE = ListValue.of(Collections.<Value<?>>emptyList());
9495
private static final DateTimeValue DATE_TIME_VALUE = new DateTimeValue(DateTime.now());
9596
private static final LatLngValue LAT_LNG_VALUE =
9697
new LatLngValue(new LatLng(37.422035, -122.084124));
@@ -110,6 +111,7 @@ public class DatastoreTest {
110111
.set("bool", BOOL_VALUE)
111112
.set("partial1", EntityValue.of(PARTIAL_ENTITY1))
112113
.set("list", LIST_VALUE2)
114+
.set("emptyList", EMPTY_LIST_VALUE)
113115
.build();
114116
private static final Entity ENTITY2 = Entity.builder(ENTITY1).key(KEY2).remove("str")
115117
.set("name", "Dan").setNull("null").set("age", 20).build();
@@ -738,7 +740,9 @@ public void testGet() {
738740
assertEquals(LAT_LNG_VALUE, value5);
739741
FullEntity<IncompleteKey> value6 = entity.getEntity("partial1");
740742
assertEquals(PARTIAL_ENTITY1, value6);
741-
assertEquals(6, entity.names().size());
743+
ListValue value7 = entity.getValue("emptyList");
744+
assertEquals(EMPTY_LIST_VALUE, value7);
745+
assertEquals(7, entity.names().size());
742746
assertFalse(entity.contains("bla"));
743747
}
744748

@@ -783,7 +787,8 @@ public void testGetArrayNoDeferredResults() {
783787
assertEquals(ENTITY2, partial2);
784788
assertEquals(ValueType.BOOLEAN, entity3.getValue("bool").type());
785789
assertEquals(LAT_LNG_VALUE, entity3.getValue("latLng"));
786-
assertEquals(7, entity3.names().size());
790+
assertEquals(EMPTY_LIST_VALUE, entity3.getValue("emptyList"));
791+
assertEquals(8, entity3.names().size());
787792
assertFalse(entity3.contains("bla"));
788793
try {
789794
entity3.getString("str");

gcloud-java-datastore/src/test/java/com/google/gcloud/datastore/ListValueTest.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424

2525
import org.junit.Test;
2626

27+
import java.util.Collections;
2728
import java.util.List;
2829

2930
public class ListValueTest {
@@ -37,12 +38,14 @@ public void testToBuilder() throws Exception {
3738
assertEquals(value, value.toBuilder().build());
3839
}
3940

40-
@SuppressWarnings("deprecation")
4141
@Test
4242
public void testOf() throws Exception {
4343
ListValue value = ListValue.of(CONTENT);
4444
assertEquals(CONTENT, value.get());
4545
assertFalse(value.excludeFromIndexes());
46+
value = ListValue.of(Collections.<Value<?>>emptyList());
47+
assertEquals(Collections.<Value<?>>emptyList(), value.get());
48+
assertFalse(value.excludeFromIndexes());
4649
}
4750

4851
@SuppressWarnings("deprecation")
@@ -59,5 +62,8 @@ public void testBuilder() throws Exception {
5962
builder.addValue(v);
6063
}
6164
assertEquals(CONTENT, builder.build().get());
65+
66+
builder = builder.set(Collections.<Value<?>>emptyList());
67+
assertEquals(Collections.<Value<?>>emptyList(), builder.build().get());
6268
}
6369
}

0 commit comments

Comments
 (0)