diff --git a/adapters/src/main/java/com/squareup/moshi/adapters/PolymorphicJsonAdapterFactory.java b/adapters/src/main/java/com/squareup/moshi/adapters/PolymorphicJsonAdapterFactory.java index be7e7fc..27527a3 100644 --- a/adapters/src/main/java/com/squareup/moshi/adapters/PolymorphicJsonAdapterFactory.java +++ b/adapters/src/main/java/com/squareup/moshi/adapters/PolymorphicJsonAdapterFactory.java @@ -100,7 +100,8 @@ import javax.annotation.Nullable; * *
If an unknown subtype is encountered when decoding, this will throw a {@link * JsonDataException}. If an unknown type is encountered when encoding, this will throw an {@link - * IllegalArgumentException}. + * IllegalArgumentException}. If the same subtype has multiple labels the first one is used when + * encoding. * *
If you want to specify a custom unknown fallback for decoding, you can do so via
* {@link #withDefaultValue(Object)}. This instance should be immutable, as it is shared.
diff --git a/adapters/src/test/java/com/squareup/moshi/adapters/PolymorphicJsonAdapterFactoryTest.java b/adapters/src/test/java/com/squareup/moshi/adapters/PolymorphicJsonAdapterFactoryTest.java
index f0c0d0a..ffc479e 100644
--- a/adapters/src/test/java/com/squareup/moshi/adapters/PolymorphicJsonAdapterFactoryTest.java
+++ b/adapters/src/test/java/com/squareup/moshi/adapters/PolymorphicJsonAdapterFactoryTest.java
@@ -160,7 +160,7 @@ public final class PolymorphicJsonAdapterFactoryTest {
assertThat(reader.peek()).isEqualTo(JsonReader.Token.END_DOCUMENT);
}
- @Test public void nonUniqueSubtypes() throws IOException {
+ @Test public void nonUniqueSubtypes() throws IOException {
Moshi moshi = new Moshi.Builder()
.add(PolymorphicJsonAdapterFactory.of(Message.class, "type")
.withSubtype(Success.class, "success")
@@ -168,14 +168,16 @@ public final class PolymorphicJsonAdapterFactoryTest {
.withSubtype(Error.class, "error"))
.build();
- JsonAdapter