From 9a7fa900bb7725f08aa41ec588c96892c453d0f3 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Sun, 8 Apr 2018 23:13:20 -0700 Subject: [PATCH 01/21] jackson --- .../SerializableErrorErrorDecoderTests.java | 2 +- error-handling/versions.lock | 38 ++++++------ extras/jackson-support/versions.lock | 38 ++++++------ http-clients/versions.lock | 16 ++--- jaxrs-clients/versions.lock | 42 +++++++------- jaxrs-scala-clients/versions.lock | 58 ++++++++++--------- jersey-servers/versions.lock | 56 +++++++++--------- keystores/versions.lock | 12 ++-- okhttp-clients/versions.lock | 42 +++++++------- pkcs1-reader-bouncy-castle/versions.lock | 12 ++-- pkcs1-reader-sun/versions.lock | 12 ++-- retrofit2-clients/versions.lock | 42 +++++++------- tracing-jaxrs/versions.lock | 38 ++++++------ tracing-okhttp3/versions.lock | 38 ++++++------ tracing/versions.lock | 38 ++++++------ versions.props | 6 +- 16 files changed, 254 insertions(+), 236 deletions(-) diff --git a/error-handling/src/test/java/com/palantir/remoting3/errors/SerializableErrorErrorDecoderTests.java b/error-handling/src/test/java/com/palantir/remoting3/errors/SerializableErrorErrorDecoderTests.java index 56f7a59b6..fe7b336e5 100644 --- a/error-handling/src/test/java/com/palantir/remoting3/errors/SerializableErrorErrorDecoderTests.java +++ b/error-handling/src/test/java/com/palantir/remoting3/errors/SerializableErrorErrorDecoderTests.java @@ -121,7 +121,7 @@ public void testExceptionInErrorParsing() { assertThat(decode.getMessage()).isEqualTo( "Error 42. Failed to parse error body and deserialize exception: " + "Unrecognized token 'notjsonifiable': was expecting 'null', 'true', 'false' or NaN\n " - + "at [Source: notjsonifiable!; line: 1, column: 15]. Body:\n" + + "at [Source: (String)\"notjsonifiable!\"; line: 1, column: 15]. Body:\n" + "notjsonifiable!"); } diff --git a/error-handling/versions.lock b/error-handling/versions.lock index bc6284fc0..eb6f77b48 100644 --- a/error-handling/versions.lock +++ b/error-handling/versions.lock @@ -1,13 +1,14 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -18,7 +19,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -29,31 +30,31 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] @@ -94,13 +95,14 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -111,7 +113,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -122,31 +124,31 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] diff --git a/extras/jackson-support/versions.lock b/extras/jackson-support/versions.lock index 764a02d95..a4de85207 100644 --- a/extras/jackson-support/versions.lock +++ b/extras/jackson-support/versions.lock @@ -1,13 +1,14 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -18,7 +19,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -27,19 +28,19 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.google.guava:guava": { "locked": "20.0", @@ -50,13 +51,14 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -67,7 +69,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -76,19 +78,19 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.google.guava:guava": { "locked": "20.0", diff --git a/http-clients/versions.lock b/http-clients/versions.lock index 20c05aeec..550d11dc4 100644 --- a/http-clients/versions.lock +++ b/http-clients/versions.lock @@ -1,20 +1,20 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", "com.palantir.remoting-api:ssl-config", @@ -23,7 +23,7 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.tokens:auth-tokens" ] @@ -65,20 +65,20 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", "com.palantir.remoting-api:ssl-config", @@ -87,7 +87,7 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.tokens:auth-tokens" ] diff --git a/jaxrs-clients/versions.lock b/jaxrs-clients/versions.lock index 15963ba65..49f08ef99 100644 --- a/jaxrs-clients/versions.lock +++ b/jaxrs-clients/versions.lock @@ -1,13 +1,14 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -18,7 +19,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -35,20 +36,20 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing", @@ -56,13 +57,13 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" @@ -231,7 +232,7 @@ ] }, "io.dropwizard.metrics:metrics-core": { - "locked": "3.2.3", + "locked": "3.2.5", "transitive": [ "com.palantir.remoting3:okhttp-clients", "com.palantir.tritium:tritium-registry" @@ -264,13 +265,14 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -281,7 +283,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -298,20 +300,20 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing", @@ -319,13 +321,13 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" @@ -494,7 +496,7 @@ ] }, "io.dropwizard.metrics:metrics-core": { - "locked": "3.2.3", + "locked": "3.2.5", "transitive": [ "com.palantir.remoting3:okhttp-clients", "com.palantir.tritium:tritium-registry" diff --git a/jaxrs-scala-clients/versions.lock b/jaxrs-scala-clients/versions.lock index 4c953ea7c..88f335928 100644 --- a/jaxrs-scala-clients/versions.lock +++ b/jaxrs-scala-clients/versions.lock @@ -1,14 +1,15 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", "com.fasterxml.jackson.module:jackson-module-scala_2.11" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -20,7 +21,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -39,20 +40,20 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing", @@ -60,26 +61,26 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.module:jackson-module-paranamer": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.module:jackson-module-scala_2.11" ] }, "com.fasterxml.jackson.module:jackson-module-scala_2.11": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.google.code.findbugs:jsr305": { "locked": "3.0.0", @@ -272,13 +273,13 @@ ] }, "com.thoughtworks.paranamer:paranamer": { - "locked": "2.6", + "locked": "2.8", "transitive": [ "com.fasterxml.jackson.module:jackson-module-paranamer" ] }, "io.dropwizard.metrics:metrics-core": { - "locked": "3.2.3", + "locked": "3.2.5", "transitive": [ "com.palantir.remoting3:okhttp-clients", "com.palantir.tritium:tritium-registry" @@ -299,14 +300,14 @@ ] }, "org.scala-lang:scala-library": { - "locked": "2.11.8", + "locked": "2.11.11", "transitive": [ "com.fasterxml.jackson.module:jackson-module-scala_2.11", "org.scala-lang:scala-reflect" ] }, "org.scala-lang:scala-reflect": { - "locked": "2.11.8", + "locked": "2.11.11", "transitive": [ "com.fasterxml.jackson.module:jackson-module-scala_2.11" ] @@ -326,14 +327,15 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", "com.fasterxml.jackson.module:jackson-module-scala_2.11" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -345,7 +347,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -364,20 +366,20 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing", @@ -385,26 +387,26 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.module:jackson-module-paranamer": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.module:jackson-module-scala_2.11" ] }, "com.fasterxml.jackson.module:jackson-module-scala_2.11": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.google.code.findbugs:jsr305": { "locked": "3.0.0", @@ -597,13 +599,13 @@ ] }, "com.thoughtworks.paranamer:paranamer": { - "locked": "2.6", + "locked": "2.8", "transitive": [ "com.fasterxml.jackson.module:jackson-module-paranamer" ] }, "io.dropwizard.metrics:metrics-core": { - "locked": "3.2.3", + "locked": "3.2.5", "transitive": [ "com.palantir.remoting3:okhttp-clients", "com.palantir.tritium:tritium-registry" @@ -624,14 +626,14 @@ ] }, "org.scala-lang:scala-library": { - "locked": "2.11.8", + "locked": "2.11.11", "transitive": [ "com.fasterxml.jackson.module:jackson-module-scala_2.11", "org.scala-lang:scala-reflect" ] }, "org.scala-lang:scala-reflect": { - "locked": "2.11.8", + "locked": "2.11.11", "transitive": [ "com.fasterxml.jackson.module:jackson-module-scala_2.11" ] diff --git a/jersey-servers/versions.lock b/jersey-servers/versions.lock index 870d84bd7..3322c5203 100644 --- a/jersey-servers/versions.lock +++ b/jersey-servers/versions.lock @@ -1,13 +1,15 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", + "com.fasterxml.jackson.module:jackson-module-jaxb-annotations" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -15,19 +17,17 @@ "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", "com.fasterxml.jackson.jaxrs:jackson-jaxrs-base", - "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider", "com.fasterxml.jackson.module:jackson-module-afterburner", "com.fasterxml.jackson.module:jackson-module-jaxb-annotations" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", "com.fasterxml.jackson.jaxrs:jackson-jaxrs-base", - "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider", "com.fasterxml.jackson.module:jackson-module-afterburner", "com.fasterxml.jackson.module:jackson-module-jaxb-annotations", "com.palantir.remoting-api:errors", @@ -37,50 +37,50 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider", "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.jaxrs:jackson-jaxrs-base": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider" ] }, "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.module:jackson-module-jaxb-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider" ] @@ -259,13 +259,15 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", + "com.fasterxml.jackson.module:jackson-module-jaxb-annotations" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -273,19 +275,17 @@ "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", "com.fasterxml.jackson.jaxrs:jackson-jaxrs-base", - "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider", "com.fasterxml.jackson.module:jackson-module-afterburner", "com.fasterxml.jackson.module:jackson-module-jaxb-annotations" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", "com.fasterxml.jackson.jaxrs:jackson-jaxrs-base", - "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider", "com.fasterxml.jackson.module:jackson-module-afterburner", "com.fasterxml.jackson.module:jackson-module-jaxb-annotations", "com.palantir.remoting-api:errors", @@ -295,50 +295,50 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider", "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.jaxrs:jackson-jaxrs-base": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider" ] }, "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider": { - "locked": "2.6.7" + "locked": "2.9.5" }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.module:jackson-module-jaxb-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.jaxrs:jackson-jaxrs-cbor-provider" ] diff --git a/keystores/versions.lock b/keystores/versions.lock index c32685497..367d67ec9 100644 --- a/keystores/versions.lock +++ b/keystores/versions.lock @@ -1,19 +1,19 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting-api:ssl-config" ] @@ -27,19 +27,19 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting-api:ssl-config" ] diff --git a/okhttp-clients/versions.lock b/okhttp-clients/versions.lock index b56c81434..71cb323cc 100644 --- a/okhttp-clients/versions.lock +++ b/okhttp-clients/versions.lock @@ -1,13 +1,14 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -18,7 +19,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -34,20 +35,20 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing", @@ -55,13 +56,13 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" @@ -180,7 +181,7 @@ ] }, "io.dropwizard.metrics:metrics-core": { - "locked": "3.2.3", + "locked": "3.2.5", "transitive": [ "com.palantir.tritium:tritium-registry" ] @@ -204,13 +205,14 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -221,7 +223,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -237,20 +239,20 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing", @@ -258,13 +260,13 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" @@ -383,7 +385,7 @@ ] }, "io.dropwizard.metrics:metrics-core": { - "locked": "3.2.3", + "locked": "3.2.5", "transitive": [ "com.palantir.tritium:tritium-registry" ] diff --git a/pkcs1-reader-bouncy-castle/versions.lock b/pkcs1-reader-bouncy-castle/versions.lock index f6ca95d97..3f4b40a6c 100644 --- a/pkcs1-reader-bouncy-castle/versions.lock +++ b/pkcs1-reader-bouncy-castle/versions.lock @@ -1,19 +1,19 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting-api:ssl-config", "com.palantir.remoting3:keystores" @@ -46,19 +46,19 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting-api:ssl-config", "com.palantir.remoting3:keystores" diff --git a/pkcs1-reader-sun/versions.lock b/pkcs1-reader-sun/versions.lock index c0f1f7f97..f9732ee15 100644 --- a/pkcs1-reader-sun/versions.lock +++ b/pkcs1-reader-sun/versions.lock @@ -1,19 +1,19 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting-api:ssl-config", "com.palantir.remoting3:keystores" @@ -37,19 +37,19 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind" ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting-api:ssl-config", "com.palantir.remoting3:keystores" diff --git a/retrofit2-clients/versions.lock b/retrofit2-clients/versions.lock index 95fba9c3e..113ffab89 100644 --- a/retrofit2-clients/versions.lock +++ b/retrofit2-clients/versions.lock @@ -1,13 +1,14 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -18,7 +19,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -35,20 +36,20 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing", @@ -56,13 +57,13 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" @@ -219,7 +220,7 @@ ] }, "io.dropwizard.metrics:metrics-core": { - "locked": "3.2.3", + "locked": "3.2.5", "transitive": [ "com.palantir.remoting3:okhttp-clients", "com.palantir.tritium:tritium-registry" @@ -245,13 +246,14 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -262,7 +264,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -279,20 +281,20 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing", @@ -300,13 +302,13 @@ ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" @@ -463,7 +465,7 @@ ] }, "io.dropwizard.metrics:metrics-core": { - "locked": "3.2.3", + "locked": "3.2.5", "transitive": [ "com.palantir.remoting3:okhttp-clients", "com.palantir.tritium:tritium-registry" diff --git a/tracing-jaxrs/versions.lock b/tracing-jaxrs/versions.lock index dd1cc26b5..3ca83e628 100644 --- a/tracing-jaxrs/versions.lock +++ b/tracing-jaxrs/versions.lock @@ -1,13 +1,14 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -18,7 +19,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -30,33 +31,33 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" @@ -102,13 +103,14 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -119,7 +121,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -131,33 +133,33 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" diff --git a/tracing-okhttp3/versions.lock b/tracing-okhttp3/versions.lock index 4f343c864..ae2534b1b 100644 --- a/tracing-okhttp3/versions.lock +++ b/tracing-okhttp3/versions.lock @@ -1,13 +1,14 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -18,7 +19,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -30,33 +31,33 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" @@ -108,13 +109,14 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -125,7 +127,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -137,33 +139,33 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support", "com.palantir.remoting3:tracing" diff --git a/tracing/versions.lock b/tracing/versions.lock index 6ebbf00b1..732d805e6 100644 --- a/tracing/versions.lock +++ b/tracing/versions.lock @@ -1,13 +1,14 @@ { "compileClasspath": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -18,7 +19,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -29,31 +30,31 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] @@ -79,13 +80,14 @@ }, "runtime": { "com.fasterxml.jackson.core:jackson-annotations": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ - "com.fasterxml.jackson.core:jackson-databind" + "com.fasterxml.jackson.core:jackson-databind", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" ] }, "com.fasterxml.jackson.core:jackson-core": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor", @@ -96,7 +98,7 @@ ] }, "com.fasterxml.jackson.core:jackson-databind": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.fasterxml.jackson.datatype:jackson-datatype-guava", "com.fasterxml.jackson.datatype:jackson-datatype-jdk8", @@ -107,31 +109,31 @@ ] }, "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-guava": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jdk8": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] }, "com.fasterxml.jackson.module:jackson-module-afterburner": { - "locked": "2.6.7", + "locked": "2.9.5", "transitive": [ "com.palantir.remoting3:jackson-support" ] diff --git a/versions.props b/versions.props index 93eae3a44..54bf63970 100644 --- a/versions.props +++ b/versions.props @@ -1,6 +1,6 @@ ch.qos.logback:logback-classic = 1.1.7 com.ea.agentloader:ea-agent-loader = 1.0.2 -com.fasterxml.jackson.*:jackson-* = 2.6.7 +com.fasterxml.jackson.*:jackson-* = 2.9.5 com.google.code.findbugs:jsr305 = 3.0.0 com.google.errorprone:error_prone_core = 2.0.18 com.google.guava:guava = 20.0 @@ -11,8 +11,8 @@ com.palantir.safe-logging:* = 1.3.0 com.palantir.tritium:tritium-registry = 0.8.0 com.squareup.okhttp3:* = 3.9.0 com.squareup.retrofit2:* = 2.3.0 -io.dropwizard.metrics:metrics-core = 3.2.3 -io.dropwizard:dropwizard-* = 0.9.2 +io.dropwizard.metrics:metrics-core = 3.2.5 +io.dropwizard:dropwizard-* = 1.3.1 io.reactivex.rxjava2:rxjava = 2.0.4 io.zipkin.java:* = 1.13.1 javax.servlet:javax.servlet-api = 3.1.0 From 0559a9f6b05bfa50cc02cadb610e9a4565eb3db3 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 9 Apr 2018 00:42:17 -0700 Subject: [PATCH 02/21] jackson --- .../remoting3/ext/jackson/ObjectMappers.java | 6 +- .../ext/jackson/PathDeserializer.java | 63 ------------------- .../remoting3/ext/jackson/ShimJdk7Module.java | 62 ------------------ .../ext/jackson/ShimJdk7ModuleTest.java | 35 ----------- jaxrs-clients/build.gradle | 1 + .../GuavaOptionalAwareDecoderTest.java | 20 +++--- .../jaxrs/feignimpl/GuavaTestServer.java | 8 +++ .../Java8OptionalAwareDecoderTest.java | 4 +- .../jaxrs/feignimpl/Java8TestServer.java | 13 ++++ jersey-servers/build.gradle | 1 + .../servers/jersey/CompressionFilterTest.java | 4 +- .../Java8OptionalMessageBodyWriterTest.java | 12 ++++ .../servers/jersey/Java8OptionalTest.java | 12 ++++ versions.props | 2 +- 14 files changed, 67 insertions(+), 176 deletions(-) delete mode 100644 extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/PathDeserializer.java delete mode 100644 extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ShimJdk7Module.java delete mode 100644 extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ShimJdk7ModuleTest.java diff --git a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java index 5ff31ba5b..2a325575c 100644 --- a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java +++ b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java @@ -16,14 +16,18 @@ package com.palantir.remoting3.ext.jackson; +import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.databind.module.SimpleModule; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.fasterxml.jackson.dataformat.cbor.CBORFactory; import com.fasterxml.jackson.datatype.guava.GuavaModule; import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import com.fasterxml.jackson.module.afterburner.AfterburnerModule; +import java.nio.file.Path; public final class ObjectMappers { @@ -107,8 +111,8 @@ public static ObjectMapper newCborServerObjectMapper() { */ public static ObjectMapper withDefaultModules(ObjectMapper mapper) { return mapper + .registerModule(new SimpleModule("PathToString").addSerializer(Path.class, new ToStringSerializer())) .registerModule(new GuavaModule()) - .registerModule(new ShimJdk7Module()) .registerModule(new Jdk8Module().configureAbsentsAsNulls(true)) .registerModule(new AfterburnerModule()) .registerModule(new JavaTimeModule()) diff --git a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/PathDeserializer.java b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/PathDeserializer.java deleted file mode 100644 index e452ef1ad..000000000 --- a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/PathDeserializer.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * (c) Copyright 2017 Palantir Technologies Inc. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/* - * Derived from: https://github.com/FasterXML/jackson-databind/blob/2.7/src/main/java/com/fasterxml/jackson/databind/ext/PathDeserializer.java - * - * Copyright 2016 The Apache Software Foundation (Jackson / FasterXML) - * - * The Apache Software Foundation licenses this file to you under the Apache - * License, version 2.0 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at: - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations - * under the License. - */ - -package com.palantir.remoting3.ext.jackson; - -import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.core.JsonToken; -import com.fasterxml.jackson.databind.DeserializationContext; -import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; -import java.io.IOException; -import java.nio.file.Path; -import java.nio.file.Paths; - -public final class PathDeserializer extends StdScalarDeserializer { - private static final long serialVersionUID = 1; - - public PathDeserializer() { - super(Path.class); - } - - @Override - public Path deserialize(JsonParser parser, DeserializationContext ctxt) throws IOException { - JsonToken token = parser.getCurrentToken(); - if (token != null) { - if (token.isScalarValue()) { - return Paths.get(parser.getValueAsString()); - } - // 16-Oct-2015: should we perhaps allow JSON Arrays (of Strings) as well? - } - throw ctxt.mappingException(Path.class, token); - } -} diff --git a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ShimJdk7Module.java b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ShimJdk7Module.java deleted file mode 100644 index ef7b55d31..000000000 --- a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ShimJdk7Module.java +++ /dev/null @@ -1,62 +0,0 @@ -/* - * (c) Copyright 2017 Palantir Technologies Inc. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/* - * Derived from: https://github.com/FasterXML/jackson-datatype-jdk7/blob/master/src/main/java/com/fasterxml/jackson/datatype/jdk7/Jdk7Module.java - * - * Copyright 2016 The Apache Software Foundation (Jackson / FasterXML) - * - * The Apache Software Foundation licenses this file to you under the Apache - * License, version 2.0 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License at: - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations - * under the License. - */ - -package com.palantir.remoting3.ext.jackson; - -import com.fasterxml.jackson.databind.JsonSerializer; -import com.fasterxml.jackson.databind.module.SimpleModule; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import java.nio.file.Path; - -public final class ShimJdk7Module extends SimpleModule { - private static final long serialVersionUID = 1L; - - public ShimJdk7Module() { - super(ShimJdk7Module.class.getCanonicalName()); - - final JsonSerializer stringSer = ToStringSerializer.instance; - addSerializer(Path.class, stringSer); - addDeserializer(Path.class, new PathDeserializer()); - } - - @Override - public int hashCode() { - return getClass().hashCode(); - } - - @Override - public boolean equals(Object obj) { - return this == obj; - } -} diff --git a/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ShimJdk7ModuleTest.java b/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ShimJdk7ModuleTest.java deleted file mode 100644 index bba99f491..000000000 --- a/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ShimJdk7ModuleTest.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * (c) Copyright 2017 Palantir Technologies Inc. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.palantir.remoting3.ext.jackson; - -import static org.assertj.core.api.Assertions.assertThat; - -import com.fasterxml.jackson.databind.ObjectMapper; -import java.io.IOException; -import java.nio.file.Path; -import java.nio.file.Paths; -import org.junit.Test; - -public final class ShimJdk7ModuleTest { - - @Test - public void testPathSerDe() throws IOException { - ObjectMapper mapper = new ObjectMapper().registerModule(new ShimJdk7Module()); - String val = mapper.writeValueAsString(Paths.get("a", "b", "c")); - assertThat(mapper.readValue(val, Path.class)).isEqualTo(Paths.get("a", "b", "c")); - } -} diff --git a/jaxrs-clients/build.gradle b/jaxrs-clients/build.gradle index 4a37fad39..3076282ee 100644 --- a/jaxrs-clients/build.gradle +++ b/jaxrs-clients/build.gradle @@ -27,4 +27,5 @@ dependencies { testCompile "io.dropwizard:dropwizard-testing" testCompile "junit:junit" testCompile "org.hamcrest:hamcrest-all" + testCompile "org.mockito:mockito-core" } diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalAwareDecoderTest.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalAwareDecoderTest.java index eea329173..8e8d6a2de 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalAwareDecoderTest.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalAwareDecoderTest.java @@ -132,9 +132,9 @@ public void testComplexType() { new GuavaOptionalComplexType( Optional.absent(), Optional.absent(), - Paths.get("bar"))), + Paths.get("/bar"))), Optional.of("baz"), - Paths.get("foo")); + Paths.get("/foo")); // Hint: set breakpoint in Feign's SynchronousMethodHandler#executeAndDecode to inspect serialized parameter. assertThat(service.getGuavaComplexType(value), is(value)); } @@ -144,11 +144,11 @@ public void testCborResponse() { GuavaOptionalComplexType value = new GuavaOptionalComplexType( Optional.of( new GuavaOptionalComplexType( - Optional.absent(), - Optional.absent(), - Paths.get("bar"))), + Optional.absent(), + Optional.absent(), + Paths.get("/bar"))), Optional.of("baz"), - Paths.get("foo")); + Paths.get("/foo")); assertThat(service.getCborResponse(value), is(value)); } @@ -157,11 +157,11 @@ public void testCborRequest() { GuavaOptionalComplexType value = new GuavaOptionalComplexType( Optional.of( new GuavaOptionalComplexType( - Optional.absent(), - Optional.absent(), - Paths.get("bar"))), + Optional.absent(), + Optional.absent(), + Paths.get("/bar"))), Optional.of("baz"), - Paths.get("foo")); + Paths.get("/foo")); assertThat(service.postCborRequest(value), is(value)); } } diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java index 5e6e66897..9d61c8b5f 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java @@ -16,12 +16,14 @@ package com.palantir.remoting3.jaxrs.feignimpl; +import com.fasterxml.jackson.annotation.JsonInclude; import com.google.common.base.Optional; import com.google.common.collect.ImmutableMap; import com.palantir.remoting3.servers.jersey.HttpRemotingJerseyFeature; import feign.Util; import io.dropwizard.Application; import io.dropwizard.Configuration; +import io.dropwizard.setup.Bootstrap; import io.dropwizard.setup.Environment; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -41,6 +43,12 @@ import org.assertj.core.util.Strings; public class GuavaTestServer extends Application { + + @Override + public final void initialize(Bootstrap bootstrap) { + bootstrap.getObjectMapper().setSerializationInclusion(JsonInclude.Include.NON_ABSENT); + } + @Override public final void run(Configuration config, final Environment env) throws Exception { env.jersey().register(HttpRemotingJerseyFeature.INSTANCE); diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8OptionalAwareDecoderTest.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8OptionalAwareDecoderTest.java index 1c814cf33..9dc8a0e14 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8OptionalAwareDecoderTest.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8OptionalAwareDecoderTest.java @@ -132,9 +132,9 @@ public void testComplexType() { new Java8ComplexType( Optional.empty(), Optional.empty(), - Paths.get("bar"))), + Paths.get("/bar"))), Optional.of("baz"), - Paths.get("foo")); + Paths.get("/foo")); // Hint: set breakpoint in Feign's SynchronousMethodHandler#executeAndDecode to inspect serialized parameter. assertThat(service.getJava8ComplexType(value), is(value)); } diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java index b0c3f7d4c..39b650a4e 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java @@ -23,6 +23,7 @@ import feign.Util; import io.dropwizard.Application; import io.dropwizard.Configuration; +import io.dropwizard.jersey.optional.EmptyOptionalException; import io.dropwizard.setup.Environment; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -40,12 +41,16 @@ import javax.ws.rs.Produces; import javax.ws.rs.QueryParam; import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.Response; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; public class Java8TestServer extends Application { @Override public final void run(Configuration config, final Environment env) throws Exception { env.jersey().register(HttpRemotingJerseyFeature.INSTANCE); env.jersey().register(new TestResource()); + env.jersey().register(new EmptyOptionalTo204ExceptionMapper()); env.getObjectMapper().registerModule(new Jdk8Module()); } @@ -143,6 +148,14 @@ public Java8ComplexType getJava8ComplexType(Java8ComplexType value) { } } + @Provider + private static final class EmptyOptionalTo204ExceptionMapper implements ExceptionMapper { + @Override + public Response toResponse(EmptyOptionalException exception) { + return Response.noContent().build(); + } + } + @Path("/") @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) diff --git a/jersey-servers/build.gradle b/jersey-servers/build.gradle index b9d457742..57660a023 100644 --- a/jersey-servers/build.gradle +++ b/jersey-servers/build.gradle @@ -15,4 +15,5 @@ dependencies { testCompile "io.dropwizard:dropwizard-testing" testCompile "junit:junit" testCompile "org.hamcrest:hamcrest-all" + testCompile "org.mockito:mockito-core" } diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/CompressionFilterTest.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/CompressionFilterTest.java index 4ab9cc073..522718190 100644 --- a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/CompressionFilterTest.java +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/CompressionFilterTest.java @@ -124,7 +124,7 @@ public void testHandleWhitespace() throws IOException { public void testNoCompressionWithoutHeader() { Response response = baseRequest(target).get(); - assertThat(response.getHeaderString(HttpHeaders.VARY), is(nullValue())); + assertThat(response.getHeaderString(HttpHeaders.VARY), is(HttpHeaders.ACCEPT_ENCODING)); assertThat(response.getHeaderString(HttpHeaders.CONTENT_ENCODING), is(nullValue())); assertThat(response.readEntity(String.class), is("val")); } @@ -133,7 +133,7 @@ public void testNoCompressionWithoutHeader() { public void testNoCompressionForUncompressableResponse() { Response response = target.path("uncompressible").request().get(); - assertThat(response.getHeaderString(HttpHeaders.VARY), is(nullValue())); + assertThat(response.getHeaderString(HttpHeaders.VARY), is(HttpHeaders.ACCEPT_ENCODING)); assertThat(response.getHeaderString(HttpHeaders.CONTENT_ENCODING), is(nullValue())); assertThat(response.readEntity(String.class), is("value")); } diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java index 3097db65b..accf4c200 100644 --- a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java @@ -20,6 +20,7 @@ import com.codahale.metrics.MetricRegistry; import io.dropwizard.jersey.DropwizardResourceConfig; +import io.dropwizard.jersey.optional.EmptyOptionalException; import java.util.Optional; import java.util.OptionalDouble; import java.util.OptionalInt; @@ -33,6 +34,8 @@ import javax.ws.rs.core.Application; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; import org.glassfish.jersey.test.JerseyTest; import org.glassfish.jersey.test.TestProperties; import org.junit.Test; @@ -44,6 +47,7 @@ protected Application configure() { forceSet(TestProperties.CONTAINER_PORT, "0"); return DropwizardResourceConfig.forTesting(new MetricRegistry()) .register(HttpRemotingJerseyFeature.INSTANCE) + .register(new EmptyOptionalTo204ExceptionMapper()) .register(OptionalReturnResource.class); } @@ -85,6 +89,14 @@ public void absentOptionalsThrowANotFound() throws Exception { assertThat(response.getStatus()).isEqualTo(204); } + @Provider + private static final class EmptyOptionalTo204ExceptionMapper implements ExceptionMapper { + @Override + public Response toResponse(EmptyOptionalException exception) { + return Response.noContent().build(); + } + } + @Path("/optional-return/") @Produces(MediaType.TEXT_PLAIN) public static final class OptionalReturnResource { diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java index d23f0f147..7b98d31f9 100644 --- a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java @@ -23,6 +23,7 @@ import com.google.common.base.Strings; import io.dropwizard.Application; import io.dropwizard.Configuration; +import io.dropwizard.jersey.optional.EmptyOptionalException; import io.dropwizard.setup.Environment; import io.dropwizard.testing.junit.DropwizardAppRule; import java.util.Optional; @@ -40,6 +41,8 @@ import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; import org.glassfish.jersey.client.JerseyClientBuilder; import org.junit.Before; import org.junit.ClassRule; @@ -134,10 +137,19 @@ public static class OptionalTestServer extends Application { @Override public final void run(Configuration config, final Environment env) throws Exception { env.jersey().register(HttpRemotingJerseyFeature.INSTANCE); + env.jersey().register(new EmptyOptionalTo204ExceptionMapper()); env.jersey().register(new OptionalTestResource()); } } + @Provider + private static final class EmptyOptionalTo204ExceptionMapper implements ExceptionMapper { + @Override + public Response toResponse(EmptyOptionalException exception) { + return Response.noContent().build(); + } + } + public static final class OptionalTestResource implements OptionalTestService { @Override public Optional getOptional(@Nullable String value) { diff --git a/versions.props b/versions.props index 54bf63970..aae3cf782 100644 --- a/versions.props +++ b/versions.props @@ -24,6 +24,6 @@ org.glassfish.jersey.*:* = 2.22.2 org.hamcrest:hamcrest-* = 1.3 org.immutables:value = 2.3.10 org.jmock:jmock = 2.8.2 -org.mockito:mockito-core = 1.10.19 +org.mockito:mockito-core = 2.18.0 org.mortbay.jetty.alpn:jetty-alpn-agent = 2.0.7 org.slf4j:slf4j-api = 1.7.12 From 90433a24cd2ba7a183fdcb7d193ca9199f334411 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 9 Apr 2018 00:43:04 -0700 Subject: [PATCH 03/21] less --- .../remoting3/jaxrs/feignimpl/GuavaTestServer.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java index 9d61c8b5f..2d511e559 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java @@ -16,14 +16,12 @@ package com.palantir.remoting3.jaxrs.feignimpl; -import com.fasterxml.jackson.annotation.JsonInclude; import com.google.common.base.Optional; import com.google.common.collect.ImmutableMap; import com.palantir.remoting3.servers.jersey.HttpRemotingJerseyFeature; import feign.Util; import io.dropwizard.Application; import io.dropwizard.Configuration; -import io.dropwizard.setup.Bootstrap; import io.dropwizard.setup.Environment; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -44,11 +42,6 @@ public class GuavaTestServer extends Application { - @Override - public final void initialize(Bootstrap bootstrap) { - bootstrap.getObjectMapper().setSerializationInclusion(JsonInclude.Include.NON_ABSENT); - } - @Override public final void run(Configuration config, final Environment env) throws Exception { env.jersey().register(HttpRemotingJerseyFeature.INSTANCE); From 899387c73a890bcabadf11993b0d947f6e740067 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 9 Apr 2018 00:50:00 -0700 Subject: [PATCH 04/21] disable dropwizards gzip --- .../remoting3/servers/jersey/CompressionFilterTest.java | 4 ++-- jersey-servers/src/test/resources/test-server.yml | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/CompressionFilterTest.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/CompressionFilterTest.java index 522718190..4ab9cc073 100644 --- a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/CompressionFilterTest.java +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/CompressionFilterTest.java @@ -124,7 +124,7 @@ public void testHandleWhitespace() throws IOException { public void testNoCompressionWithoutHeader() { Response response = baseRequest(target).get(); - assertThat(response.getHeaderString(HttpHeaders.VARY), is(HttpHeaders.ACCEPT_ENCODING)); + assertThat(response.getHeaderString(HttpHeaders.VARY), is(nullValue())); assertThat(response.getHeaderString(HttpHeaders.CONTENT_ENCODING), is(nullValue())); assertThat(response.readEntity(String.class), is("val")); } @@ -133,7 +133,7 @@ public void testNoCompressionWithoutHeader() { public void testNoCompressionForUncompressableResponse() { Response response = target.path("uncompressible").request().get(); - assertThat(response.getHeaderString(HttpHeaders.VARY), is(HttpHeaders.ACCEPT_ENCODING)); + assertThat(response.getHeaderString(HttpHeaders.VARY), is(nullValue())); assertThat(response.getHeaderString(HttpHeaders.CONTENT_ENCODING), is(nullValue())); assertThat(response.readEntity(String.class), is("value")); } diff --git a/jersey-servers/src/test/resources/test-server.yml b/jersey-servers/src/test/resources/test-server.yml index 6b550ac09..6d20485be 100644 --- a/jersey-servers/src/test/resources/test-server.yml +++ b/jersey-servers/src/test/resources/test-server.yml @@ -6,6 +6,8 @@ server: adminConnectors: - type: http port: 0 + gzip: + enabled: false logging: level: INFO From 3ab55e5816c0f8eccf6e6744b973beae84258280 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Thu, 17 May 2018 12:36:45 +0100 Subject: [PATCH 05/21] no register --- .../com/palantir/remoting3/ext/jackson/ObjectMappers.java | 5 ----- 1 file changed, 5 deletions(-) diff --git a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java index 2a325575c..491bcba72 100644 --- a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java +++ b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java @@ -16,18 +16,14 @@ package com.palantir.remoting3.ext.jackson; -import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; -import com.fasterxml.jackson.databind.module.SimpleModule; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.fasterxml.jackson.dataformat.cbor.CBORFactory; import com.fasterxml.jackson.datatype.guava.GuavaModule; import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import com.fasterxml.jackson.module.afterburner.AfterburnerModule; -import java.nio.file.Path; public final class ObjectMappers { @@ -111,7 +107,6 @@ public static ObjectMapper newCborServerObjectMapper() { */ public static ObjectMapper withDefaultModules(ObjectMapper mapper) { return mapper - .registerModule(new SimpleModule("PathToString").addSerializer(Path.class, new ToStringSerializer())) .registerModule(new GuavaModule()) .registerModule(new Jdk8Module().configureAbsentsAsNulls(true)) .registerModule(new AfterburnerModule()) From 3b43cab80d5edd1065e3322094bd53f93ba5b3cd Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Fri, 18 May 2018 17:26:07 +0100 Subject: [PATCH 06/21] mockito --- versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions.props b/versions.props index aae3cf782..54bf63970 100644 --- a/versions.props +++ b/versions.props @@ -24,6 +24,6 @@ org.glassfish.jersey.*:* = 2.22.2 org.hamcrest:hamcrest-* = 1.3 org.immutables:value = 2.3.10 org.jmock:jmock = 2.8.2 -org.mockito:mockito-core = 2.18.0 +org.mockito:mockito-core = 1.10.19 org.mortbay.jetty.alpn:jetty-alpn-agent = 2.0.7 org.slf4j:slf4j-api = 1.7.12 From 5187ec5e09f130b7a00ad3d71b2f1c2a937ee26f Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Fri, 18 May 2018 17:27:00 +0100 Subject: [PATCH 07/21] remove mockito --- jaxrs-clients/build.gradle | 1 - 1 file changed, 1 deletion(-) diff --git a/jaxrs-clients/build.gradle b/jaxrs-clients/build.gradle index 3076282ee..4a37fad39 100644 --- a/jaxrs-clients/build.gradle +++ b/jaxrs-clients/build.gradle @@ -27,5 +27,4 @@ dependencies { testCompile "io.dropwizard:dropwizard-testing" testCompile "junit:junit" testCompile "org.hamcrest:hamcrest-all" - testCompile "org.mockito:mockito-core" } From 559514b26e2b86cf02275615fe4981ae637be103 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Fri, 18 May 2018 17:37:20 +0100 Subject: [PATCH 08/21] trim down --- .../jaxrs/feignimpl/GuavaTestServer.java | 1 - jersey-servers/build.gradle | 1 - .../EmptyOptionalTo204ExceptionMapper.java | 30 +++++++++++++++++++ .../Java8OptionalMessageBodyWriterTest.java | 7 ----- .../servers/jersey/Java8OptionalTest.java | 8 ----- 5 files changed, 30 insertions(+), 17 deletions(-) create mode 100644 jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/EmptyOptionalTo204ExceptionMapper.java diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java index 2d511e559..5e6e66897 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java @@ -41,7 +41,6 @@ import org.assertj.core.util.Strings; public class GuavaTestServer extends Application { - @Override public final void run(Configuration config, final Environment env) throws Exception { env.jersey().register(HttpRemotingJerseyFeature.INSTANCE); diff --git a/jersey-servers/build.gradle b/jersey-servers/build.gradle index 57660a023..b9d457742 100644 --- a/jersey-servers/build.gradle +++ b/jersey-servers/build.gradle @@ -15,5 +15,4 @@ dependencies { testCompile "io.dropwizard:dropwizard-testing" testCompile "junit:junit" testCompile "org.hamcrest:hamcrest-all" - testCompile "org.mockito:mockito-core" } diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/EmptyOptionalTo204ExceptionMapper.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/EmptyOptionalTo204ExceptionMapper.java new file mode 100644 index 000000000..84a4fb38d --- /dev/null +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/EmptyOptionalTo204ExceptionMapper.java @@ -0,0 +1,30 @@ +/* + * (c) Copyright 2018 Palantir Technologies Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.palantir.remoting3.servers.jersey; + +import io.dropwizard.jersey.optional.EmptyOptionalException; +import javax.ws.rs.core.Response; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +@Provider +public final class EmptyOptionalTo204ExceptionMapper implements ExceptionMapper { + @Override + public Response toResponse(EmptyOptionalException exception) { + return Response.noContent().build(); + } +} diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java index accf4c200..50b8c6f8b 100644 --- a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java @@ -89,13 +89,6 @@ public void absentOptionalsThrowANotFound() throws Exception { assertThat(response.getStatus()).isEqualTo(204); } - @Provider - private static final class EmptyOptionalTo204ExceptionMapper implements ExceptionMapper { - @Override - public Response toResponse(EmptyOptionalException exception) { - return Response.noContent().build(); - } - } @Path("/optional-return/") @Produces(MediaType.TEXT_PLAIN) diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java index 7b98d31f9..1b03256b6 100644 --- a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java @@ -142,14 +142,6 @@ public final void run(Configuration config, final Environment env) throws Except } } - @Provider - private static final class EmptyOptionalTo204ExceptionMapper implements ExceptionMapper { - @Override - public Response toResponse(EmptyOptionalException exception) { - return Response.noContent().build(); - } - } - public static final class OptionalTestResource implements OptionalTestService { @Override public Optional getOptional(@Nullable String value) { From 39014b42863d85a51c989b7a015b19388591787e Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Fri, 18 May 2018 18:03:58 +0100 Subject: [PATCH 09/21] remove more --- .../remoting3/jaxrs/feignimpl/Java8TestServer.java | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java index 39b650a4e..55cf60925 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java @@ -19,11 +19,11 @@ import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; import com.google.common.base.Strings; import com.google.common.collect.ImmutableMap; +import com.palantir.remoting3.servers.jersey.EmptyOptionalTo204ExceptionMapper; import com.palantir.remoting3.servers.jersey.HttpRemotingJerseyFeature; import feign.Util; import io.dropwizard.Application; import io.dropwizard.Configuration; -import io.dropwizard.jersey.optional.EmptyOptionalException; import io.dropwizard.setup.Environment; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -41,9 +41,6 @@ import javax.ws.rs.Produces; import javax.ws.rs.QueryParam; import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import javax.ws.rs.ext.ExceptionMapper; -import javax.ws.rs.ext.Provider; public class Java8TestServer extends Application { @Override @@ -148,14 +145,6 @@ public Java8ComplexType getJava8ComplexType(Java8ComplexType value) { } } - @Provider - private static final class EmptyOptionalTo204ExceptionMapper implements ExceptionMapper { - @Override - public Response toResponse(EmptyOptionalException exception) { - return Response.noContent().build(); - } - } - @Path("/") @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) From 16dda72eff2f00456cd133915d73b860e872c0cc Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Fri, 18 May 2018 18:04:55 +0100 Subject: [PATCH 10/21] no empty line --- .../servers/jersey/Java8OptionalMessageBodyWriterTest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java index 50b8c6f8b..ae5933bca 100644 --- a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java @@ -89,7 +89,6 @@ public void absentOptionalsThrowANotFound() throws Exception { assertThat(response.getStatus()).isEqualTo(204); } - @Path("/optional-return/") @Produces(MediaType.TEXT_PLAIN) public static final class OptionalReturnResource { From 0ae20b8be70ed538e906ec947dd9e941f105eca9 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 21 May 2018 09:29:37 +0100 Subject: [PATCH 11/21] imports --- .../servers/jersey/Java8OptionalMessageBodyWriterTest.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java index ae5933bca..2ff231cd1 100644 --- a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalMessageBodyWriterTest.java @@ -20,7 +20,6 @@ import com.codahale.metrics.MetricRegistry; import io.dropwizard.jersey.DropwizardResourceConfig; -import io.dropwizard.jersey.optional.EmptyOptionalException; import java.util.Optional; import java.util.OptionalDouble; import java.util.OptionalInt; @@ -34,8 +33,6 @@ import javax.ws.rs.core.Application; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; -import javax.ws.rs.ext.ExceptionMapper; -import javax.ws.rs.ext.Provider; import org.glassfish.jersey.test.JerseyTest; import org.glassfish.jersey.test.TestProperties; import org.junit.Test; From 6e4a688069694c2beb037b7a537c458ee4e9e83f Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 21 May 2018 10:41:30 +0100 Subject: [PATCH 12/21] constants --- .../ext/jackson/ObjectMappersTest.java | 8 ++++---- .../ssl/DropwizardSslClientAuthTests.java | 2 ++ .../config/ssl/SslConfigurationTest.java | 18 +++++++++--------- .../remoting3/config/ssl/TestConstants.java | 1 + 4 files changed, 16 insertions(+), 13 deletions(-) diff --git a/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ObjectMappersTest.java b/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ObjectMappersTest.java index ae5e0aac9..4e28f3628 100644 --- a/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ObjectMappersTest.java +++ b/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ObjectMappersTest.java @@ -39,15 +39,15 @@ public final class ObjectMappersTest { @Test public void deserializeJdk7ModuleObject() throws IOException { String pathSeparator = File.pathSeparator; - String json = "\"" + pathSeparator + "tmp" + pathSeparator + "foo.txt\""; + String json = "\"file:///" + pathSeparator + "tmp" + pathSeparator + "foo.txt\""; - assertThat(MAPPER.readValue(json, Path.class)).isEqualTo(Paths.get(":tmp:foo.txt")); + assertThat(MAPPER.readValue(json, Path.class)).isEqualTo(Paths.get("/:tmp:foo.txt")); } @Test public void serializeJdk7ModuleObject() throws JsonProcessingException { - Path path = Paths.get(":tmp:foo.txt"); - assertThat(MAPPER.writeValueAsString(path)).isEqualTo("\":tmp:foo.txt\""); + Path path = Paths.get("/:tmp:foo.txt"); + assertThat(MAPPER.writeValueAsString(path)).isEqualTo("\"file:///:tmp:foo.txt\""); } @Test diff --git a/keystores/src/test/java/com/palantir/remoting3/config/ssl/DropwizardSslClientAuthTests.java b/keystores/src/test/java/com/palantir/remoting3/config/ssl/DropwizardSslClientAuthTests.java index 333e300d8..1c63801c0 100644 --- a/keystores/src/test/java/com/palantir/remoting3/config/ssl/DropwizardSslClientAuthTests.java +++ b/keystores/src/test/java/com/palantir/remoting3/config/ssl/DropwizardSslClientAuthTests.java @@ -52,6 +52,8 @@ public final class DropwizardSslClientAuthTests { TestConstants.SERVER_KEY_STORE_JKS_PASSWORD), ConfigOverride.config("server.applicationConnectors[0].trustStorePath", TestConstants.CA_TRUST_STORE_PATH.toString()), + ConfigOverride.config("server.applicationConnectors[0].trustStorePassword", + TestConstants.CA_TRUST_STIRE_JKS_PASSWORD), ConfigOverride.config("server.applicationConnectors[0].crlPath", TestConstants.COMBINED_CRL_PATH.toString()), ConfigOverride.config("server.applicationConnectors[0].needClientAuth", diff --git a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java index 00dca4120..242305236 100644 --- a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java +++ b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java @@ -28,18 +28,18 @@ public final class SslConfigurationTest { @Test public void testSerDe() throws Exception { SslConfiguration serialized = SslConfiguration.builder() - .trustStorePath(Paths.get("truststore.jks")) + .trustStorePath(Paths.get("/truststore.jks")) .trustStoreType(SslConfiguration.StoreType.JKS) - .keyStorePath(Paths.get("keystore.jks")) + .keyStorePath(Paths.get("/keystore.jks")) .keyStoreType(SslConfiguration.StoreType.JKS) .keyStoreKeyAlias("alias") .keyStorePassword("password") .build(); - String deserializedCamelCase = "{\"trustStorePath\":\"truststore.jks\",\"trustStoreType\":\"JKS\"," - + "\"keyStorePath\":\"keystore.jks\",\"keyStorePassword\":\"password\"," + String deserializedCamelCase = "{\"trustStorePath\":\"file:///truststore.jks\",\"trustStoreType\":\"JKS\"," + + "\"keyStorePath\":\"file:///keystore.jks\",\"keyStorePassword\":\"password\"," + "\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":\"alias\"}"; - String deserializedKebabCase = "{\"trust-store-path\":\"truststore.jks\",\"trust-store-type\":\"JKS\"," - + "\"key-store-path\":\"keystore.jks\",\"key-store-password\":\"password\"," + String deserializedKebabCase = "{\"trust-store-path\":\"file:///truststore.jks\",\"trust-store-type\":\"JKS\"," + + "\"key-store-path\":\"file:///keystore.jks\",\"key-store-password\":\"password\"," + "\"key-store-type\":\"JKS\",\"key-store-key-alias\":\"alias\"}"; assertThat(ObjectMappers.newClientObjectMapper().writeValueAsString(serialized)) @@ -52,10 +52,10 @@ public void testSerDe() throws Exception { @Test public void serDe_optional() throws Exception { - SslConfiguration serialized = SslConfiguration.of(Paths.get("trustStore.jks")); - String deserializedCamelCase = "{\"trustStorePath\":\"trustStore.jks\",\"trustStoreType\":\"JKS\"," + SslConfiguration serialized = SslConfiguration.of(Paths.get("/trustStore.jks")); + String deserializedCamelCase = "{\"trustStorePath\":\"file:///trustStore.jks\",\"trustStoreType\":\"JKS\"," + "\"keyStorePath\":null,\"keyStorePassword\":null,\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":null}"; - String deserializedKebabCase = "{\"trust-store-path\":\"trustStore.jks\",\"trust-store-type\":\"JKS\"," + String deserializedKebabCase = "{\"trust-store-path\":\"file:///trustStore.jks\",\"trust-store-type\":\"JKS\"," + "\"key-store-path\":null,\"key-store-password\":null,\"key-store-type\":\"JKS\"," + "\"key-store-key-alias\":null}"; diff --git a/keystores/src/test/java/com/palantir/remoting3/config/ssl/TestConstants.java b/keystores/src/test/java/com/palantir/remoting3/config/ssl/TestConstants.java index e70a9f71f..3ea1d8888 100644 --- a/keystores/src/test/java/com/palantir/remoting3/config/ssl/TestConstants.java +++ b/keystores/src/test/java/com/palantir/remoting3/config/ssl/TestConstants.java @@ -32,6 +32,7 @@ final class TestConstants { static final Path CA_DER_CERT_PATH = Paths.get("src", "test", "resources", "testCA", "testCA.der"); static final Path CA_PEM_CERT_PATH = Paths.get("src", "test", "resources", "testCA", "testCA.cer"); static final SslConfiguration.StoreType CA_TRUST_STORE_TYPE = SslConfiguration.StoreType.JKS; + static final String CA_TRUST_STIRE_JKS_PASSWORD = "caStore"; static final Path SERVER_KEY_STORE_JKS_PATH = Paths.get( "src", From 88a34bde22165f42c172cbad4eb4a1b1ee80b823 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 21 May 2018 10:43:08 +0100 Subject: [PATCH 13/21] castore password --- keystores/src/test/resources/certSetup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keystores/src/test/resources/certSetup.sh b/keystores/src/test/resources/certSetup.sh index a0b81f102..9224e45fc 100755 --- a/keystores/src/test/resources/certSetup.sh +++ b/keystores/src/test/resources/certSetup.sh @@ -174,7 +174,7 @@ while getopts ":vf" opt; do done # create CA -create_ca_dir "testCA" "changeit" +create_ca_dir "testCA" "caStore" # create keys for server create_key_pair_dir "testServer" "localhost" "testServer" "serverStore" "testCA" From a99404b748a81e93b3cd290037f20369795a4c8e Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 21 May 2018 10:53:01 +0100 Subject: [PATCH 14/21] absolute --- .../palantir/remoting3/config/ssl/SerializationTests.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SerializationTests.java b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SerializationTests.java index 01d3d012d..a6354d94a 100644 --- a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SerializationTests.java +++ b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SerializationTests.java @@ -23,6 +23,7 @@ import com.palantir.remoting.api.config.ssl.SslConfiguration; import com.palantir.remoting3.ext.jackson.ObjectMappers; import java.io.IOException; +import java.nio.file.Paths; import org.junit.Test; public final class SerializationTests { @@ -33,9 +34,9 @@ public final class SerializationTests { public void testJsonSerDe() throws IOException { SslConfiguration sslConfig = SslConfiguration.of( - TestConstants.CA_TRUST_STORE_PATH, - TestConstants.SERVER_KEY_STORE_JKS_PATH, - TestConstants.SERVER_KEY_STORE_JKS_PASSWORD); + Paths.get("/", TestConstants.CA_TRUST_STORE_PATH.toString()), + Paths.get("/", TestConstants.SERVER_KEY_STORE_JKS_PATH.toString()), + Paths.get("/", TestConstants.SERVER_KEY_STORE_JKS_PASSWORD).toString()); assertThat(MAPPER.readValue(MAPPER.writeValueAsBytes(sslConfig), SslConfiguration.class), is(sslConfig)); } From 202eef6e4a3236cd8d4771bb27d49c4978c968db Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 21 May 2018 11:04:25 +0100 Subject: [PATCH 15/21] compilation --- jaxrs-clients/build.gradle | 1 + .../remoting3/jaxrs/feignimpl/Java8TestServer.java | 14 +++++++++++++- jersey-servers/build.gradle | 1 + versions.props | 2 +- 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/jaxrs-clients/build.gradle b/jaxrs-clients/build.gradle index 4a37fad39..3076282ee 100644 --- a/jaxrs-clients/build.gradle +++ b/jaxrs-clients/build.gradle @@ -27,4 +27,5 @@ dependencies { testCompile "io.dropwizard:dropwizard-testing" testCompile "junit:junit" testCompile "org.hamcrest:hamcrest-all" + testCompile "org.mockito:mockito-core" } diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java index 55cf60925..515faf68a 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java @@ -19,11 +19,11 @@ import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; import com.google.common.base.Strings; import com.google.common.collect.ImmutableMap; -import com.palantir.remoting3.servers.jersey.EmptyOptionalTo204ExceptionMapper; import com.palantir.remoting3.servers.jersey.HttpRemotingJerseyFeature; import feign.Util; import io.dropwizard.Application; import io.dropwizard.Configuration; +import io.dropwizard.jersey.optional.EmptyOptionalException; import io.dropwizard.setup.Environment; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -41,6 +41,9 @@ import javax.ws.rs.Produces; import javax.ws.rs.QueryParam; import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.Response; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; public class Java8TestServer extends Application { @Override @@ -51,6 +54,15 @@ public final void run(Configuration config, final Environment env) throws Except env.getObjectMapper().registerModule(new Jdk8Module()); } + @Provider + private static final class EmptyOptionalTo204ExceptionMapper implements ExceptionMapper { + @Override + public Response toResponse(EmptyOptionalException exception) { + return Response.noContent().build(); + } + } + + static class TestResource implements TestService { @Override public Optional> getOptional(@Nullable String value) { diff --git a/jersey-servers/build.gradle b/jersey-servers/build.gradle index b9d457742..57660a023 100644 --- a/jersey-servers/build.gradle +++ b/jersey-servers/build.gradle @@ -15,4 +15,5 @@ dependencies { testCompile "io.dropwizard:dropwizard-testing" testCompile "junit:junit" testCompile "org.hamcrest:hamcrest-all" + testCompile "org.mockito:mockito-core" } diff --git a/versions.props b/versions.props index 54bf63970..3ea74fead 100644 --- a/versions.props +++ b/versions.props @@ -24,6 +24,6 @@ org.glassfish.jersey.*:* = 2.22.2 org.hamcrest:hamcrest-* = 1.3 org.immutables:value = 2.3.10 org.jmock:jmock = 2.8.2 -org.mockito:mockito-core = 1.10.19 +org.mockito:mockito-core = 2.18.3 org.mortbay.jetty.alpn:jetty-alpn-agent = 2.0.7 org.slf4j:slf4j-api = 1.7.12 From 8ddfb850fe2d921c2b5df3327820ae87d83511a9 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 21 May 2018 11:12:42 +0100 Subject: [PATCH 16/21] imports --- .../palantir/remoting3/servers/jersey/Java8OptionalTest.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java index 1b03256b6..d66e220a5 100644 --- a/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java +++ b/jersey-servers/src/test/java/com/palantir/remoting3/servers/jersey/Java8OptionalTest.java @@ -23,7 +23,6 @@ import com.google.common.base.Strings; import io.dropwizard.Application; import io.dropwizard.Configuration; -import io.dropwizard.jersey.optional.EmptyOptionalException; import io.dropwizard.setup.Environment; import io.dropwizard.testing.junit.DropwizardAppRule; import java.util.Optional; @@ -41,8 +40,6 @@ import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import javax.ws.rs.core.Response.Status; -import javax.ws.rs.ext.ExceptionMapper; -import javax.ws.rs.ext.Provider; import org.glassfish.jersey.client.JerseyClientBuilder; import org.junit.Before; import org.junit.ClassRule; From 0031ca61028ae68f3163ffc714c774165409d6da Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Mon, 21 May 2018 22:26:15 +0100 Subject: [PATCH 17/21] absolute path configuration test --- .../config/ssl/SslConfigurationTest.java | 36 +++++++++++++------ 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java index 242305236..1a0811923 100644 --- a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java +++ b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java @@ -28,6 +28,14 @@ public final class SslConfigurationTest { @Test public void testSerDe() throws Exception { SslConfiguration serialized = SslConfiguration.builder() + .trustStorePath(Paths.get("truststore.jks")) + .trustStoreType(SslConfiguration.StoreType.JKS) + .keyStorePath(Paths.get("keystore.jks")) + .keyStoreType(SslConfiguration.StoreType.JKS) + .keyStoreKeyAlias("alias") + .keyStorePassword("password") + .build(); + SslConfiguration serializedAbs = SslConfiguration.builder() .trustStorePath(Paths.get("/truststore.jks")) .trustStoreType(SslConfiguration.StoreType.JKS) .keyStorePath(Paths.get("/keystore.jks")) @@ -35,15 +43,18 @@ public void testSerDe() throws Exception { .keyStoreKeyAlias("alias") .keyStorePassword("password") .build(); - String deserializedCamelCase = "{\"trustStorePath\":\"file:///truststore.jks\",\"trustStoreType\":\"JKS\"," - + "\"keyStorePath\":\"file:///keystore.jks\",\"keyStorePassword\":\"password\"," + String deserializedCamelCase = "{\"trustStorePath\":\"truststore.jks\",\"trustStoreType\":\"JKS\"," + + "\"keyStorePath\":\"keystore.jks\",\"keyStorePassword\":\"password\"," + "\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":\"alias\"}"; - String deserializedKebabCase = "{\"trust-store-path\":\"file:///truststore.jks\",\"trust-store-type\":\"JKS\"," - + "\"key-store-path\":\"file:///keystore.jks\",\"key-store-password\":\"password\"," + String deserializedKebabCase = "{\"trust-store-path\":\"truststore.jks\",\"trust-store-type\":\"JKS\"," + + "\"key-store-path\":\"keystore.jks\",\"key-store-password\":\"password\"," + "\"key-store-type\":\"JKS\",\"key-store-key-alias\":\"alias\"}"; + String deserializedCamelCaseAbs = "{\"trustStorePath\":\"file:///truststore.jks\",\"trustStoreType\":\"JKS\"," + + "\"keyStorePath\":\"file:///keystore.jks\",\"keyStorePassword\":\"password\"," + + "\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":\"alias\"}"; - assertThat(ObjectMappers.newClientObjectMapper().writeValueAsString(serialized)) - .isEqualTo(deserializedCamelCase); + assertThat(ObjectMappers.newClientObjectMapper().writeValueAsString(serializedAbs)) + .isEqualTo(deserializedCamelCaseAbs); assertThat(ObjectMappers.newClientObjectMapper().readValue(deserializedCamelCase, SslConfiguration.class)) .isEqualTo(serialized); assertThat(ObjectMappers.newClientObjectMapper().readValue(deserializedKebabCase, SslConfiguration.class)) @@ -52,15 +63,18 @@ public void testSerDe() throws Exception { @Test public void serDe_optional() throws Exception { - SslConfiguration serialized = SslConfiguration.of(Paths.get("/trustStore.jks")); - String deserializedCamelCase = "{\"trustStorePath\":\"file:///trustStore.jks\",\"trustStoreType\":\"JKS\"," + SslConfiguration serialized = SslConfiguration.of(Paths.get("trustStore.jks")); + SslConfiguration serializedAbs = SslConfiguration.of(Paths.get("/trustStore.jks")); + String deserializedCamelCase = "{\"trustStorePath\":\"trustStore.jks\",\"trustStoreType\":\"JKS\"," + "\"keyStorePath\":null,\"keyStorePassword\":null,\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":null}"; - String deserializedKebabCase = "{\"trust-store-path\":\"file:///trustStore.jks\",\"trust-store-type\":\"JKS\"," + String deserializedKebabCase = "{\"trust-store-path\":\"trustStore.jks\",\"trust-store-type\":\"JKS\"," + "\"key-store-path\":null,\"key-store-password\":null,\"key-store-type\":\"JKS\"," + "\"key-store-key-alias\":null}"; + String deserializedCamelCaseAbs = "{\"trustStorePath\":\"file:///trustStore.jks\",\"trustStoreType\":\"JKS\"," + + "\"keyStorePath\":null,\"keyStorePassword\":null,\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":null}"; - assertThat(ObjectMappers.newClientObjectMapper().writeValueAsString(serialized)) - .isEqualTo(deserializedCamelCase); + assertThat(ObjectMappers.newClientObjectMapper().writeValueAsString(serializedAbs)) + .isEqualTo(deserializedCamelCaseAbs); assertThat(ObjectMappers.newClientObjectMapper().readValue(deserializedCamelCase, SslConfiguration.class)) .isEqualTo(serialized); assertThat(ObjectMappers.newClientObjectMapper().readValue(deserializedKebabCase, SslConfiguration.class)) From c2c5aa1ca675aa7609719e9fb182f168843a417c Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Tue, 22 May 2018 10:16:01 +0100 Subject: [PATCH 18/21] leave jdk7 things in --- .../remoting3/ext/jackson/ObjectMappers.java | 1 + .../ext/jackson/PathDeserializer.java | 63 +++++++++++++++++++ .../remoting3/ext/jackson/ShimJdk7Module.java | 62 ++++++++++++++++++ .../ext/jackson/ShimJdk7ModuleTest.java | 35 +++++++++++ 4 files changed, 161 insertions(+) create mode 100644 extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/PathDeserializer.java create mode 100644 extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ShimJdk7Module.java create mode 100644 extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ShimJdk7ModuleTest.java diff --git a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java index 491bcba72..5ff31ba5b 100644 --- a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java +++ b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ObjectMappers.java @@ -108,6 +108,7 @@ public static ObjectMapper newCborServerObjectMapper() { public static ObjectMapper withDefaultModules(ObjectMapper mapper) { return mapper .registerModule(new GuavaModule()) + .registerModule(new ShimJdk7Module()) .registerModule(new Jdk8Module().configureAbsentsAsNulls(true)) .registerModule(new AfterburnerModule()) .registerModule(new JavaTimeModule()) diff --git a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/PathDeserializer.java b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/PathDeserializer.java new file mode 100644 index 000000000..e452ef1ad --- /dev/null +++ b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/PathDeserializer.java @@ -0,0 +1,63 @@ +/* + * (c) Copyright 2017 Palantir Technologies Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* + * Derived from: https://github.com/FasterXML/jackson-databind/blob/2.7/src/main/java/com/fasterxml/jackson/databind/ext/PathDeserializer.java + * + * Copyright 2016 The Apache Software Foundation (Jackson / FasterXML) + * + * The Apache Software Foundation licenses this file to you under the Apache + * License, version 2.0 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + */ + +package com.palantir.remoting3.ext.jackson; + +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonToken; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; +import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; + +public final class PathDeserializer extends StdScalarDeserializer { + private static final long serialVersionUID = 1; + + public PathDeserializer() { + super(Path.class); + } + + @Override + public Path deserialize(JsonParser parser, DeserializationContext ctxt) throws IOException { + JsonToken token = parser.getCurrentToken(); + if (token != null) { + if (token.isScalarValue()) { + return Paths.get(parser.getValueAsString()); + } + // 16-Oct-2015: should we perhaps allow JSON Arrays (of Strings) as well? + } + throw ctxt.mappingException(Path.class, token); + } +} diff --git a/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ShimJdk7Module.java b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ShimJdk7Module.java new file mode 100644 index 000000000..ef7b55d31 --- /dev/null +++ b/extras/jackson-support/src/main/java/com/palantir/remoting3/ext/jackson/ShimJdk7Module.java @@ -0,0 +1,62 @@ +/* + * (c) Copyright 2017 Palantir Technologies Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* + * Derived from: https://github.com/FasterXML/jackson-datatype-jdk7/blob/master/src/main/java/com/fasterxml/jackson/datatype/jdk7/Jdk7Module.java + * + * Copyright 2016 The Apache Software Foundation (Jackson / FasterXML) + * + * The Apache Software Foundation licenses this file to you under the Apache + * License, version 2.0 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + */ + +package com.palantir.remoting3.ext.jackson; + +import com.fasterxml.jackson.databind.JsonSerializer; +import com.fasterxml.jackson.databind.module.SimpleModule; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import java.nio.file.Path; + +public final class ShimJdk7Module extends SimpleModule { + private static final long serialVersionUID = 1L; + + public ShimJdk7Module() { + super(ShimJdk7Module.class.getCanonicalName()); + + final JsonSerializer stringSer = ToStringSerializer.instance; + addSerializer(Path.class, stringSer); + addDeserializer(Path.class, new PathDeserializer()); + } + + @Override + public int hashCode() { + return getClass().hashCode(); + } + + @Override + public boolean equals(Object obj) { + return this == obj; + } +} diff --git a/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ShimJdk7ModuleTest.java b/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ShimJdk7ModuleTest.java new file mode 100644 index 000000000..bba99f491 --- /dev/null +++ b/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ShimJdk7ModuleTest.java @@ -0,0 +1,35 @@ +/* + * (c) Copyright 2017 Palantir Technologies Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.palantir.remoting3.ext.jackson; + +import static org.assertj.core.api.Assertions.assertThat; + +import com.fasterxml.jackson.databind.ObjectMapper; +import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; +import org.junit.Test; + +public final class ShimJdk7ModuleTest { + + @Test + public void testPathSerDe() throws IOException { + ObjectMapper mapper = new ObjectMapper().registerModule(new ShimJdk7Module()); + String val = mapper.writeValueAsString(Paths.get("a", "b", "c")); + assertThat(mapper.readValue(val, Path.class)).isEqualTo(Paths.get("a", "b", "c")); + } +} From aa8b20f9f31a351c43efdb71952a9fa192a13dd0 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Wed, 23 May 2018 19:31:59 +0100 Subject: [PATCH 19/21] relative paths --- .../ext/jackson/ObjectMappersTest.java | 8 +++---- .../GuavaOptionalAwareDecoderTest.java | 20 ++++++++--------- .../Java8OptionalAwareDecoderTest.java | 4 ++-- .../config/ssl/SerializationTests.java | 7 +++--- .../config/ssl/SslConfigurationTest.java | 22 ++++--------------- 5 files changed, 23 insertions(+), 38 deletions(-) diff --git a/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ObjectMappersTest.java b/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ObjectMappersTest.java index 4e28f3628..ae5e0aac9 100644 --- a/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ObjectMappersTest.java +++ b/extras/jackson-support/src/test/java/com/palantir/remoting3/ext/jackson/ObjectMappersTest.java @@ -39,15 +39,15 @@ public final class ObjectMappersTest { @Test public void deserializeJdk7ModuleObject() throws IOException { String pathSeparator = File.pathSeparator; - String json = "\"file:///" + pathSeparator + "tmp" + pathSeparator + "foo.txt\""; + String json = "\"" + pathSeparator + "tmp" + pathSeparator + "foo.txt\""; - assertThat(MAPPER.readValue(json, Path.class)).isEqualTo(Paths.get("/:tmp:foo.txt")); + assertThat(MAPPER.readValue(json, Path.class)).isEqualTo(Paths.get(":tmp:foo.txt")); } @Test public void serializeJdk7ModuleObject() throws JsonProcessingException { - Path path = Paths.get("/:tmp:foo.txt"); - assertThat(MAPPER.writeValueAsString(path)).isEqualTo("\"file:///:tmp:foo.txt\""); + Path path = Paths.get(":tmp:foo.txt"); + assertThat(MAPPER.writeValueAsString(path)).isEqualTo("\":tmp:foo.txt\""); } @Test diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalAwareDecoderTest.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalAwareDecoderTest.java index 8e8d6a2de..eea329173 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalAwareDecoderTest.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalAwareDecoderTest.java @@ -132,9 +132,9 @@ public void testComplexType() { new GuavaOptionalComplexType( Optional.absent(), Optional.absent(), - Paths.get("/bar"))), + Paths.get("bar"))), Optional.of("baz"), - Paths.get("/foo")); + Paths.get("foo")); // Hint: set breakpoint in Feign's SynchronousMethodHandler#executeAndDecode to inspect serialized parameter. assertThat(service.getGuavaComplexType(value), is(value)); } @@ -144,11 +144,11 @@ public void testCborResponse() { GuavaOptionalComplexType value = new GuavaOptionalComplexType( Optional.of( new GuavaOptionalComplexType( - Optional.absent(), - Optional.absent(), - Paths.get("/bar"))), + Optional.absent(), + Optional.absent(), + Paths.get("bar"))), Optional.of("baz"), - Paths.get("/foo")); + Paths.get("foo")); assertThat(service.getCborResponse(value), is(value)); } @@ -157,11 +157,11 @@ public void testCborRequest() { GuavaOptionalComplexType value = new GuavaOptionalComplexType( Optional.of( new GuavaOptionalComplexType( - Optional.absent(), - Optional.absent(), - Paths.get("/bar"))), + Optional.absent(), + Optional.absent(), + Paths.get("bar"))), Optional.of("baz"), - Paths.get("/foo")); + Paths.get("foo")); assertThat(service.postCborRequest(value), is(value)); } } diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8OptionalAwareDecoderTest.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8OptionalAwareDecoderTest.java index 9dc8a0e14..1c814cf33 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8OptionalAwareDecoderTest.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8OptionalAwareDecoderTest.java @@ -132,9 +132,9 @@ public void testComplexType() { new Java8ComplexType( Optional.empty(), Optional.empty(), - Paths.get("/bar"))), + Paths.get("bar"))), Optional.of("baz"), - Paths.get("/foo")); + Paths.get("foo")); // Hint: set breakpoint in Feign's SynchronousMethodHandler#executeAndDecode to inspect serialized parameter. assertThat(service.getJava8ComplexType(value), is(value)); } diff --git a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SerializationTests.java b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SerializationTests.java index a6354d94a..01d3d012d 100644 --- a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SerializationTests.java +++ b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SerializationTests.java @@ -23,7 +23,6 @@ import com.palantir.remoting.api.config.ssl.SslConfiguration; import com.palantir.remoting3.ext.jackson.ObjectMappers; import java.io.IOException; -import java.nio.file.Paths; import org.junit.Test; public final class SerializationTests { @@ -34,9 +33,9 @@ public final class SerializationTests { public void testJsonSerDe() throws IOException { SslConfiguration sslConfig = SslConfiguration.of( - Paths.get("/", TestConstants.CA_TRUST_STORE_PATH.toString()), - Paths.get("/", TestConstants.SERVER_KEY_STORE_JKS_PATH.toString()), - Paths.get("/", TestConstants.SERVER_KEY_STORE_JKS_PASSWORD).toString()); + TestConstants.CA_TRUST_STORE_PATH, + TestConstants.SERVER_KEY_STORE_JKS_PATH, + TestConstants.SERVER_KEY_STORE_JKS_PASSWORD); assertThat(MAPPER.readValue(MAPPER.writeValueAsBytes(sslConfig), SslConfiguration.class), is(sslConfig)); } diff --git a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java index 1a0811923..00dca4120 100644 --- a/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java +++ b/keystores/src/test/java/com/palantir/remoting3/config/ssl/SslConfigurationTest.java @@ -35,26 +35,15 @@ public void testSerDe() throws Exception { .keyStoreKeyAlias("alias") .keyStorePassword("password") .build(); - SslConfiguration serializedAbs = SslConfiguration.builder() - .trustStorePath(Paths.get("/truststore.jks")) - .trustStoreType(SslConfiguration.StoreType.JKS) - .keyStorePath(Paths.get("/keystore.jks")) - .keyStoreType(SslConfiguration.StoreType.JKS) - .keyStoreKeyAlias("alias") - .keyStorePassword("password") - .build(); String deserializedCamelCase = "{\"trustStorePath\":\"truststore.jks\",\"trustStoreType\":\"JKS\"," + "\"keyStorePath\":\"keystore.jks\",\"keyStorePassword\":\"password\"," + "\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":\"alias\"}"; String deserializedKebabCase = "{\"trust-store-path\":\"truststore.jks\",\"trust-store-type\":\"JKS\"," + "\"key-store-path\":\"keystore.jks\",\"key-store-password\":\"password\"," + "\"key-store-type\":\"JKS\",\"key-store-key-alias\":\"alias\"}"; - String deserializedCamelCaseAbs = "{\"trustStorePath\":\"file:///truststore.jks\",\"trustStoreType\":\"JKS\"," - + "\"keyStorePath\":\"file:///keystore.jks\",\"keyStorePassword\":\"password\"," - + "\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":\"alias\"}"; - assertThat(ObjectMappers.newClientObjectMapper().writeValueAsString(serializedAbs)) - .isEqualTo(deserializedCamelCaseAbs); + assertThat(ObjectMappers.newClientObjectMapper().writeValueAsString(serialized)) + .isEqualTo(deserializedCamelCase); assertThat(ObjectMappers.newClientObjectMapper().readValue(deserializedCamelCase, SslConfiguration.class)) .isEqualTo(serialized); assertThat(ObjectMappers.newClientObjectMapper().readValue(deserializedKebabCase, SslConfiguration.class)) @@ -64,17 +53,14 @@ public void testSerDe() throws Exception { @Test public void serDe_optional() throws Exception { SslConfiguration serialized = SslConfiguration.of(Paths.get("trustStore.jks")); - SslConfiguration serializedAbs = SslConfiguration.of(Paths.get("/trustStore.jks")); String deserializedCamelCase = "{\"trustStorePath\":\"trustStore.jks\",\"trustStoreType\":\"JKS\"," + "\"keyStorePath\":null,\"keyStorePassword\":null,\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":null}"; String deserializedKebabCase = "{\"trust-store-path\":\"trustStore.jks\",\"trust-store-type\":\"JKS\"," + "\"key-store-path\":null,\"key-store-password\":null,\"key-store-type\":\"JKS\"," + "\"key-store-key-alias\":null}"; - String deserializedCamelCaseAbs = "{\"trustStorePath\":\"file:///trustStore.jks\",\"trustStoreType\":\"JKS\"," - + "\"keyStorePath\":null,\"keyStorePassword\":null,\"keyStoreType\":\"JKS\",\"keyStoreKeyAlias\":null}"; - assertThat(ObjectMappers.newClientObjectMapper().writeValueAsString(serializedAbs)) - .isEqualTo(deserializedCamelCaseAbs); + assertThat(ObjectMappers.newClientObjectMapper().writeValueAsString(serialized)) + .isEqualTo(deserializedCamelCase); assertThat(ObjectMappers.newClientObjectMapper().readValue(deserializedCamelCase, SslConfiguration.class)) .isEqualTo(serialized); assertThat(ObjectMappers.newClientObjectMapper().readValue(deserializedKebabCase, SslConfiguration.class)) From d8a95275dc8f18ddd826dfd8265884495c6c091d Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Wed, 23 May 2018 19:41:25 +0100 Subject: [PATCH 20/21] fix jacksons --- .../jaxrs/feignimpl/GuavaOptionalComplexType.java | 10 ++++++++++ .../remoting3/jaxrs/feignimpl/GuavaTestServer.java | 3 +++ .../remoting3/jaxrs/feignimpl/Java8TestServer.java | 6 ++++-- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalComplexType.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalComplexType.java index d151ccf88..e98d55f17 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalComplexType.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaOptionalComplexType.java @@ -18,6 +18,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; +import com.google.common.base.MoreObjects; import com.google.common.base.Optional; import java.nio.file.Path; @@ -49,6 +50,15 @@ public Path getPath() { return path; } + @Override + public String toString() { + return MoreObjects.toStringHelper(this) + .add("nested", nested) + .add("string", string) + .add("path", path) + .toString(); + } + @Override public boolean equals(Object other) { if (this == other) { diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java index 5e6e66897..29abcf1c4 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/GuavaTestServer.java @@ -18,10 +18,12 @@ import com.google.common.base.Optional; import com.google.common.collect.ImmutableMap; +import com.palantir.remoting3.ext.jackson.ObjectMappers; import com.palantir.remoting3.servers.jersey.HttpRemotingJerseyFeature; import feign.Util; import io.dropwizard.Application; import io.dropwizard.Configuration; +import io.dropwizard.jersey.jackson.JacksonMessageBodyProvider; import io.dropwizard.setup.Environment; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -44,6 +46,7 @@ public class GuavaTestServer extends Application { @Override public final void run(Configuration config, final Environment env) throws Exception { env.jersey().register(HttpRemotingJerseyFeature.INSTANCE); + env.jersey().register(new JacksonMessageBodyProvider(ObjectMappers.newServerObjectMapper())); env.jersey().register(new TestResource()); } diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java index 515faf68a..16539346e 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java @@ -19,10 +19,12 @@ import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; import com.google.common.base.Strings; import com.google.common.collect.ImmutableMap; +import com.palantir.remoting3.ext.jackson.ObjectMappers; import com.palantir.remoting3.servers.jersey.HttpRemotingJerseyFeature; import feign.Util; import io.dropwizard.Application; import io.dropwizard.Configuration; +import io.dropwizard.jersey.jackson.JacksonMessageBodyProvider; import io.dropwizard.jersey.optional.EmptyOptionalException; import io.dropwizard.setup.Environment; import java.io.ByteArrayInputStream; @@ -49,9 +51,9 @@ public class Java8TestServer extends Application { @Override public final void run(Configuration config, final Environment env) throws Exception { env.jersey().register(HttpRemotingJerseyFeature.INSTANCE); - env.jersey().register(new TestResource()); + env.jersey().register(new JacksonMessageBodyProvider(ObjectMappers.newServerObjectMapper())); env.jersey().register(new EmptyOptionalTo204ExceptionMapper()); - env.getObjectMapper().registerModule(new Jdk8Module()); + env.jersey().register(new TestResource()); } @Provider From 8dd61efc2e659b2479e5f8316d093b0690d0852b Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Wed, 23 May 2018 19:45:49 +0100 Subject: [PATCH 21/21] checkstyle --- .../com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java | 1 - 1 file changed, 1 deletion(-) diff --git a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java index 16539346e..25818d171 100644 --- a/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java +++ b/jaxrs-clients/src/test/java/com/palantir/remoting3/jaxrs/feignimpl/Java8TestServer.java @@ -16,7 +16,6 @@ package com.palantir.remoting3.jaxrs.feignimpl; -import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; import com.google.common.base.Strings; import com.google.common.collect.ImmutableMap; import com.palantir.remoting3.ext.jackson.ObjectMappers;