forked from loafle/openapi-generator-original
Fixed Java 8 time in Jersey 1 Client
Made the Jersey 1 client work with java 8 time classes. Also tightened up newlines in templates.
This commit is contained in:
parent
b8ebee1ec3
commit
56c6e081d5
@ -1,8 +1,9 @@
|
|||||||
package {{invokerPackage}};
|
package {{invokerPackage}};
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.*;
|
import com.fasterxml.jackson.annotation.*;
|
||||||
import com.fasterxml.jackson.databind.*;
|
import com.fasterxml.jackson.databind.*;{{#java8}}
|
||||||
import com.fasterxml.jackson.datatype.joda.*;
|
import com.fasterxml.jackson.datatype.jsr310.*;{{/java8}}{{^java8}}
|
||||||
|
import com.fasterxml.jackson.datatype.joda.*;{{/java8}}
|
||||||
import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
|
import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
|
||||||
|
|
||||||
import com.sun.jersey.api.client.Client;
|
import com.sun.jersey.api.client.Client;
|
||||||
@ -64,8 +65,9 @@ public class ApiClient {
|
|||||||
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
|
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
|
||||||
objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
|
objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
|
||||||
objectMapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
|
objectMapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
|
||||||
objectMapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING);
|
objectMapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING);{{#java8}}
|
||||||
objectMapper.registerModule(new JodaModule());
|
objectMapper.registerModule(new JavaTimeModule());{{/java8}}{{^java8}}
|
||||||
|
objectMapper.registerModule(new JodaModule());{{/java8}}
|
||||||
objectMapper.setDateFormat(ApiClient.buildDefaultDateFormat());
|
objectMapper.setDateFormat(ApiClient.buildDefaultDateFormat());
|
||||||
|
|
||||||
dateFormat = ApiClient.buildDefaultDateFormat();
|
dateFormat = ApiClient.buildDefaultDateFormat();
|
||||||
|
@ -1,13 +1,9 @@
|
|||||||
package {{invokerPackage}};
|
package {{invokerPackage}};
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.*;
|
import com.fasterxml.jackson.annotation.*;
|
||||||
import com.fasterxml.jackson.databind.*;
|
import com.fasterxml.jackson.databind.*;{{#java8}}
|
||||||
{{#java8}}
|
import com.fasterxml.jackson.datatype.jsr310.*;{{/java8}}{{^java8}}
|
||||||
import com.fasterxml.jackson.datatype.jsr310.*;
|
import com.fasterxml.jackson.datatype.joda.*;{{/java8}}
|
||||||
{{/java8}}
|
|
||||||
{{^java8}}
|
|
||||||
import com.fasterxml.jackson.datatype.joda.*;
|
|
||||||
{{/java8}}
|
|
||||||
|
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
|
|
||||||
@ -23,13 +19,9 @@ public class JSON implements ContextResolver<ObjectMapper> {
|
|||||||
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
|
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
|
||||||
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
|
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
|
||||||
mapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
|
mapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
|
||||||
mapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING);
|
mapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING);{{#java8}}
|
||||||
{{#java8}}
|
mapper.registerModule(new JavaTimeModule());{{/java8}}{{^java8}}
|
||||||
mapper.registerModule(new JavaTimeModule());
|
mapper.registerModule(new JodaModule());{{/java8}}
|
||||||
{{/java8}}
|
|
||||||
{{^java8}}
|
|
||||||
mapper.registerModule(new JodaModule());
|
|
||||||
{{/java8}}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -31,15 +31,11 @@ if(hasProperty('target') && target == 'android') {
|
|||||||
minSdkVersion 14
|
minSdkVersion 14
|
||||||
targetSdkVersion 23
|
targetSdkVersion 23
|
||||||
}
|
}
|
||||||
compileOptions {
|
compileOptions { {{#java8}}
|
||||||
{{#java8}}
|
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility JavaVersion.VERSION_1_8
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_1_8{{/java8}}{{^java8}}
|
||||||
{{/java8}}
|
|
||||||
{{^java8}}
|
|
||||||
sourceCompatibility JavaVersion.VERSION_1_7
|
sourceCompatibility JavaVersion.VERSION_1_7
|
||||||
targetCompatibility JavaVersion.VERSION_1_7
|
targetCompatibility JavaVersion.VERSION_1_7{{/java8}}
|
||||||
{{/java8}}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Rename the aar correctly
|
// Rename the aar correctly
|
||||||
@ -83,15 +79,11 @@ if(hasProperty('target') && target == 'android') {
|
|||||||
|
|
||||||
apply plugin: 'java'
|
apply plugin: 'java'
|
||||||
apply plugin: 'maven'
|
apply plugin: 'maven'
|
||||||
|
|
||||||
{{#java8}}
|
{{#java8}}
|
||||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||||
targetCompatibility = JavaVersion.VERSION_1_8
|
targetCompatibility = JavaVersion.VERSION_1_8{{/java8}}{{^java8}}
|
||||||
{{/java8}}
|
|
||||||
{{^java8}}
|
|
||||||
sourceCompatibility = JavaVersion.VERSION_1_7
|
sourceCompatibility = JavaVersion.VERSION_1_7
|
||||||
targetCompatibility = JavaVersion.VERSION_1_7
|
targetCompatibility = JavaVersion.VERSION_1_7{{/java8}}
|
||||||
{{/java8}}
|
|
||||||
|
|
||||||
install {
|
install {
|
||||||
repositories.mavenInstaller {
|
repositories.mavenInstaller {
|
||||||
@ -108,10 +100,8 @@ if(hasProperty('target') && target == 'android') {
|
|||||||
ext {
|
ext {
|
||||||
swagger_annotations_version = "1.5.8"
|
swagger_annotations_version = "1.5.8"
|
||||||
jackson_version = "2.7.0"
|
jackson_version = "2.7.0"
|
||||||
jersey_version = "2.22.2"
|
jersey_version = "2.22.2"{{^java8}}
|
||||||
{{^java8}}
|
jodatime_version = "2.9.3"{{/java8}}
|
||||||
jodatime_version = "2.9.3"
|
|
||||||
{{/java8}}
|
|
||||||
junit_version = "4.12"
|
junit_version = "4.12"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -122,15 +112,10 @@ dependencies {
|
|||||||
compile "org.glassfish.jersey.media:jersey-media-json-jackson:2.22.1"
|
compile "org.glassfish.jersey.media:jersey-media-json-jackson:2.22.1"
|
||||||
compile "com.fasterxml.jackson.core:jackson-core:$jackson_version"
|
compile "com.fasterxml.jackson.core:jackson-core:$jackson_version"
|
||||||
compile "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
|
compile "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
|
||||||
compile "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
|
compile "com.fasterxml.jackson.core:jackson-databind:$jackson_version"{{#java8}}
|
||||||
{{#java8}}
|
compile "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:$jackson_version"{{/java8}}{{^java8}}
|
||||||
compile "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:$jackson_version"
|
|
||||||
{{/java8}}
|
|
||||||
{{^java8}}
|
|
||||||
compile "com.fasterxml.jackson.datatype:jackson-datatype-joda:2.1.5"
|
compile "com.fasterxml.jackson.datatype:jackson-datatype-joda:2.1.5"
|
||||||
compile "joda-time:joda-time:$jodatime_version"
|
compile "joda-time:joda-time:$jodatime_version"{{/java8}}
|
||||||
{{/java8}}
|
|
||||||
|
|
||||||
compile "com.brsanthu:migbase64:2.2"
|
compile "com.brsanthu:migbase64:2.2"
|
||||||
testCompile "junit:junit:$junit_version"
|
testCompile "junit:junit:$junit_version"
|
||||||
}
|
}
|
||||||
|
@ -15,14 +15,10 @@ lazy val root = (project in file(".")).
|
|||||||
"org.glassfish.jersey.media" % "jersey-media-json-jackson" % "2.22.1",
|
"org.glassfish.jersey.media" % "jersey-media-json-jackson" % "2.22.1",
|
||||||
"com.fasterxml.jackson.core" % "jackson-core" % "2.7.0",
|
"com.fasterxml.jackson.core" % "jackson-core" % "2.7.0",
|
||||||
"com.fasterxml.jackson.core" % "jackson-annotations" % "2.7.0",
|
"com.fasterxml.jackson.core" % "jackson-annotations" % "2.7.0",
|
||||||
"com.fasterxml.jackson.core" % "jackson-databind" % "2.7.0",
|
"com.fasterxml.jackson.core" % "jackson-databind" % "2.7.0",{{#java8}}
|
||||||
{{#java8}}
|
"com.fasterxml.jackson.datatype" % "jackson-datatype-jsr310" % "2.7.0",{{/java8}}{{^java8}}
|
||||||
"com.fasterxml.jackson.datatype" % "jackson-datatype-jsr310" % "2.7.0",
|
|
||||||
{{/java8}}
|
|
||||||
{{^java8}}
|
|
||||||
"com.fasterxml.jackson.datatype" % "jackson-datatype-joda" % "2.1.5",
|
"com.fasterxml.jackson.datatype" % "jackson-datatype-joda" % "2.1.5",
|
||||||
"joda-time" % "joda-time" % "2.9.3",
|
"joda-time" % "joda-time" % "2.9.3",{{/java8}}
|
||||||
{{/java8}}
|
|
||||||
"com.brsanthu" % "migbase64" % "2.2",
|
"com.brsanthu" % "migbase64" % "2.2",
|
||||||
"junit" % "junit" % "4.12" % "test",
|
"junit" % "junit" % "4.12" % "test",
|
||||||
"com.novocode" % "junit-interface" % "0.10" % "test"
|
"com.novocode" % "junit-interface" % "0.10" % "test"
|
||||||
|
@ -99,15 +99,11 @@
|
|||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-compiler-plugin</artifactId>
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
<version>2.3.2</version>
|
<version>2.3.2</version>
|
||||||
<configuration>
|
<configuration>{{#java8}}
|
||||||
{{#java8}}
|
|
||||||
<source>1.8</source>
|
<source>1.8</source>
|
||||||
<target>1.8</target>
|
<target>1.8</target>{{/java8}}{{^java8}}
|
||||||
{{/java8}}
|
|
||||||
{{^java8}}
|
|
||||||
<source>1.7</source>
|
<source>1.7</source>
|
||||||
<target>1.7</target>
|
<target>1.7</target>{{/java8}}
|
||||||
{{/java8}}
|
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
<!-- For testing build.gradle -->
|
<!-- For testing build.gradle -->
|
||||||
@ -172,15 +168,12 @@
|
|||||||
<groupId>com.fasterxml.jackson.core</groupId>
|
<groupId>com.fasterxml.jackson.core</groupId>
|
||||||
<artifactId>jackson-databind</artifactId>
|
<artifactId>jackson-databind</artifactId>
|
||||||
<version>${jackson-version}</version>
|
<version>${jackson-version}</version>
|
||||||
</dependency>
|
</dependency>{{#java8}}
|
||||||
{{#java8}}
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.fasterxml.jackson.datatype</groupId>
|
<groupId>com.fasterxml.jackson.datatype</groupId>
|
||||||
<artifactId>jackson-datatype-jsr310</artifactId>
|
<artifactId>jackson-datatype-jsr310</artifactId>
|
||||||
<version>${jackson-version}</version>
|
<version>${jackson-version}</version>
|
||||||
</dependency>
|
</dependency>{{/java8}}{{^java8}}
|
||||||
{{/java8}}
|
|
||||||
{{^java8}}
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.fasterxml.jackson.datatype</groupId>
|
<groupId>com.fasterxml.jackson.datatype</groupId>
|
||||||
<artifactId>jackson-datatype-joda</artifactId>
|
<artifactId>jackson-datatype-joda</artifactId>
|
||||||
@ -190,8 +183,7 @@
|
|||||||
<groupId>joda-time</groupId>
|
<groupId>joda-time</groupId>
|
||||||
<artifactId>joda-time</artifactId>
|
<artifactId>joda-time</artifactId>
|
||||||
<version>${jodatime-version}</version>
|
<version>${jodatime-version}</version>
|
||||||
</dependency>
|
</dependency>{{/java8}}
|
||||||
{{/java8}}
|
|
||||||
|
|
||||||
<!-- Base64 encoding that works in both JVM and Android -->
|
<!-- Base64 encoding that works in both JVM and Android -->
|
||||||
<dependency>
|
<dependency>
|
||||||
@ -211,10 +203,8 @@
|
|||||||
<properties>
|
<properties>
|
||||||
<swagger-core-version>1.5.8</swagger-core-version>
|
<swagger-core-version>1.5.8</swagger-core-version>
|
||||||
<jersey-version>2.22.2</jersey-version>
|
<jersey-version>2.22.2</jersey-version>
|
||||||
<jackson-version>2.7.0</jackson-version>
|
<jackson-version>2.7.0</jackson-version>{{^java8}}
|
||||||
{{^java8}}
|
<jodatime-version>2.9.3</jodatime-version>{{/java8}}
|
||||||
<jodatime-version>2.9.3</jodatime-version>
|
|
||||||
{{/java8}}
|
|
||||||
<maven-plugin-version>1.0.0</maven-plugin-version>
|
<maven-plugin-version>1.0.0</maven-plugin-version>
|
||||||
<junit-version>4.12</junit-version>
|
<junit-version>4.12</junit-version>
|
||||||
</properties>
|
</properties>
|
||||||
|
@ -96,9 +96,11 @@
|
|||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-compiler-plugin</artifactId>
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
<version>2.3.2</version>
|
<version>2.3.2</version>
|
||||||
<configuration>
|
<configuration>{{#java8}}
|
||||||
|
<source>1.8</source>
|
||||||
|
<target>1.8</target>{{/java8}}{{^java8}}
|
||||||
<source>1.7</source>
|
<source>1.7</source>
|
||||||
<target>1.7</target>
|
<target>1.7</target>{{/java8}}
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
@ -142,7 +144,12 @@
|
|||||||
<groupId>com.fasterxml.jackson.jaxrs</groupId>
|
<groupId>com.fasterxml.jackson.jaxrs</groupId>
|
||||||
<artifactId>jackson-jaxrs-json-provider</artifactId>
|
<artifactId>jackson-jaxrs-json-provider</artifactId>
|
||||||
<version>${jackson-version}</version>
|
<version>${jackson-version}</version>
|
||||||
</dependency>
|
</dependency>{{#java8}}
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.fasterxml.jackson.datatype</groupId>
|
||||||
|
<artifactId>jackson-datatype-jsr310</artifactId>
|
||||||
|
<version>${jackson-version}</version>
|
||||||
|
</dependency>{{/java8}}{{^java8}}
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.fasterxml.jackson.datatype</groupId>
|
<groupId>com.fasterxml.jackson.datatype</groupId>
|
||||||
<artifactId>jackson-datatype-joda</artifactId>
|
<artifactId>jackson-datatype-joda</artifactId>
|
||||||
@ -152,7 +159,7 @@
|
|||||||
<groupId>joda-time</groupId>
|
<groupId>joda-time</groupId>
|
||||||
<artifactId>joda-time</artifactId>
|
<artifactId>joda-time</artifactId>
|
||||||
<version>${jodatime-version}</version>
|
<version>${jodatime-version}</version>
|
||||||
</dependency>
|
</dependency>{{/java8}}
|
||||||
|
|
||||||
<!-- Base64 encoding that works in both JVM and Android -->
|
<!-- Base64 encoding that works in both JVM and Android -->
|
||||||
<dependency>
|
<dependency>
|
||||||
@ -173,8 +180,8 @@
|
|||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
<swagger-annotations-version>1.5.8</swagger-annotations-version>
|
<swagger-annotations-version>1.5.8</swagger-annotations-version>
|
||||||
<jersey-version>1.19.1</jersey-version>
|
<jersey-version>1.19.1</jersey-version>
|
||||||
<jackson-version>2.7.0</jackson-version>
|
<jackson-version>2.7.0</jackson-version>{{^java8}}
|
||||||
<jodatime-version>2.9.3</jodatime-version>
|
<jodatime-version>2.9.3</jodatime-version>{{/java8}}
|
||||||
<maven-plugin-version>1.0.0</maven-plugin-version>
|
<maven-plugin-version>1.0.0</maven-plugin-version>
|
||||||
<junit-version>4.12</junit-version>
|
<junit-version>4.12</junit-version>
|
||||||
</properties>
|
</properties>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user