diff --git a/tpc/lib/dsl-json-1.7.2.jar b/tpc/lib/dsl-json-1.7.2.jar deleted file mode 100644 index d7b2561..0000000 Binary files a/tpc/lib/dsl-json-1.7.2.jar and /dev/null differ diff --git a/tpc/lib/dsl-json-1.9.5.jar b/tpc/lib/dsl-json-1.9.5.jar new file mode 100644 index 0000000..a8b41b2 Binary files /dev/null and b/tpc/lib/dsl-json-1.9.5.jar differ diff --git a/tpc/lib/dsl-json-java8-1.7.2.jar b/tpc/lib/dsl-json-java8-1.7.2.jar deleted file mode 100644 index 88b0f8e..0000000 Binary files a/tpc/lib/dsl-json-java8-1.7.2.jar and /dev/null differ diff --git a/tpc/src/serializers/dsljson/DSLJson.java b/tpc/src/serializers/dsljson/DSLJson.java index b6aabf3..ff39de8 100644 --- a/tpc/src/serializers/dsljson/DSLJson.java +++ b/tpc/src/serializers/dsljson/DSLJson.java @@ -4,7 +4,8 @@ import serializers.*; import com.dslplatform.json.*; -import com.dslplatform.json.runtime.Settings; + +import java.io.ByteArrayOutputStream; public class DSLJson { @@ -17,37 +18,29 @@ public static void register(final TestGroups groups) { } static class DSLJsonSerializer extends Serializer { - private final JsonWriter writer; - private final JsonReader reader; - private final JsonWriter.WriteObject encoder; - private final JsonReader.ReadObject decoder; - private final boolean asArray; + final boolean asArray; + final DslJson json; + final ByteArrayOutputStream buffer = new ByteArrayOutputStream(); DSLJsonSerializer(boolean asArray) { - DslJson dslJson = new DslJson<>(Settings.withRuntime().allowArrayFormat(asArray).includeServiceLoader()); - this.writer = dslJson.newWriter(); - this.reader = dslJson.newReader(); - this.encoder = dslJson.tryFindWriter(MediaContent.class); - this.decoder = dslJson.tryFindReader(MediaContent.class); this.asArray = asArray; + this.json = new DslJson(new DslJson.Settings<>().allowArrayFormat(asArray).includeServiceLoader()); } @Override public String getName() { - return asArray ? "json-array/dsl-json/databind" : "json/dsl-json/databind"; + return this.asArray ? "json-array/dsl-json/databind" : "json/dsl-json/databind"; } @Override public MediaContent deserialize(final byte[] array) throws Exception { - reader.process(array, array.length).read(); - return decoder.read(reader); + return json.deserialize(MediaContent.class, array, array.length); } @Override public byte[] serialize(final MediaContent content) throws Exception { - writer.reset(); - encoder.write(writer, content); - return writer.toByteArray(); + json.serialize(content, buffer); + return buffer.toByteArray(); } } }