diff --git a/.travis.yml b/.travis.yml
index 5694414f3ec..f4b2862d962 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -88,20 +88,24 @@ script:
- set -e
# fail if templates/generators contain carriage return '\r'
- /bin/bash ./bin/utils/detect_carriage_return.sh
+ # fail if generators contain merge conflicts
+ - /bin/bash ./bin/utils/detect_merge_conflict.sh
# fail if generators contain tab '\t'
- /bin/bash ./bin/utils/detect_tab_in_java_class.sh
# run integration tests defined in maven pom.xml
- mvn -q --batch-mode verify -Psamples
+### docker-related tasks have been moved to CircleCI
# docker: build generator image and push to Docker Hub
#- if [ $DOCKER_HUB_USERNAME ]; then docker login --email=$DOCKER_HUB_EMAIL --username=$DOCKER_HUB_USERNAME --password=$DOCKER_HUB_PASSWORD && docker build -t $DOCKER_GENERATOR_IMAGE_NAME ./modules/swagger-generator && if [ ! -z "$TRAVIS_TAG" ]; then docker tag $DOCKER_GENERATOR_IMAGE_NAME:latest $DOCKER_GENERATOR_IMAGE_NAME:$TRAVIS_TAG; fi && if [ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" = "master" ]; then docker push $DOCKER_GENERATOR_IMAGE_NAME; fi; fi
## docker: build cli image and push to Docker Hub
#- if [ $DOCKER_HUB_USERNAME ]; then docker login --email=$DOCKER_HUB_EMAIL --username=$DOCKER_HUB_USERNAME --password=$DOCKER_HUB_PASSWORD && docker build -t $DOCKER_CODEGEN_CLI_IMAGE_NAME ./modules/swagger-codegen-cli && if [ ! -z "$TRAVIS_TAG" ]; then docker tag $DOCKER_CODEGEN_CLI_IMAGE_NAME:latest $DOCKER_CODEGEN_CLI_IMAGE_NAME:$TRAVIS_TAG; fi && if [ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" = "master" ]; then docker push $DOCKER_CODEGEN_CLI_IMAGE_NAME; fi; fi
-
-env:
- - DOCKER_GENERATOR_IMAGE_NAME=swaggerapi/swagger-generator DOCKER_CODEGEN_CLI_IMAGE_NAME=swaggerapi/swagger-codegen-cli
+#env:
+# - DOCKER_GENERATOR_IMAGE_NAME=swaggerapi/swagger-generator DOCKER_CODEGEN_CLI_IMAGE_NAME=swaggerapi/swagger-codegen-cli
after_success:
- - if [ $SONATYPE_USERNAME ] && [ -z $TRAVIS_TAG ] && [ $TRAVIS_PULL_REQUEST == false ]; then
+ # push a snapshot version to maven repo
+ - if [ $SONATYPE_USERNAME ] && [ -z $TRAVIS_TAG ] && [ "$TRAVIS_BRANCH" = "master" ]; then
mvn clean deploy --settings .travis/settings.xml;
+ echo "Finished mvn clean deploy";
fi;
diff --git a/README.md b/README.md
index 9120cf48c34..4cc3194646f 100644
--- a/README.md
+++ b/README.md
@@ -27,6 +27,7 @@ This is the swagger codegen project, which allows generation of API client libra
- **API clients**: **ActionScript**, **Apex**, **Bash**, **C#** (.net 2.0, 4.0 or later), **C++** (cpprest, Qt5, Tizen), **Clojure**, **Dart**, **Elixir**, **Go**, **Groovy**, **Haskell**, **Java** (Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign), **Kotlin**, **Node.js** (ES5, ES6, AngularJS with Google Closure Compiler annotations) **Objective-C**, **Perl**, **PHP**, **PowerShell**, **Python**, **Ruby**, **Scala**, **Swift** (2.x, 3.x), **Typescript** (Angular1.x, Angular2.x, Fetch, jQuery, Node)
- **Server stubs**: **C#** (ASP.NET Core, NancyFx), **C++** (Pistache, Restbed), **Erlang**, **Go**, **Haskell**, **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, RestEasy, Play Framework), **PHP** (Lumen, Slim, Silex, [Zend Expressive](https://github.com/zendframework/zend-expressive)), **Python** (Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Scala** ([Finch](https://github.com/finagle/finch), Scalatra)
- **API documentation generators**: **HTML**, **Confluence Wiki**
+- **Configuration files**: [**Apache2**](https://httpd.apache.org/)
- **Others**: **JMeter**
Check out [OpenAPI-Spec](https://github.com/OAI/OpenAPI-Specification) for additional information about the OpenAPI project.
@@ -775,6 +776,7 @@ Here are some companies/projects using Swagger Codegen in production. To add you
- [Kubernetes](https://kubernetes.io/)
- [LANDR Audio](https://www.landr.com/)
- [Lascaux](http://www.lascaux.it/)
+- [Leanix](http://www.leanix.net/)
- [Leica Geosystems AG](http://leica-geosystems.com)
- [LiveAgent](https://www.ladesk.com/)
- [LXL Tech](http://lxltech.com)
@@ -968,6 +970,8 @@ Here is a list of template creators:
* Documentation
* HTML Doc 2: @jhitchcock
* Confluence Wiki: @jhitchcock
+ * Configuration
+ * Apache2: @stkrwork
## How to join the core team
diff --git a/bin/javascript-closure-angular.sh b/bin/javascript-closure-angular.sh
index 9ef43666f88..418920f0233 100755
--- a/bin/javascript-closure-angular.sh
+++ b/bin/javascript-closure-angular.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -i modules/swagger-codegen/src/test/resources/2_0/petstore.yaml -l javascript-closure-angular -o samples/client/petstore/javascript-closure-angular"
+ags="generate -i modules/swagger-codegen/src/test/resources/2_0/petstore.yaml -l javascript-closure-angular -o samples/client/petstore/javascript-closure-angular $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/javascript-es6-petstore.sh b/bin/javascript-es6-petstore.sh
index c9f3b7b6ffd..b2e370e5c9a 100755
--- a/bin/javascript-es6-petstore.sh
+++ b/bin/javascript-es6-petstore.sh
@@ -26,9 +26,9 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/Javascript/es6 \
+ags="generate -t modules/swagger-codegen/src/main/resources/Javascript/es6 \
-i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l javascript \
-o samples/client/petstore/javascript-es6 \
---additional-properties useES6=true"
+--additional-properties useES6=true $@"
java -DappName=PetstoreClient $JAVA_OPTS -jar $executable $ags
diff --git a/bin/javascript-petstore.sh b/bin/javascript-petstore.sh
index 984cfca32de..5d87a78b945 100755
--- a/bin/javascript-petstore.sh
+++ b/bin/javascript-petstore.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/Javascript -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l javascript -o samples/client/petstore/javascript -DappName=PetstoreClient --additional-properties useES6=false"
+ags="generate -t modules/swagger-codegen/src/main/resources/Javascript -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l javascript -o samples/client/petstore/javascript -DappName=PetstoreClient --additional-properties useES6=false $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/javascript-promise-es6-petstore.sh b/bin/javascript-promise-es6-petstore.sh
index ec4e1bda37c..e08208cfa27 100755
--- a/bin/javascript-promise-es6-petstore.sh
+++ b/bin/javascript-promise-es6-petstore.sh
@@ -26,9 +26,9 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/Javascript/es6 \
+ags="generate -t modules/swagger-codegen/src/main/resources/Javascript/es6 \
-i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l javascript \
-o samples/client/petstore/javascript-promise-es6 \
---additional-properties usePromises=true,useES6=true"
+--additional-properties usePromises=true,useES6=true $@"
java -DappName=PetstoreClient $JAVA_OPTS -jar $executable $ags
diff --git a/bin/javascript-promise-petstore.sh b/bin/javascript-promise-petstore.sh
index fa8e346629c..fc3d9d07219 100755
--- a/bin/javascript-promise-petstore.sh
+++ b/bin/javascript-promise-petstore.sh
@@ -26,12 +26,12 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate \
+ags="generate \
-t modules/swagger-codegen/src/main/resources/Javascript \
-i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml \
-l javascript \
-o samples/client/petstore/javascript-promise \
--additional-properties usePromises=true,useES6=false \
--DappName=PetstoreClient"
+-DappName=PetstoreClient $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/php-petstore.sh b/bin/php-petstore.sh
index 3b25c1c1cc3..98a8dc708aa 100755
--- a/bin/php-petstore.sh
+++ b/bin/php-petstore.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/php -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l php -o samples/client/petstore/php"
+ags="generate -t modules/swagger-codegen/src/main/resources/php -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l php -o samples/client/petstore/php $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/python-petstore.sh b/bin/python-petstore.sh
index 0fe89ea39ed..664cae449a9 100755
--- a/bin/python-petstore.sh
+++ b/bin/python-petstore.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/python -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l python -o samples/client/petstore/python -DpackageName=petstore_api"
+ags="generate -t modules/swagger-codegen/src/main/resources/python -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l python -o samples/client/petstore/python -DpackageName=petstore_api $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/ruby-petstore.sh b/bin/ruby-petstore.sh
index f1c87e32028..1c12b7e34de 100755
--- a/bin/ruby-petstore.sh
+++ b/bin/ruby-petstore.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/ruby -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l ruby -c bin/ruby-petstore.json -o samples/client/petstore/ruby"
+ags="generate -t modules/swagger-codegen/src/main/resources/ruby -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l ruby -c bin/ruby-petstore.json -o samples/client/petstore/ruby $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/swift-petstore-promisekit.sh b/bin/swift-petstore-promisekit.sh
index d2787a876a0..adbfe404195 100755
--- a/bin/swift-petstore-promisekit.sh
+++ b/bin/swift-petstore-promisekit.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/swift -i modules/swagger-codegen/src/test/resources/2_0/petstore.json -l swift -c ./bin/swift-petstore-promisekit.json -o samples/client/petstore/swift/promisekit"
+ags="generate -t modules/swagger-codegen/src/main/resources/swift -i modules/swagger-codegen/src/test/resources/2_0/petstore.json -l swift -c ./bin/swift-petstore-promisekit.json -o samples/client/petstore/swift/promisekit $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/swift-petstore-rxswift.sh b/bin/swift-petstore-rxswift.sh
index c140ed7f908..5485f496f82 100755
--- a/bin/swift-petstore-rxswift.sh
+++ b/bin/swift-petstore-rxswift.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/swift -i modules/swagger-codegen/src/test/resources/2_0/petstore.json -l swift -c ./bin/swift-petstore-rxswift.json -o samples/client/petstore/swift/rxswift"
+ags="generate -t modules/swagger-codegen/src/main/resources/swift -i modules/swagger-codegen/src/test/resources/2_0/petstore.json -l swift -c ./bin/swift-petstore-rxswift.json -o samples/client/petstore/swift/rxswift $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/swift-petstore.sh b/bin/swift-petstore.sh
index 3747b3adca4..c8628354dac 100755
--- a/bin/swift-petstore.sh
+++ b/bin/swift-petstore.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/swift -i modules/swagger-codegen/src/test/resources/2_0/petstore.json -l swift -c ./bin/swift-petstore.json -o samples/client/petstore/swift/default"
+ags="generate -t modules/swagger-codegen/src/main/resources/swift -i modules/swagger-codegen/src/test/resources/2_0/petstore.json -l swift -c ./bin/swift-petstore.json -o samples/client/petstore/swift/default $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/swift3-petstore-promisekit.sh b/bin/swift3-petstore-promisekit.sh
index 3cf41441d3b..9b61150e9a2 100755
--- a/bin/swift3-petstore-promisekit.sh
+++ b/bin/swift3-petstore-promisekit.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/swift3 -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l swift3 -c ./bin/swift3-petstore-promisekit.json -o samples/client/petstore/swift3/promisekit"
+ags="generate -t modules/swagger-codegen/src/main/resources/swift3 -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l swift3 -c ./bin/swift3-petstore-promisekit.json -o samples/client/petstore/swift3/promisekit $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/swift3-petstore-rxswift.sh b/bin/swift3-petstore-rxswift.sh
index a3e3043e447..9bb8a35b364 100755
--- a/bin/swift3-petstore-rxswift.sh
+++ b/bin/swift3-petstore-rxswift.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/swift3 -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l swift3 -c ./bin/swift3-petstore-rxswift.json -o samples/client/petstore/swift3/rxswift"
+ags="generate -t modules/swagger-codegen/src/main/resources/swift3 -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l swift3 -c ./bin/swift3-petstore-rxswift.json -o samples/client/petstore/swift3/rxswift $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/swift3-petstore.sh b/bin/swift3-petstore.sh
index fe465cbea9b..f6d5ed712a1 100755
--- a/bin/swift3-petstore.sh
+++ b/bin/swift3-petstore.sh
@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="$@ generate -t modules/swagger-codegen/src/main/resources/swift3 -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l swift3 -c ./bin/swift3-petstore.json -o samples/client/petstore/swift3/default"
+ags="generate -t modules/swagger-codegen/src/main/resources/swift3 -i modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -l swift3 -c ./bin/swift3-petstore.json -o samples/client/petstore/swift3/default $@"
java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/utils/detect_merge_conflict.sh b/bin/utils/detect_merge_conflict.sh
new file mode 100755
index 00000000000..520c9d5c060
--- /dev/null
+++ b/bin/utils/detect_merge_conflict.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+# grep for '<<<<<<< HEAD' in swagger codegen
+grep -RUIl '<<<<<<< HEAD' modules/swagger-codegen/src
+
+if [ $? -ne 1 ]; then
+ echo "modules/swagger-codegen/src contain merge conflicts '<<<<<<< HEAD'. Please remove it and try again."
+ exit 1;
+fi
+
+# grep for '<<<<<<< HEAD' in the samples
+grep -RUIl '<<<<<<< HEAD' samples/
+
+if [ $? -ne 1 ]; then
+ echo "samples/ contain merge conflicts '<<<<<<< HEAD'. Please remove it and try again."
+ exit 1;
+fi
diff --git a/modules/swagger-codegen-maven-plugin/examples/java-client.xml b/modules/swagger-codegen-maven-plugin/examples/java-client.xml
index d1ce8703bc0..4ad322b060d 100644
--- a/modules/swagger-codegen-maven-plugin/examples/java-client.xml
+++ b/modules/swagger-codegen-maven-plugin/examples/java-client.xml
@@ -120,7 +120,7 @@
1.5.8
2.22.2
- 2.7.0
+ 2.8.9
2.7
1.0.0
4.8.1
diff --git a/modules/swagger-codegen-maven-plugin/pom.xml b/modules/swagger-codegen-maven-plugin/pom.xml
index 5b39d306823..96424dcc063 100644
--- a/modules/swagger-codegen-maven-plugin/pom.xml
+++ b/modules/swagger-codegen-maven-plugin/pom.xml
@@ -13,6 +13,9 @@
swagger-codegen (maven-plugin)
maven-plugin
maven plugin to build modules from swagger codegen
+
+ 3.2.5
+
UTF-8
diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java
index 35688ec366c..f500d72fc8f 100644
--- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java
+++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java
@@ -2579,8 +2579,8 @@ public class DefaultCodegen {
name = typeMapping.get(name);
p.baseType = name;
} else {
- p.baseType = name;
name = toModelName(name);
+ p.baseType = name;
if (defaultIncludes.contains(name)) {
imports.add(name);
}
diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/Apache2ConfigCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/Apache2ConfigCodegen.java
index 0027e6920cf..7a26d91d7bd 100644
--- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/Apache2ConfigCodegen.java
+++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/Apache2ConfigCodegen.java
@@ -78,8 +78,8 @@ public class Apache2ConfigCodegen extends DefaultCodegen implements CodegenConfi
item = "*";
}
splitPath.add(item);
+ op.path += item + "/";
}
- op.path = String.join("/", splitPath);
op.vendorExtensions.put("x-codegen-userInfoPath", userInfoPath);
boolean foundInNewList = false;
for (CodegenOperation op1 : newOpList) {
diff --git a/modules/swagger-codegen/src/main/resources/Java/libraries/feign/pom.mustache b/modules/swagger-codegen/src/main/resources/Java/libraries/feign/pom.mustache
index 32cb2e4302e..22b20b7e8f4 100644
--- a/modules/swagger-codegen/src/main/resources/Java/libraries/feign/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/Java/libraries/feign/pom.mustache
@@ -266,7 +266,7 @@
1.5.15
9.4.0
2.1.0
- 2.8.7
+ 2.8.9
{{#threetenbp}}
2.6.4
{{/threetenbp}}
diff --git a/modules/swagger-codegen/src/main/resources/Java/libraries/jersey2/pom.mustache b/modules/swagger-codegen/src/main/resources/Java/libraries/jersey2/pom.mustache
index b885c4ef26b..400ff3e8cbe 100644
--- a/modules/swagger-codegen/src/main/resources/Java/libraries/jersey2/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/Java/libraries/jersey2/pom.mustache
@@ -243,7 +243,6 @@
${jackson-version}
{{/threetenbp}}
-
{{^java8}}
@@ -258,14 +257,12 @@
commons-lang3
${commons_lang3_version}
-
commons-io
commons-io
${commons_io_version}
{{/supportJava6}}
-
junit
diff --git a/modules/swagger-codegen/src/main/resources/Java/libraries/resteasy/pom.mustache b/modules/swagger-codegen/src/main/resources/Java/libraries/resteasy/pom.mustache
index bd22192d146..02af44621a4 100644
--- a/modules/swagger-codegen/src/main/resources/Java/libraries/resteasy/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/Java/libraries/resteasy/pom.mustache
@@ -206,7 +206,7 @@
1.5.15
3.1.3.Final
- 2.7.5
+ 2.8.9
{{^java8}}
2.9.9
{{/java8}}
diff --git a/modules/swagger-codegen/src/main/resources/Java/pom.mustache b/modules/swagger-codegen/src/main/resources/Java/pom.mustache
index 8f7b67b2058..8c58ee4a20c 100644
--- a/modules/swagger-codegen/src/main/resources/Java/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/Java/pom.mustache
@@ -244,7 +244,6 @@
${jackson-version}
{{/threetenbp}}
-
{{^java8}}
@@ -253,14 +252,12 @@
2.2
{{/java8}}
-
{{#supportJava6}}
org.apache.commons
commons-lang3
${commons_lang3_version}
-
commons-io
commons-io
@@ -276,7 +273,6 @@
provided
{{/useBeanValidation}}
-
{{#parcelableModel}}
@@ -286,7 +282,6 @@
provided
{{/parcelableModel}}
-
junit
diff --git a/modules/swagger-codegen/src/main/resources/JavaJaxRS/cxf-cdi/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaJaxRS/cxf-cdi/pom.mustache
index eba993f83fc..78bea69ca7a 100644
--- a/modules/swagger-codegen/src/main/resources/JavaJaxRS/cxf-cdi/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaJaxRS/cxf-cdi/pom.mustache
@@ -35,7 +35,7 @@
maven-war-plugin
- 3.0.0
+ 3.1.0
false
@@ -89,4 +89,4 @@
-
\ No newline at end of file
+
diff --git a/modules/swagger-codegen/src/main/resources/JavaJaxRS/cxf/server/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaJaxRS/cxf/server/pom.mustache
index c6f288bd2cd..ddf991b6a37 100644
--- a/modules/swagger-codegen/src/main/resources/JavaJaxRS/cxf/server/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaJaxRS/cxf/server/pom.mustache
@@ -80,7 +80,7 @@
maven-war-plugin
- 2.1.1
+ 3.1.0
false
@@ -212,7 +212,7 @@
org.webjars
swagger-ui
- 2.1.8-M1
+ 3.0.17
{{/useSwaggerUI}}
@@ -238,10 +238,10 @@
1.1.0.Final
{{/useBeanValidation}}
{{#generateSpringApplication}}
- 4.2.5.RELEASE
+ 4.3.9.RELEASE
{{/generateSpringApplication}}
{{#generateSpringBootApplication}}
- 1.3.3.RELEASE
+ 1.4.7.RELEASE
{{/generateSpringBootApplication}}
3.1.11
2.8.9
diff --git a/modules/swagger-codegen/src/main/resources/JavaJaxRS/libraries/jersey1/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaJaxRS/libraries/jersey1/pom.mustache
index bf58a208a1f..c813c3a9b8f 100644
--- a/modules/swagger-codegen/src/main/resources/JavaJaxRS/libraries/jersey1/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaJaxRS/libraries/jersey1/pom.mustache
@@ -11,7 +11,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
@@ -194,7 +194,7 @@
1.5.15
9.2.9.v20150224
1.19.1
- 2.8.7
+ 2.8.9
1.7.21
4.12
2.5
diff --git a/modules/swagger-codegen/src/main/resources/JavaJaxRS/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaJaxRS/pom.mustache
index b0f5c23bb01..589b0501e83 100644
--- a/modules/swagger-codegen/src/main/resources/JavaJaxRS/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaJaxRS/pom.mustache
@@ -20,7 +20,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
@@ -191,7 +191,7 @@
1.5.15
9.2.9.v20150224
2.22.2
- 2.8.7
+ 2.8.9
{{#supportJava6}}
2.5
3.5
diff --git a/modules/swagger-codegen/src/main/resources/JavaJaxRS/resteasy/eap/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaJaxRS/resteasy/eap/pom.mustache
index 3f855bd2eda..ce77499a933 100644
--- a/modules/swagger-codegen/src/main/resources/JavaJaxRS/resteasy/eap/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaJaxRS/resteasy/eap/pom.mustache
@@ -12,7 +12,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
diff --git a/modules/swagger-codegen/src/main/resources/JavaJaxRS/resteasy/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaJaxRS/resteasy/pom.mustache
index 6111e483b20..106f78a60f5 100644
--- a/modules/swagger-codegen/src/main/resources/JavaJaxRS/resteasy/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaJaxRS/resteasy/pom.mustache
@@ -12,7 +12,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
diff --git a/modules/swagger-codegen/src/main/resources/JavaJaxRS/spec/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaJaxRS/spec/pom.mustache
index b44736af05f..e469fdd90a2 100644
--- a/modules/swagger-codegen/src/main/resources/JavaJaxRS/spec/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaJaxRS/spec/pom.mustache
@@ -11,7 +11,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.6
+ 3.1.0
false
diff --git a/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-boot/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-boot/pom.mustache
index 8fc4c1170fe..f42ea7adff8 100644
--- a/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-boot/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-boot/pom.mustache
@@ -14,7 +14,7 @@
org.springframework.boot
spring-boot-starter-parent
- 1.4.5.RELEASE
+ 1.4.7.RELEASE
src/main/java
diff --git a/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-cloud/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-cloud/pom.mustache
index 3a3dce18f25..d47cb8524d6 100644
--- a/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-cloud/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-cloud/pom.mustache
@@ -14,7 +14,7 @@
org.springframework.boot
spring-boot-starter-parent
- 1.4.1.RELEASE
+ 1.4.7.RELEASE
src/main/java
diff --git a/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-mvc/pom.mustache b/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-mvc/pom.mustache
index 04a355b1b8d..941c39f9631 100644
--- a/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-mvc/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/JavaSpring/libraries/spring-mvc/pom.mustache
@@ -11,7 +11,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.6
+ 3.1.0
maven-failsafe-plugin
@@ -160,7 +160,7 @@
4.12
2.5
2.6.0
- 2.6.4
- 4.2.5.RELEASE
+ 2.8.9
+ 4.3.9.RELEASE
diff --git a/modules/swagger-codegen/src/main/resources/TypeScript-Fetch/api.mustache b/modules/swagger-codegen/src/main/resources/TypeScript-Fetch/api.mustache
index a7c75186918..1c48960c63d 100644
--- a/modules/swagger-codegen/src/main/resources/TypeScript-Fetch/api.mustache
+++ b/modules/swagger-codegen/src/main/resources/TypeScript-Fetch/api.mustache
@@ -120,11 +120,11 @@ export const {{classname}}FetchParamCreator = {
{{#hasHeaderParams}}
fetchOptions.headers = {{#supportsES6}}Object.{{/supportsES6}}assign({
{{#headerParams}}"{{baseName}}": params["{{paramName}}"],{{/headerParams}}
- }, contentTypeHeader);
+ }, contentTypeHeader, fetchOptions.headers);
{{/hasHeaderParams}}
{{^hasHeaderParams}}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = {{#supportsES6}}Object.{{/supportsES6}}assign({}, contentTypeHeader, fetchOptions.headers);
}
{{/hasHeaderParams}}
{{#authMethods}}
diff --git a/modules/swagger-codegen/src/main/resources/csharp/Project.mustache b/modules/swagger-codegen/src/main/resources/csharp/Project.mustache
index 2c6db7ae2dd..d1271b9d515 100644
--- a/modules/swagger-codegen/src/main/resources/csharp/Project.mustache
+++ b/modules/swagger-codegen/src/main/resources/csharp/Project.mustache
@@ -67,10 +67,10 @@
- $(SolutionDir)\packages\Newtonsoft.Json.8.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
- ..\packages\Newtonsoft.Json.8.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
- ..\..\packages\Newtonsoft.Json.8.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
- {{binRelativePath}}\Newtonsoft.Json.8.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
+ $(SolutionDir)\packages\Newtonsoft.Json.10.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
+ ..\packages\Newtonsoft.Json.10.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
+ ..\..\packages\Newtonsoft.Json.10.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
+ {{binRelativePath}}\Newtonsoft.Json.10.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
$(SolutionDir)\packages\RestSharp.105.1.0\lib\{{targetFrameworkNuget}}\RestSharp.dll
@@ -78,9 +78,11 @@
..\..\packages\RestSharp.105.1.0\lib\{{targetFrameworkNuget}}\RestSharp.dll
{{binRelativePath}}\RestSharp.105.1.0\lib\{{targetFrameworkNuget}}\RestSharp.dll
- {{#generatePropertyChanged}}
+ {{#generatePropertyChanged}}
+
..\..\packages\PropertyChanged.Fody.1.51.3\Lib\portable-net4+sl4+wp8+win8+wpa81+MonoAndroid16+MonoTouch40\PropertyChanged.dll
- {{/generatePropertyChanged}}
+
+ {{/generatePropertyChanged}}
{{/netStandard}}
{{#netStandard}}
@@ -94,10 +96,13 @@
{{^netStandard}}
- {{#generatePropertyChanged}}{{/generatePropertyChanged}}
+ {{#generatePropertyChanged}}
+
+ {{/generatePropertyChanged}}
- {{#generatePropertyChanged}}
-
+
+ {{#generatePropertyChanged}}
+
{{/generatePropertyChanged}}
{{/netStandard}}
{{#netStandard}}
diff --git a/modules/swagger-codegen/src/main/resources/csharp/TestProject.mustache b/modules/swagger-codegen/src/main/resources/csharp/TestProject.mustache
index be847bade98..ee8897d2a62 100644
--- a/modules/swagger-codegen/src/main/resources/csharp/TestProject.mustache
+++ b/modules/swagger-codegen/src/main/resources/csharp/TestProject.mustache
@@ -59,10 +59,10 @@
- $(SolutionDir)\packages\Newtonsoft.Json.8.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
- ..\packages\Newtonsoft.Json.8.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
- ..\..\packages\Newtonsoft.Json.8.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
- {{binRelativePath}}\Newtonsoft.Json.8.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
+ $(SolutionDir)\packages\Newtonsoft.Json.10.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
+ ..\packages\Newtonsoft.Json.10.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
+ ..\..\packages\Newtonsoft.Json.10.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
+ {{binRelativePath}}\Newtonsoft.Json.10.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll
$(SolutionDir)\packages\RestSharp.105.1.0\lib\{{targetFrameworkNuget}}\RestSharp.dll
diff --git a/modules/swagger-codegen/src/main/resources/csharp/compile-mono.sh.mustache b/modules/swagger-codegen/src/main/resources/csharp/compile-mono.sh.mustache
index 52d2fb767f8..cd807b78d0c 100644
--- a/modules/swagger-codegen/src/main/resources/csharp/compile-mono.sh.mustache
+++ b/modules/swagger-codegen/src/main/resources/csharp/compile-mono.sh.mustache
@@ -15,10 +15,10 @@ mono nuget.exe install src/{{packageName}}/packages.config -o packages;
echo "[INFO] Copy DLLs to the 'bin' folder"
mkdir -p bin;
-cp packages/Newtonsoft.Json.8.0.3/lib/{{targetFrameworkNuget}}/Newtonsoft.Json.dll bin/Newtonsoft.Json.dll;
+cp packages/Newtonsoft.Json.10.0.3/lib/{{targetFrameworkNuget}}/Newtonsoft.Json.dll bin/Newtonsoft.Json.dll;
cp packages/RestSharp.105.1.0/lib/{{targetFrameworkNuget}}/RestSharp.dll bin/RestSharp.dll;
{{#generatePropertyChanged}}
-cp packages/Fody.1.29.2/Fody.dll bin/Fody.dll
+cp packages/Fody.1.29.4/Fody.dll bin/Fody.dll
cp packages/PropertyChanged.Fody.1.51.3/PropertyChanged.Fody.dll bin/PropertyChanged.Fody.dll
cp packages/PropertyChanged.Fody.1.51.3/Lib/dotnet/PropertyChanged.dll bin/PropertyChanged.dll
{{/generatePropertyChanged}}
diff --git a/modules/swagger-codegen/src/main/resources/csharp/compile.mustache b/modules/swagger-codegen/src/main/resources/csharp/compile.mustache
index 2ecdbadc8b0..76d9f2b0bb3 100644
--- a/modules/swagger-codegen/src/main/resources/csharp/compile.mustache
+++ b/modules/swagger-codegen/src/main/resources/csharp/compile.mustache
@@ -15,10 +15,10 @@ if not exist ".\nuget.exe" powershell -Command "(new-object System.Net.WebClient
if not exist ".\bin" mkdir bin
-copy packages\Newtonsoft.Json.8.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll bin\Newtonsoft.Json.dll
+copy packages\Newtonsoft.Json.10.0.3\lib\{{targetFrameworkNuget}}\Newtonsoft.Json.dll bin\Newtonsoft.Json.dll
copy packages\RestSharp.105.1.0\lib\{{targetFrameworkNuget}}\RestSharp.dll bin\RestSharp.dll
{{#generatePropertyChanged}}
-copy packages\Fody.1.29.2\Fody.dll bin\Fody.dll
+copy packages\Fody.1.29.4\Fody.dll bin\Fody.dll
copy packages\PropertyChanged.Fody.1.51.3\PropertyChanged.Fody.dll bin\PropertyChanged.Fody.dll
copy packages\PropertyChanged.Fody.1.51.3\Lib\dotnet\PropertyChanged.dll bin\PropertyChanged.dll
{{/generatePropertyChanged}}
diff --git a/modules/swagger-codegen/src/main/resources/csharp/nuspec.mustache b/modules/swagger-codegen/src/main/resources/csharp/nuspec.mustache
index eaf4b0e3381..dc0fdc327c1 100644
--- a/modules/swagger-codegen/src/main/resources/csharp/nuspec.mustache
+++ b/modules/swagger-codegen/src/main/resources/csharp/nuspec.mustache
@@ -19,17 +19,23 @@
- {{packageDescription}}{{#termsOfService}}
- {{termsOfService}}{{/termsOfService}}{{#licenseUrl}}
- {{licenseUrl}}{{/licenseUrl}}
+ {{packageDescription}}
+ {{#termsOfService}}
+ {{termsOfService}}
+ {{/termsOfService}}
+ {{#licenseUrl}}
+ {{licenseUrl}}
+ {{/licenseUrl}}
-
- {{#generatePropertyChanged}}
-
- {{/generatePropertyChanged}}
+
+
+ {{#generatePropertyChanged}}
+
+
+ {{/generatePropertyChanged}}
@@ -37,9 +43,10 @@
- {{#generatePropertyChanged}}
-
- {{/generatePropertyChanged}}
+
+ {{#generatePropertyChanged}}
+
+ {{/generatePropertyChanged}}
-
\ No newline at end of file
+
diff --git a/modules/swagger-codegen/src/main/resources/csharp/packages.config.mustache b/modules/swagger-codegen/src/main/resources/csharp/packages.config.mustache
index 8f82cb7143c..10218bf15c5 100644
--- a/modules/swagger-codegen/src/main/resources/csharp/packages.config.mustache
+++ b/modules/swagger-codegen/src/main/resources/csharp/packages.config.mustache
@@ -1,9 +1,9 @@
-
+
{{#generatePropertyChanged}}
-
+
{{/generatePropertyChanged}}
diff --git a/modules/swagger-codegen/src/main/resources/csharp/packages_test.config.mustache b/modules/swagger-codegen/src/main/resources/csharp/packages_test.config.mustache
index 7e6f4575391..1403975d651 100644
--- a/modules/swagger-codegen/src/main/resources/csharp/packages_test.config.mustache
+++ b/modules/swagger-codegen/src/main/resources/csharp/packages_test.config.mustache
@@ -2,5 +2,5 @@
-
+
diff --git a/modules/swagger-codegen/src/main/resources/nancyfx/model.mustache b/modules/swagger-codegen/src/main/resources/nancyfx/model.mustache
index 2313ae976f1..090f503b42c 100644
--- a/modules/swagger-codegen/src/main/resources/nancyfx/model.mustache
+++ b/modules/swagger-codegen/src/main/resources/nancyfx/model.mustache
@@ -7,166 +7,11 @@ using NodaTime;
{{#imports}}using {{import}};
{{/imports}}
-{{#models}}
-{{#model}}
namespace {{packageName}}.{{packageContext}}.Models
{
- ///
- /// {{#description}}{{.}}{{/description}}{{^description}}{{classname}}{{/description}}
- ///
- public {{^hasChildren}}sealed {{/hasChildren}}class {{classname}}: {{#parent}}{{{parent}}}, {{/parent}} IEquatable<{{classname}}>
- { {{#vars}}{{^isInherited}}
- ///
- /// {{^description}}{{{name}}}{{/description}}{{#description}}{{description}}{{/description}}
- ///
- public {{>nullableDataType}} {{name}} { get; private set; }
-{{/isInherited}}{{/vars}}
-
- ///
- /// Empty constructor required by some serializers.
- /// Use {{classname}}.Builder() for instance creation instead.
- ///
- [Obsolete]
- public {{classname}}(){{#parent}} : base({{/parent}}{{#parentVars}}null{{#hasMore}}, {{/hasMore}}{{/parentVars}}{{#parent}}){{/parent}}
- {
- }
-
- {{#hasChildren}}protected{{/hasChildren}}{{^hasChildren}}private{{/hasChildren}} {{classname}}({{#vars}}{{>nullableDataType}} {{name}}{{#hasMore}}, {{/hasMore}}{{/vars}}){{#parent}} : base({{#parentVars}}{{name}}{{#hasMore}}, {{/hasMore}}{{/parentVars}}){{/parent}}
- {
- {{#vars}}{{^isInherited}}
- this.{{name}} = {{name}};
- {{/isInherited}}{{/vars}}
- }
-
- ///
- /// Returns builder of {{classname}}.
- ///
- /// {{classname}}Builder
- public static {{#parent}}new {{/parent}}{{classname}}Builder Builder()
- {
- return new {{classname}}Builder();
- }
-
- ///
- /// Returns {{classname}}Builder with properties set.
- /// Use it to change properties.
- ///
- /// {{classname}}Builder
- public {{#parent}}new {{/parent}}{{classname}}Builder With()
- {
- return Builder()
- {{#vars}}
- .{{name}}({{name}}){{#hasMore}}
-{{/hasMore}}{{/vars}};
- }
-
- public override string ToString()
- {
- return this.PropertiesToString();
- }
-
- public override bool Equals(object obj)
- {
- return this.EqualsByProperties(obj);
- }
-
- public bool Equals({{classname}} other)
- {
- return Equals((object) other);
- }
-
- public override int GetHashCode()
- {
- return this.PropertiesHash();
- }
-
- ///
- /// Implementation of == operator for ({{classname}}.
- ///
- /// Compared ({{classname}}
- /// Compared ({{classname}}
- /// true if compared items are equals, false otherwise
- public static bool operator == ({{classname}} left, {{classname}} right)
- {
- return Equals(left, right);
- }
-
- ///
- /// Implementation of != operator for ({{classname}}.
- ///
- /// Compared ({{classname}}
- /// Compared ({{classname}}
- /// true if compared items are not equals, false otherwise
- public static bool operator != ({{classname}} left, {{classname}} right)
- {
- return !Equals(left, right);
- }
-
- ///
- /// Builder of {{classname}}.
- ///
- public sealed class {{classname}}Builder
- {
- {{#vars}}
- private {{>nullableDataType}} _{{name}};
- {{/vars}}
-
- internal {{classname}}Builder()
- {
- SetupDefaults();
- }
-
- private void SetupDefaults()
- {
- {{#vars}}
- {{^required}}
- {{#defaultValue}}
- _{{name}} = {{{defaultValue}}};
- {{/defaultValue}}
- {{/required}}
- {{/vars}}
- }
-
- {{#vars}}
- ///
- /// Sets value for {{classname}}.{{{name}}} property.
- ///
- /// {{^description}}{{{name}}}{{/description}}{{#description}}{{description}}{{/description}}
- public {{classname}}Builder {{name}}({{>nullableDataType}} value)
- {
- _{{name}} = value;
- return this;
- }
-
- {{/vars}}
-
- ///
- /// Builds instance of {{classname}}.
- ///
- /// {{classname}}
- public {{classname}} Build()
- {
- Validate();
- return new {{classname}}(
- {{#vars}}
- {{name}}: _{{name}}{{#hasMore}},{{/hasMore}}
- {{/vars}}
- );
- }
-
- private void Validate()
- { {{#vars}}{{#required}}
- if (_{{name}} == null)
- {
- throw new ArgumentException("{{name}} is a required property for {{classname}} and cannot be null");
- } {{/required}}{{/vars}}
- }
- }
-
- {{#vars}}{{#isEnum}}{{^parent}}
- {{>innerModelEnum}}{{/parent}}{{/isEnum}}{{#items.isEnum}}
- {{#items}}{{>innerModelEnum}}{{/items}}{{/items.isEnum}}{{/vars}}
- }
+{{#models}}
+{{#model}}
+{{#isEnum}}{{>modelEnum}}{{/isEnum}}{{^isEnum}}{{>modelGeneric}}{{/isEnum}}
{{/model}}
{{/models}}
-}
+}
\ No newline at end of file
diff --git a/modules/swagger-codegen/src/main/resources/nancyfx/modelEnum.mustache b/modules/swagger-codegen/src/main/resources/nancyfx/modelEnum.mustache
new file mode 100644
index 00000000000..ddc5c2a56cf
--- /dev/null
+++ b/modules/swagger-codegen/src/main/resources/nancyfx/modelEnum.mustache
@@ -0,0 +1,13 @@
+ ///
+ /// {{^description}}Defines {{{name}}}{{/description}}{{#description}}{{{description}}}{{/description}}
+ /// {{#description}}
+ /// {{{description}}}{{/description}}
+ public enum {{#datatypeWithEnum}}{{.}}{{/datatypeWithEnum}}{{^datatypeWithEnum}}{{classname}}{{/datatypeWithEnum}}
+ {
+ {{#allowableValues}}{{#enumVars}}
+ ///
+ /// Enum {{name}}
+ ///
+ {{name}}{{#isInteger}} = {{{value}}}{{/isInteger}}{{^-last}},
+ {{/-last}}{{/enumVars}}{{/allowableValues}}
+ }
\ No newline at end of file
diff --git a/modules/swagger-codegen/src/main/resources/nancyfx/modelGeneric.mustache b/modules/swagger-codegen/src/main/resources/nancyfx/modelGeneric.mustache
new file mode 100644
index 00000000000..1093e4dd266
--- /dev/null
+++ b/modules/swagger-codegen/src/main/resources/nancyfx/modelGeneric.mustache
@@ -0,0 +1,156 @@
+ ///
+ /// {{#description}}{{.}}{{/description}}{{^description}}{{classname}}{{/description}}
+ ///
+ public {{^hasChildren}}sealed {{/hasChildren}}class {{classname}}: {{#parent}}{{{parent}}}, {{/parent}} IEquatable<{{classname}}>
+ { {{#vars}}{{^isInherited}}
+ ///
+ /// {{^description}}{{{name}}}{{/description}}{{#description}}{{description}}{{/description}}
+ ///
+ public {{>nullableDataType}} {{name}} { get; private set; }
+{{/isInherited}}{{/vars}}
+
+ ///
+ /// Empty constructor required by some serializers.
+ /// Use {{classname}}.Builder() for instance creation instead.
+ ///
+ [Obsolete]
+ public {{classname}}(){{#parent}} : base({{/parent}}{{#parentVars}}null{{#hasMore}}, {{/hasMore}}{{/parentVars}}{{#parent}}){{/parent}}
+ {
+ }
+
+ {{#hasChildren}}protected{{/hasChildren}}{{^hasChildren}}private{{/hasChildren}} {{classname}}({{#vars}}{{>nullableDataType}} {{name}}{{#hasMore}}, {{/hasMore}}{{/vars}}){{#parent}} : base({{#parentVars}}{{name}}{{#hasMore}}, {{/hasMore}}{{/parentVars}}){{/parent}}
+ {
+ {{#vars}}{{^isInherited}}
+ this.{{name}} = {{name}};
+ {{/isInherited}}{{/vars}}
+ }
+
+ ///
+ /// Returns builder of {{classname}}.
+ ///
+ /// {{classname}}Builder
+ public static {{#parent}}new {{/parent}}{{classname}}Builder Builder()
+ {
+ return new {{classname}}Builder();
+ }
+
+ ///
+ /// Returns {{classname}}Builder with properties set.
+ /// Use it to change properties.
+ ///
+ /// {{classname}}Builder
+ public {{#parent}}new {{/parent}}{{classname}}Builder With()
+ {
+ return Builder()
+ {{#vars}}
+ .{{name}}({{name}}){{#hasMore}}
+{{/hasMore}}{{/vars}};
+ }
+
+ public override string ToString()
+ {
+ return this.PropertiesToString();
+ }
+
+ public override bool Equals(object obj)
+ {
+ return this.EqualsByProperties(obj);
+ }
+
+ public bool Equals({{classname}} other)
+ {
+ return Equals((object) other);
+ }
+
+ public override int GetHashCode()
+ {
+ return this.PropertiesHash();
+ }
+
+ ///
+ /// Implementation of == operator for ({{classname}}.
+ ///
+ /// Compared ({{classname}}
+ /// Compared ({{classname}}
+ /// true if compared items are equals, false otherwise
+ public static bool operator == ({{classname}} left, {{classname}} right)
+ {
+ return Equals(left, right);
+ }
+
+ ///
+ /// Implementation of != operator for ({{classname}}.
+ ///
+ /// Compared ({{classname}}
+ /// Compared ({{classname}}
+ /// true if compared items are not equals, false otherwise
+ public static bool operator != ({{classname}} left, {{classname}} right)
+ {
+ return !Equals(left, right);
+ }
+
+ ///
+ /// Builder of {{classname}}.
+ ///
+ public sealed class {{classname}}Builder
+ {
+ {{#vars}}
+ private {{>nullableDataType}} _{{name}};
+ {{/vars}}
+
+ internal {{classname}}Builder()
+ {
+ SetupDefaults();
+ }
+
+ private void SetupDefaults()
+ {
+ {{#vars}}
+ {{^required}}
+ {{#defaultValue}}
+ _{{name}} = {{{defaultValue}}};
+ {{/defaultValue}}
+ {{/required}}
+ {{/vars}}
+ }
+
+ {{#vars}}
+ ///
+ /// Sets value for {{classname}}.{{{name}}} property.
+ ///
+ /// {{^description}}{{{name}}}{{/description}}{{#description}}{{description}}{{/description}}
+ public {{classname}}Builder {{name}}({{>nullableDataType}} value)
+ {
+ _{{name}} = value;
+ return this;
+ }
+
+ {{/vars}}
+
+ ///
+ /// Builds instance of {{classname}}.
+ ///
+ /// {{classname}}
+ public {{classname}} Build()
+ {
+ Validate();
+ return new {{classname}}(
+ {{#vars}}
+ {{name}}: _{{name}}{{#hasMore}},{{/hasMore}}
+ {{/vars}}
+ );
+ }
+
+ private void Validate()
+ { {{#vars}}{{#required}}
+ if (_{{name}} == null)
+ {
+ throw new ArgumentException("{{name}} is a required property for {{classname}} and cannot be null");
+ } {{/required}}{{/vars}}
+ }
+ }
+
+ {{#vars}}{{#isEnum}}{{^parent}}
+ {{>innerModelEnum}}{{/parent}}{{/isEnum}}{{#items.isEnum}}
+ {{#items}}{{>innerModelEnum}}{{/items}}{{/items.isEnum}}{{/vars}}
+ }
\ No newline at end of file
diff --git a/modules/swagger-codegen/src/main/resources/scala/pom.mustache b/modules/swagger-codegen/src/main/resources/scala/pom.mustache
index 679d345347c..05ab94c16b8 100644
--- a/modules/swagger-codegen/src/main/resources/scala/pom.mustache
+++ b/modules/swagger-codegen/src/main/resources/scala/pom.mustache
@@ -223,7 +223,7 @@
1.5.15
1.0.5
1.0.0
- 2.4.2
+ 2.8.9
4.8.1
3.1.5
diff --git a/modules/swagger-codegen/src/test/java/io/swagger/codegen/java/JavaClientOptionsTest.java b/modules/swagger-codegen/src/test/java/io/swagger/codegen/java/JavaClientOptionsTest.java
index a4a13ecbcbc..336ed0ec4c0 100644
--- a/modules/swagger-codegen/src/test/java/io/swagger/codegen/java/JavaClientOptionsTest.java
+++ b/modules/swagger-codegen/src/test/java/io/swagger/codegen/java/JavaClientOptionsTest.java
@@ -82,6 +82,8 @@ public class JavaClientOptionsTest extends AbstractOptionsTest {
times = 1;
clientCodegen.setUseBeanValidation(Boolean.valueOf(JavaClientOptionsProvider.PERFORM_BEANVALIDATION));
times = 1;
+ clientCodegen.setUseBeanValidation(Boolean.valueOf(JavaClientOptionsProvider.PERFORM_BEANVALIDATION));
+ times = 1;
}};
}
}
diff --git a/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/JavaClientOptionsProvider.java b/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/JavaClientOptionsProvider.java
index 2b8426af3c9..a3595f67944 100644
--- a/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/JavaClientOptionsProvider.java
+++ b/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/JavaClientOptionsProvider.java
@@ -25,6 +25,7 @@ public class JavaClientOptionsProvider extends JavaOptionsProvider {
options.put(JavaClientCodegen.PERFORM_BEANVALIDATION, PERFORM_BEANVALIDATION);
options.put(JavaClientCodegen.USE_GZIP_FEATURE, "false");
options.put(JavaClientCodegen.USE_RUNTIME_EXCEPTION, "false");
+ options.put(JavaClientCodegen.JAVA8_MODE, "false");
return options;
}
diff --git a/modules/swagger-codegen/src/test/resources/2_0/templates/Java/libraries/jersey2/pom.mustache b/modules/swagger-codegen/src/test/resources/2_0/templates/Java/libraries/jersey2/pom.mustache
index 6b3dc789382..ba6076b7b82 100644
--- a/modules/swagger-codegen/src/test/resources/2_0/templates/Java/libraries/jersey2/pom.mustache
+++ b/modules/swagger-codegen/src/test/resources/2_0/templates/Java/libraries/jersey2/pom.mustache
@@ -276,7 +276,7 @@
1.5.15
2.22.2
- 2.7.5
+ 2.8.9
{{^java8}}
2.9.4
{{/java8}}
diff --git a/modules/swagger-generator/pom.xml b/modules/swagger-generator/pom.xml
index 4ba5444a060..19c25f26f06 100644
--- a/modules/swagger-generator/pom.xml
+++ b/modules/swagger-generator/pom.xml
@@ -40,7 +40,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
diff --git a/pom.xml b/pom.xml
index fa3de66f46c..e01613ea7f6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -16,9 +16,6 @@
scm:git:git@github.com:swagger-api/swagger-codegen.git
https://github.com/swagger-api/swagger-codegen
-
- 2.2.0
-
fehguy
@@ -222,6 +219,26 @@
+
+ org.apache.maven.plugins
+ maven-enforcer-plugin
+ 1.4.1
+
+
+ enforce-versions
+
+ enforce
+
+
+
+
+ 3.2.5
+
+
+
+
+
+
@@ -895,7 +912,7 @@
2.4
1.2
4.8.1
- 2.8.5
+ 2.8.9
1.0.0
3.4
1.7.12
diff --git a/pom.xml.circleci b/pom.xml.circleci
index 4d0732e22fa..33caa57c44f 100644
--- a/pom.xml.circleci
+++ b/pom.xml.circleci
@@ -904,7 +904,7 @@
2.4
1.2
4.8.1
- 2.8.5
+ 2.8.9
1.0.0
3.4
1.7.12
diff --git a/samples/client/petstore-security-test/scala/pom.xml b/samples/client/petstore-security-test/scala/pom.xml
index 53980f82fc1..283256f2489 100644
--- a/samples/client/petstore-security-test/scala/pom.xml
+++ b/samples/client/petstore-security-test/scala/pom.xml
@@ -218,7 +218,7 @@
1.5.15
1.0.5
1.0.0
- 2.4.2
+ 2.8.9
4.8.1
3.1.5
diff --git a/samples/client/petstore/csharp/SwaggerClient/build.bat b/samples/client/petstore/csharp/SwaggerClient/build.bat
index 1da4812b36b..9460347d457 100644
--- a/samples/client/petstore/csharp/SwaggerClient/build.bat
+++ b/samples/client/petstore/csharp/SwaggerClient/build.bat
@@ -10,7 +10,7 @@ if not exist ".\nuget.exe" powershell -Command "(new-object System.Net.WebClient
if not exist ".\bin" mkdir bin
-copy packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll bin\Newtonsoft.Json.dll
+copy packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll bin\Newtonsoft.Json.dll
copy packages\RestSharp.105.1.0\lib\net45\RestSharp.dll bin\RestSharp.dll
%CSCPATH%\csc /reference:bin\Newtonsoft.Json.dll;bin\RestSharp.dll;System.ComponentModel.DataAnnotations.dll /target:library /out:bin\IO.Swagger.dll /recurse:src\IO.Swagger\*.cs /doc:bin\IO.Swagger.xml
diff --git a/samples/client/petstore/csharp/SwaggerClient/build.sh b/samples/client/petstore/csharp/SwaggerClient/build.sh
index 6cfe5890b5e..0d2b4460073 100644
--- a/samples/client/petstore/csharp/SwaggerClient/build.sh
+++ b/samples/client/petstore/csharp/SwaggerClient/build.sh
@@ -15,7 +15,7 @@ mono nuget.exe install src/IO.Swagger/packages.config -o packages;
echo "[INFO] Copy DLLs to the 'bin' folder"
mkdir -p bin;
-cp packages/Newtonsoft.Json.8.0.3/lib/net45/Newtonsoft.Json.dll bin/Newtonsoft.Json.dll;
+cp packages/Newtonsoft.Json.10.0.3/lib/net45/Newtonsoft.Json.dll bin/Newtonsoft.Json.dll;
cp packages/RestSharp.105.1.0/lib/net45/RestSharp.dll bin/RestSharp.dll;
echo "[INFO] Run 'mcs' to build bin/IO.Swagger.dll"
diff --git a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger.Test/IO.Swagger.Test.csproj b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger.Test/IO.Swagger.Test.csproj
index ca11ccbf615..b09487f71b6 100644
--- a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger.Test/IO.Swagger.Test.csproj
+++ b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger.Test/IO.Swagger.Test.csproj
@@ -20,7 +20,7 @@ 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.
-->
-
+
Debug
AnyCPU
@@ -60,29 +60,29 @@ limitations under the License.
- $(SolutionDir)\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\..\vendor\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
+ $(SolutionDir)\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\..\vendor\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
- $(SolutionDir)\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
- ..\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
- ..\..\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
- ..\..\vendor\RestSharp.105.1.0\lib\net45\RestSharp.dll
+ $(SolutionDir)\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
+ ..\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
+ ..\..\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
+ ..\..\vendor\RestSharp.105.1.0\lib\net45\RestSharp.dll
- $(SolutionDir)\packages\NUnit.2.6.4\lib\nunit.framework.dll
- ..\packages\NUnit.2.6.4\lib\nunit.framework.dll
- ..\..\packages\NUnit.2.6.4\lib\nunit.framework.dll
- ..\..\vendor\NUnit.2.6.4\lib\nunit.framework.dll
+ $(SolutionDir)\packages\NUnit.2.6.4\lib\nunit.framework.dll
+ ..\packages\NUnit.2.6.4\lib\nunit.framework.dll
+ ..\..\packages\NUnit.2.6.4\lib\nunit.framework.dll
+ ..\..\vendor\NUnit.2.6.4\lib\nunit.framework.dll
-
+
-
+
@@ -95,3 +95,4 @@ limitations under the License.
+
diff --git a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger.Test/packages.config b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger.Test/packages.config
index 9bb00f0fc4f..105b8298a45 100644
--- a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger.Test/packages.config
+++ b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger.Test/packages.config
@@ -2,5 +2,5 @@
-
+
diff --git a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/IO.Swagger.csproj b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/IO.Swagger.csproj
index 4c942e8cd5f..4d675069f38 100644
--- a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/IO.Swagger.csproj
+++ b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/IO.Swagger.csproj
@@ -48,10 +48,10 @@ Contact: apiteam@swagger.io
- $(SolutionDir)\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\..\vendor\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
+ $(SolutionDir)\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\..\vendor\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
$(SolutionDir)\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
@@ -59,7 +59,6 @@ Contact: apiteam@swagger.io
..\..\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
..\..\vendor\RestSharp.105.1.0\lib\net45\RestSharp.dll
-
-
-
+
+
diff --git a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/IO.Swagger.nuspec b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/IO.Swagger.nuspec
index 4762df88d9c..1035d5d81e4 100644
--- a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/IO.Swagger.nuspec
+++ b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/IO.Swagger.nuspec
@@ -26,7 +26,7 @@
-
+
@@ -36,5 +36,6 @@
+
-
\ No newline at end of file
+
diff --git a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/packages.config b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/packages.config
index 80f617d6d9f..351ef133ee8 100644
--- a/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/packages.config
+++ b/samples/client/petstore/csharp/SwaggerClient/src/IO.Swagger/packages.config
@@ -1,5 +1,5 @@
-
+
diff --git a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/TestResult.xml b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/TestResult.xml
index 9dbad20d4b4..08369e4ca73 100644
--- a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/TestResult.xml
+++ b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/TestResult.xml
@@ -1,24 +1,24 @@
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -58,6 +58,17 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -73,6 +84,12 @@
+
+
+
+
+
+
@@ -88,7 +105,7 @@
-
+
@@ -101,15 +118,15 @@
-
+
-
+
-
+
@@ -127,7 +144,7 @@
-
+
@@ -200,6 +217,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -213,7 +258,7 @@
-
+
@@ -237,7 +282,7 @@
-
+
@@ -266,7 +311,7 @@
-
+
diff --git a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/build.bat b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/build.bat
index 77508b858a0..53ea79a6092 100644
--- a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/build.bat
+++ b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/build.bat
@@ -10,9 +10,9 @@ if not exist ".\nuget.exe" powershell -Command "(new-object System.Net.WebClient
if not exist ".\bin" mkdir bin
-copy packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll bin\Newtonsoft.Json.dll
+copy packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll bin\Newtonsoft.Json.dll
copy packages\RestSharp.105.1.0\lib\net45\RestSharp.dll bin\RestSharp.dll
-copy packages\Fody.1.29.2\Fody.dll bin\Fody.dll
+copy packages\Fody.1.29.4\Fody.dll bin\Fody.dll
copy packages\PropertyChanged.Fody.1.51.3\PropertyChanged.Fody.dll bin\PropertyChanged.Fody.dll
copy packages\PropertyChanged.Fody.1.51.3\Lib\dotnet\PropertyChanged.dll bin\PropertyChanged.dll
%CSCPATH%\csc /reference:bin\Newtonsoft.Json.dll;bin\RestSharp.dll;System.ComponentModel.DataAnnotations.dll /r:bin\Fody.dll;bin\PropertyChanged.Fody.dll;bin\PropertyChanged.dll /target:library /out:bin\IO.Swagger.dll /recurse:src\IO.Swagger\*.cs /doc:bin\IO.Swagger.xml
diff --git a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/build.sh b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/build.sh
index 23dd920e8f8..037c4dd9f64 100644
--- a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/build.sh
+++ b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/build.sh
@@ -15,9 +15,9 @@ mono nuget.exe install src/IO.Swagger/packages.config -o packages;
echo "[INFO] Copy DLLs to the 'bin' folder"
mkdir -p bin;
-cp packages/Newtonsoft.Json.8.0.3/lib/net45/Newtonsoft.Json.dll bin/Newtonsoft.Json.dll;
+cp packages/Newtonsoft.Json.10.0.3/lib/net45/Newtonsoft.Json.dll bin/Newtonsoft.Json.dll;
cp packages/RestSharp.105.1.0/lib/net45/RestSharp.dll bin/RestSharp.dll;
-cp packages/Fody.1.29.2/Fody.dll bin/Fody.dll
+cp packages/Fody.1.29.4/Fody.dll bin/Fody.dll
cp packages/PropertyChanged.Fody.1.51.3/PropertyChanged.Fody.dll bin/PropertyChanged.Fody.dll
cp packages/PropertyChanged.Fody.1.51.3/Lib/dotnet/PropertyChanged.dll bin/PropertyChanged.dll
diff --git a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger.Test/IO.Swagger.Test.csproj b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger.Test/IO.Swagger.Test.csproj
index 7cac6bb0121..6dd03871c7c 100644
--- a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger.Test/IO.Swagger.Test.csproj
+++ b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger.Test/IO.Swagger.Test.csproj
@@ -47,10 +47,10 @@ Contact: apiteam@swagger.io
- $(SolutionDir)\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\..\vendor\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
+ $(SolutionDir)\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\..\vendor\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
$(SolutionDir)\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
diff --git a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger.Test/packages.config b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger.Test/packages.config
index 9bb00f0fc4f..105b8298a45 100644
--- a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger.Test/packages.config
+++ b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger.Test/packages.config
@@ -2,5 +2,5 @@
-
+
diff --git a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/IO.Swagger.csproj b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/IO.Swagger.csproj
index 493a343283d..1cc828f4939 100644
--- a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/IO.Swagger.csproj
+++ b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/IO.Swagger.csproj
@@ -48,10 +48,10 @@ Contact: apiteam@swagger.io
- $(SolutionDir)\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
- ..\..\vendor\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll
+ $(SolutionDir)\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
+ ..\..\vendor\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll
$(SolutionDir)\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll
@@ -72,6 +72,6 @@ Contact: apiteam@swagger.io
-
+
diff --git a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/IO.Swagger.nuspec b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/IO.Swagger.nuspec
index 87ba93febfe..0a4d19d745f 100644
--- a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/IO.Swagger.nuspec
+++ b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/IO.Swagger.nuspec
@@ -26,9 +26,9 @@
-
+
-
+
@@ -38,7 +38,7 @@
-
+
-
\ No newline at end of file
+
diff --git a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/packages.config b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/packages.config
index 9483191f247..2ce1bb2f3cd 100644
--- a/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/packages.config
+++ b/samples/client/petstore/csharp/SwaggerClientWithPropertyChanged/src/IO.Swagger/packages.config
@@ -1,7 +1,7 @@
-
-
+
+
diff --git a/samples/client/petstore/dart/petstore/packages b/samples/client/petstore/dart/petstore/packages
new file mode 100644
index 00000000000..a16c4050155
--- /dev/null
+++ b/samples/client/petstore/dart/petstore/packages
@@ -0,0 +1 @@
+../packages
\ No newline at end of file
diff --git a/samples/client/petstore/java/feign/.swagger-codegen/VERSION b/samples/client/petstore/java/feign/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/feign/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/feign/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/feign/build.gradle b/samples/client/petstore/java/feign/build.gradle
index 9f2accb79fa..2a538aa20a4 100644
--- a/samples/client/petstore/java/feign/build.gradle
+++ b/samples/client/petstore/java/feign/build.gradle
@@ -96,6 +96,7 @@ if(hasProperty('target') && target == 'android') {
ext {
swagger_annotations_version = "1.5.9"
jackson_version = "2.8.7"
+ threepane_version = "2.6.4"
feign_version = "9.4.0"
feign_form_version = "2.1.0"
junit_version = "4.12"
@@ -111,7 +112,7 @@ dependencies {
compile "com.fasterxml.jackson.core:jackson-core:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
- compile "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version"
+ compile "com.github.joschi.jackson:jackson-datatype-threetenbp:$threepane_version"
compile "org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:$oltu_version"
compile "com.brsanthu:migbase64:2.2"
testCompile "junit:junit:$junit_version"
diff --git a/samples/client/petstore/java/feign/pom.xml b/samples/client/petstore/java/feign/pom.xml
index 165ceec4c9d..8abcc8d6bf7 100644
--- a/samples/client/petstore/java/feign/pom.xml
+++ b/samples/client/petstore/java/feign/pom.xml
@@ -213,9 +213,9 @@
${jackson-version}
- com.fasterxml.jackson.datatype
- jackson-datatype-joda
- ${jackson-version}
+ com.github.joschi.jackson
+ jackson-datatype-threetenbp
+ ${jackson-threetenbp-version}
org.apache.oltu.oauth2
@@ -250,7 +250,8 @@
1.5.15
9.4.0
2.1.0
- 2.8.7
+ 2.8.9
+ 2.6.4
4.12
1.0.0
1.0.1
diff --git a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/ApiClient.java b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/ApiClient.java
index d487cb10590..9c646d6e8f0 100644
--- a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/ApiClient.java
+++ b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/ApiClient.java
@@ -5,11 +5,12 @@ import java.util.Map;
import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder;
import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder;
+import org.threeten.bp.*;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
-import com.fasterxml.jackson.datatype.joda.JodaModule;
+import com.fasterxml.jackson.datatype.threetenbp.ThreeTenModule;
import feign.Feign;
import feign.RequestInterceptor;
@@ -135,7 +136,11 @@ public class ApiClient {
objectMapper.disable(DeserializationFeature.FAIL_ON_INVALID_SUBTYPE);
objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
objectMapper.setDateFormat(new RFC3339DateFormat());
- objectMapper.registerModule(new JodaModule());
+ ThreeTenModule module = new ThreeTenModule();
+ module.addDeserializer(Instant.class, CustomInstantDeserializer.INSTANT);
+ module.addDeserializer(OffsetDateTime.class, CustomInstantDeserializer.OFFSET_DATE_TIME);
+ module.addDeserializer(ZonedDateTime.class, CustomInstantDeserializer.ZONED_DATE_TIME);
+ objectMapper.registerModule(module);
return objectMapper;
}
diff --git a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/CustomInstantDeserializer.java b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/CustomInstantDeserializer.java
new file mode 100644
index 00000000000..5ed8ba446ec
--- /dev/null
+++ b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/CustomInstantDeserializer.java
@@ -0,0 +1,232 @@
+package io.swagger.client;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonTokenId;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.JsonDeserializer;
+import com.fasterxml.jackson.datatype.threetenbp.DateTimeUtils;
+import com.fasterxml.jackson.datatype.threetenbp.DecimalUtils;
+import com.fasterxml.jackson.datatype.threetenbp.deser.ThreeTenDateTimeDeserializerBase;
+import com.fasterxml.jackson.datatype.threetenbp.function.BiFunction;
+import com.fasterxml.jackson.datatype.threetenbp.function.Function;
+import org.threeten.bp.DateTimeException;
+import org.threeten.bp.Instant;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.ZoneId;
+import org.threeten.bp.ZonedDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+import org.threeten.bp.temporal.Temporal;
+import org.threeten.bp.temporal.TemporalAccessor;
+
+import java.io.IOException;
+import java.math.BigDecimal;
+
+/**
+ * Deserializer for ThreeTen temporal {@link Instant}s, {@link OffsetDateTime}, and {@link ZonedDateTime}s.
+ * Adapted from the jackson threetenbp InstantDeserializer to add support for deserializing rfc822 format.
+ *
+ * @author Nick Williams
+ */
+public class CustomInstantDeserializer
+ extends ThreeTenDateTimeDeserializerBase {
+ private static final long serialVersionUID = 1L;
+
+ public static final CustomInstantDeserializer INSTANT = new CustomInstantDeserializer(
+ Instant.class, DateTimeFormatter.ISO_INSTANT,
+ new Function() {
+ @Override
+ public Instant apply(TemporalAccessor temporalAccessor) {
+ return Instant.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromIntegerArguments a) {
+ return Instant.ofEpochMilli(a.value);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromDecimalArguments a) {
+ return Instant.ofEpochSecond(a.integer, a.fraction);
+ }
+ },
+ null
+ );
+
+ public static final CustomInstantDeserializer OFFSET_DATE_TIME = new CustomInstantDeserializer(
+ OffsetDateTime.class, DateTimeFormatter.ISO_OFFSET_DATE_TIME,
+ new Function() {
+ @Override
+ public OffsetDateTime apply(TemporalAccessor temporalAccessor) {
+ return OffsetDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromIntegerArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromDecimalArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public OffsetDateTime apply(OffsetDateTime d, ZoneId z) {
+ return d.withOffsetSameInstant(z.getRules().getOffset(d.toLocalDateTime()));
+ }
+ }
+ );
+
+ public static final CustomInstantDeserializer ZONED_DATE_TIME = new CustomInstantDeserializer(
+ ZonedDateTime.class, DateTimeFormatter.ISO_ZONED_DATE_TIME,
+ new Function() {
+ @Override
+ public ZonedDateTime apply(TemporalAccessor temporalAccessor) {
+ return ZonedDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromIntegerArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromDecimalArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public ZonedDateTime apply(ZonedDateTime zonedDateTime, ZoneId zoneId) {
+ return zonedDateTime.withZoneSameInstant(zoneId);
+ }
+ }
+ );
+
+ protected final Function fromMilliseconds;
+
+ protected final Function fromNanoseconds;
+
+ protected final Function parsedToValue;
+
+ protected final BiFunction adjust;
+
+ protected CustomInstantDeserializer(Class supportedType,
+ DateTimeFormatter parser,
+ Function parsedToValue,
+ Function fromMilliseconds,
+ Function fromNanoseconds,
+ BiFunction adjust) {
+ super(supportedType, parser);
+ this.parsedToValue = parsedToValue;
+ this.fromMilliseconds = fromMilliseconds;
+ this.fromNanoseconds = fromNanoseconds;
+ this.adjust = adjust == null ? new BiFunction() {
+ @Override
+ public T apply(T t, ZoneId zoneId) {
+ return t;
+ }
+ } : adjust;
+ }
+
+ @SuppressWarnings("unchecked")
+ protected CustomInstantDeserializer(CustomInstantDeserializer base, DateTimeFormatter f) {
+ super((Class) base.handledType(), f);
+ parsedToValue = base.parsedToValue;
+ fromMilliseconds = base.fromMilliseconds;
+ fromNanoseconds = base.fromNanoseconds;
+ adjust = base.adjust;
+ }
+
+ @Override
+ protected JsonDeserializer withDateFormat(DateTimeFormatter dtf) {
+ if (dtf == _formatter) {
+ return this;
+ }
+ return new CustomInstantDeserializer(this, dtf);
+ }
+
+ @Override
+ public T deserialize(JsonParser parser, DeserializationContext context) throws IOException {
+ //NOTE: Timestamps contain no timezone info, and are always in configured TZ. Only
+ //string values have to be adjusted to the configured TZ.
+ switch (parser.getCurrentTokenId()) {
+ case JsonTokenId.ID_NUMBER_FLOAT: {
+ BigDecimal value = parser.getDecimalValue();
+ long seconds = value.longValue();
+ int nanoseconds = DecimalUtils.extractNanosecondDecimal(value, seconds);
+ return fromNanoseconds.apply(new FromDecimalArguments(
+ seconds, nanoseconds, getZone(context)));
+ }
+
+ case JsonTokenId.ID_NUMBER_INT: {
+ long timestamp = parser.getLongValue();
+ if (context.isEnabled(DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS)) {
+ return this.fromNanoseconds.apply(new FromDecimalArguments(
+ timestamp, 0, this.getZone(context)
+ ));
+ }
+ return this.fromMilliseconds.apply(new FromIntegerArguments(
+ timestamp, this.getZone(context)
+ ));
+ }
+
+ case JsonTokenId.ID_STRING: {
+ String string = parser.getText().trim();
+ if (string.length() == 0) {
+ return null;
+ }
+ if (string.endsWith("+0000")) {
+ string = string.substring(0, string.length() - 5) + "Z";
+ }
+ T value;
+ try {
+ TemporalAccessor acc = _formatter.parse(string);
+ value = parsedToValue.apply(acc);
+ if (context.isEnabled(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)) {
+ return adjust.apply(value, this.getZone(context));
+ }
+ } catch (DateTimeException e) {
+ throw _peelDTE(e);
+ }
+ return value;
+ }
+ }
+ throw context.mappingException("Expected type float, integer, or string.");
+ }
+
+ private ZoneId getZone(DeserializationContext context) {
+ // Instants are always in UTC, so don't waste compute cycles
+ return (_valueClass == Instant.class) ? null : DateTimeUtils.timeZoneToZoneId(context.getTimeZone());
+ }
+
+ private static class FromIntegerArguments {
+ public final long value;
+ public final ZoneId zoneId;
+
+ private FromIntegerArguments(long value, ZoneId zoneId) {
+ this.value = value;
+ this.zoneId = zoneId;
+ }
+ }
+
+ private static class FromDecimalArguments {
+ public final long integer;
+ public final int fraction;
+ public final ZoneId zoneId;
+
+ private FromDecimalArguments(long integer, int fraction, ZoneId zoneId) {
+ this.integer = integer;
+ this.fraction = fraction;
+ this.zoneId = zoneId;
+ }
+ }
+}
diff --git a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/api/FakeApi.java
index 3737b8286c5..b757d44bbe9 100644
--- a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/api/FakeApi.java
@@ -5,8 +5,8 @@ import io.swagger.client.EncodingUtils;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.util.ArrayList;
@@ -107,7 +107,7 @@ public interface FakeApi extends ApiClient.Api {
"Content-Type: application/xml; charset=utf-8",
"Accept: application/xml; charset=utf-8,application/json; charset=utf-8",
})
- void testEndpointParameters(@Param("number") BigDecimal number, @Param("_double") Double _double, @Param("patternWithoutDelimiter") String patternWithoutDelimiter, @Param("_byte") byte[] _byte, @Param("integer") Integer integer, @Param("int32") Integer int32, @Param("int64") Long int64, @Param("_float") Float _float, @Param("string") String string, @Param("binary") byte[] binary, @Param("date") LocalDate date, @Param("dateTime") DateTime dateTime, @Param("password") String password, @Param("paramCallback") String paramCallback);
+ void testEndpointParameters(@Param("number") BigDecimal number, @Param("_double") Double _double, @Param("patternWithoutDelimiter") String patternWithoutDelimiter, @Param("_byte") byte[] _byte, @Param("integer") Integer integer, @Param("int32") Integer int32, @Param("int64") Long int64, @Param("_float") Float _float, @Param("string") String string, @Param("binary") byte[] binary, @Param("date") LocalDate date, @Param("dateTime") OffsetDateTime dateTime, @Param("password") String password, @Param("paramCallback") String paramCallback);
/**
* To test enum parameters
diff --git a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/FormatTest.java
index c2aa5f35fed..3897095d840 100644
--- a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/FormatTest.java
@@ -21,8 +21,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -60,7 +60,7 @@ public class FormatTest {
private LocalDate date = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("uuid")
private UUID uuid = null;
@@ -258,7 +258,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -268,11 +268,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 9cd0ca678b8..229669da93c 100644
--- a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -35,7 +35,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("map")
private Map map = null;
@@ -58,7 +58,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -68,11 +68,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/Order.java
index d08d27721af..2edfd83b31c 100644
--- a/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/feign/src/main/java/io/swagger/client/model/Order.java
@@ -19,7 +19,7 @@ import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -36,7 +36,7 @@ public class Order {
private Integer quantity = null;
@JsonProperty("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -135,7 +135,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -145,11 +145,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/jersey1/.swagger-codegen/VERSION b/samples/client/petstore/java/jersey1/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/jersey1/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/jersey1/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/jersey1/build.gradle b/samples/client/petstore/java/jersey1/build.gradle
index fca05cc6303..1845b51a5dc 100644
--- a/samples/client/petstore/java/jersey1/build.gradle
+++ b/samples/client/petstore/java/jersey1/build.gradle
@@ -95,7 +95,7 @@ if(hasProperty('target') && target == 'android') {
ext {
swagger_annotations_version = "1.5.15"
- jackson_version = "2.8.9"
+ jackson_version = "2.6.4"
jersey_version = "1.19.4"
jodatime_version = "2.9.9"
junit_version = "4.12"
@@ -109,7 +109,7 @@ dependencies {
compile "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
compile "com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:$jackson_version"
- compile "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version",
+ compile "com.github.joschi.jackson:jackson-datatype-threetenbp:$jackson_version",
compile "com.brsanthu:migbase64:2.2"
testCompile "junit:junit:$junit_version"
}
diff --git a/samples/client/petstore/java/jersey1/docs/FakeApi.md b/samples/client/petstore/java/jersey1/docs/FakeApi.md
index 5a061d3e6b5..0418b476a66 100644
--- a/samples/client/petstore/java/jersey1/docs/FakeApi.md
+++ b/samples/client/petstore/java/jersey1/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -301,7 +301,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/jersey1/docs/FormatTest.md b/samples/client/petstore/java/jersey1/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/jersey1/docs/FormatTest.md
+++ b/samples/client/petstore/java/jersey1/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/jersey1/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/jersey1/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/jersey1/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/jersey1/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/jersey1/docs/Order.md b/samples/client/petstore/java/jersey1/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/jersey1/docs/Order.md
+++ b/samples/client/petstore/java/jersey1/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/jersey1/pom.xml b/samples/client/petstore/java/jersey1/pom.xml
index 152363c688f..ac1ca1351e7 100644
--- a/samples/client/petstore/java/jersey1/pom.xml
+++ b/samples/client/petstore/java/jersey1/pom.xml
@@ -218,20 +218,16 @@
${jackson-version}
- com.fasterxml.jackson.datatype
- jackson-datatype-joda
+ com.github.joschi.jackson
+ jackson-datatype-threetenbp
${jackson-version}
-
com.brsanthu
migbase64
2.2
-
-
-
junit
@@ -244,7 +240,7 @@
UTF-8
1.5.15
1.19.4
- 2.7.5
+ 2.6.4
1.0.0
4.12
diff --git a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/ApiClient.java b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/ApiClient.java
index a130296e689..7a3082bef60 100644
--- a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/ApiClient.java
+++ b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/ApiClient.java
@@ -12,9 +12,11 @@
package io.swagger.client;
+import org.threeten.bp.*;
+
import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.databind.*;
-import com.fasterxml.jackson.datatype.joda.JodaModule;
+import com.fasterxml.jackson.datatype.threetenbp.ThreeTenModule;
import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
import com.sun.jersey.api.client.Client;
@@ -78,7 +80,11 @@ public class ApiClient {
objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
objectMapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
objectMapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING);
- objectMapper.registerModule(new JodaModule());
+ ThreeTenModule module = new ThreeTenModule();
+ module.addDeserializer(Instant.class, CustomInstantDeserializer.INSTANT);
+ module.addDeserializer(OffsetDateTime.class, CustomInstantDeserializer.OFFSET_DATE_TIME);
+ module.addDeserializer(ZonedDateTime.class, CustomInstantDeserializer.ZONED_DATE_TIME);
+ objectMapper.registerModule(module);
objectMapper.setDateFormat(ApiClient.buildDefaultDateFormat());
dateFormat = ApiClient.buildDefaultDateFormat();
diff --git a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/CustomInstantDeserializer.java b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/CustomInstantDeserializer.java
new file mode 100644
index 00000000000..5ed8ba446ec
--- /dev/null
+++ b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/CustomInstantDeserializer.java
@@ -0,0 +1,232 @@
+package io.swagger.client;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonTokenId;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.JsonDeserializer;
+import com.fasterxml.jackson.datatype.threetenbp.DateTimeUtils;
+import com.fasterxml.jackson.datatype.threetenbp.DecimalUtils;
+import com.fasterxml.jackson.datatype.threetenbp.deser.ThreeTenDateTimeDeserializerBase;
+import com.fasterxml.jackson.datatype.threetenbp.function.BiFunction;
+import com.fasterxml.jackson.datatype.threetenbp.function.Function;
+import org.threeten.bp.DateTimeException;
+import org.threeten.bp.Instant;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.ZoneId;
+import org.threeten.bp.ZonedDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+import org.threeten.bp.temporal.Temporal;
+import org.threeten.bp.temporal.TemporalAccessor;
+
+import java.io.IOException;
+import java.math.BigDecimal;
+
+/**
+ * Deserializer for ThreeTen temporal {@link Instant}s, {@link OffsetDateTime}, and {@link ZonedDateTime}s.
+ * Adapted from the jackson threetenbp InstantDeserializer to add support for deserializing rfc822 format.
+ *
+ * @author Nick Williams
+ */
+public class CustomInstantDeserializer
+ extends ThreeTenDateTimeDeserializerBase {
+ private static final long serialVersionUID = 1L;
+
+ public static final CustomInstantDeserializer INSTANT = new CustomInstantDeserializer(
+ Instant.class, DateTimeFormatter.ISO_INSTANT,
+ new Function() {
+ @Override
+ public Instant apply(TemporalAccessor temporalAccessor) {
+ return Instant.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromIntegerArguments a) {
+ return Instant.ofEpochMilli(a.value);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromDecimalArguments a) {
+ return Instant.ofEpochSecond(a.integer, a.fraction);
+ }
+ },
+ null
+ );
+
+ public static final CustomInstantDeserializer OFFSET_DATE_TIME = new CustomInstantDeserializer(
+ OffsetDateTime.class, DateTimeFormatter.ISO_OFFSET_DATE_TIME,
+ new Function() {
+ @Override
+ public OffsetDateTime apply(TemporalAccessor temporalAccessor) {
+ return OffsetDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromIntegerArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromDecimalArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public OffsetDateTime apply(OffsetDateTime d, ZoneId z) {
+ return d.withOffsetSameInstant(z.getRules().getOffset(d.toLocalDateTime()));
+ }
+ }
+ );
+
+ public static final CustomInstantDeserializer ZONED_DATE_TIME = new CustomInstantDeserializer(
+ ZonedDateTime.class, DateTimeFormatter.ISO_ZONED_DATE_TIME,
+ new Function() {
+ @Override
+ public ZonedDateTime apply(TemporalAccessor temporalAccessor) {
+ return ZonedDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromIntegerArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromDecimalArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public ZonedDateTime apply(ZonedDateTime zonedDateTime, ZoneId zoneId) {
+ return zonedDateTime.withZoneSameInstant(zoneId);
+ }
+ }
+ );
+
+ protected final Function fromMilliseconds;
+
+ protected final Function fromNanoseconds;
+
+ protected final Function parsedToValue;
+
+ protected final BiFunction adjust;
+
+ protected CustomInstantDeserializer(Class supportedType,
+ DateTimeFormatter parser,
+ Function parsedToValue,
+ Function fromMilliseconds,
+ Function fromNanoseconds,
+ BiFunction adjust) {
+ super(supportedType, parser);
+ this.parsedToValue = parsedToValue;
+ this.fromMilliseconds = fromMilliseconds;
+ this.fromNanoseconds = fromNanoseconds;
+ this.adjust = adjust == null ? new BiFunction() {
+ @Override
+ public T apply(T t, ZoneId zoneId) {
+ return t;
+ }
+ } : adjust;
+ }
+
+ @SuppressWarnings("unchecked")
+ protected CustomInstantDeserializer(CustomInstantDeserializer base, DateTimeFormatter f) {
+ super((Class) base.handledType(), f);
+ parsedToValue = base.parsedToValue;
+ fromMilliseconds = base.fromMilliseconds;
+ fromNanoseconds = base.fromNanoseconds;
+ adjust = base.adjust;
+ }
+
+ @Override
+ protected JsonDeserializer withDateFormat(DateTimeFormatter dtf) {
+ if (dtf == _formatter) {
+ return this;
+ }
+ return new CustomInstantDeserializer(this, dtf);
+ }
+
+ @Override
+ public T deserialize(JsonParser parser, DeserializationContext context) throws IOException {
+ //NOTE: Timestamps contain no timezone info, and are always in configured TZ. Only
+ //string values have to be adjusted to the configured TZ.
+ switch (parser.getCurrentTokenId()) {
+ case JsonTokenId.ID_NUMBER_FLOAT: {
+ BigDecimal value = parser.getDecimalValue();
+ long seconds = value.longValue();
+ int nanoseconds = DecimalUtils.extractNanosecondDecimal(value, seconds);
+ return fromNanoseconds.apply(new FromDecimalArguments(
+ seconds, nanoseconds, getZone(context)));
+ }
+
+ case JsonTokenId.ID_NUMBER_INT: {
+ long timestamp = parser.getLongValue();
+ if (context.isEnabled(DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS)) {
+ return this.fromNanoseconds.apply(new FromDecimalArguments(
+ timestamp, 0, this.getZone(context)
+ ));
+ }
+ return this.fromMilliseconds.apply(new FromIntegerArguments(
+ timestamp, this.getZone(context)
+ ));
+ }
+
+ case JsonTokenId.ID_STRING: {
+ String string = parser.getText().trim();
+ if (string.length() == 0) {
+ return null;
+ }
+ if (string.endsWith("+0000")) {
+ string = string.substring(0, string.length() - 5) + "Z";
+ }
+ T value;
+ try {
+ TemporalAccessor acc = _formatter.parse(string);
+ value = parsedToValue.apply(acc);
+ if (context.isEnabled(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)) {
+ return adjust.apply(value, this.getZone(context));
+ }
+ } catch (DateTimeException e) {
+ throw _peelDTE(e);
+ }
+ return value;
+ }
+ }
+ throw context.mappingException("Expected type float, integer, or string.");
+ }
+
+ private ZoneId getZone(DeserializationContext context) {
+ // Instants are always in UTC, so don't waste compute cycles
+ return (_valueClass == Instant.class) ? null : DateTimeUtils.timeZoneToZoneId(context.getTimeZone());
+ }
+
+ private static class FromIntegerArguments {
+ public final long value;
+ public final ZoneId zoneId;
+
+ private FromIntegerArguments(long value, ZoneId zoneId) {
+ this.value = value;
+ this.zoneId = zoneId;
+ }
+ }
+
+ private static class FromDecimalArguments {
+ public final long integer;
+ public final int fraction;
+ public final ZoneId zoneId;
+
+ private FromDecimalArguments(long integer, int fraction, ZoneId zoneId) {
+ this.integer = integer;
+ this.fraction = fraction;
+ this.zoneId = zoneId;
+ }
+ }
+}
diff --git a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/api/FakeApi.java
index fe92f957408..f5df2bb813f 100644
--- a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/api/FakeApi.java
@@ -22,8 +22,8 @@ import io.swagger.client.Pair;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
@@ -261,7 +261,7 @@ public class FakeApi {
* @param paramCallback None (optional)
* @throws ApiException if fails to make API call
*/
- public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback) throws ApiException {
+ public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback) throws ApiException {
Object localVarPostBody = null;
// verify the required parameter 'number' is set
diff --git a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/FormatTest.java
index c2aa5f35fed..3897095d840 100644
--- a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/FormatTest.java
@@ -21,8 +21,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -60,7 +60,7 @@ public class FormatTest {
private LocalDate date = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("uuid")
private UUID uuid = null;
@@ -258,7 +258,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -268,11 +268,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 9cd0ca678b8..229669da93c 100644
--- a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -35,7 +35,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("map")
private Map map = null;
@@ -58,7 +58,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -68,11 +68,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/Order.java
index d08d27721af..2edfd83b31c 100644
--- a/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/jersey1/src/main/java/io/swagger/client/model/Order.java
@@ -19,7 +19,7 @@ import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -36,7 +36,7 @@ public class Order {
private Integer quantity = null;
@JsonProperty("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -135,7 +135,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -145,11 +145,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/jersey2-java6/.swagger-codegen/VERSION b/samples/client/petstore/java/jersey2-java6/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/jersey2-java6/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/jersey2-java6/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/jersey2-java6/build.gradle b/samples/client/petstore/java/jersey2-java6/build.gradle
index 4809dcd79a4..866f2172180 100644
--- a/samples/client/petstore/java/jersey2-java6/build.gradle
+++ b/samples/client/petstore/java/jersey2-java6/build.gradle
@@ -96,7 +96,6 @@ ext {
swagger_annotations_version = "1.5.15"
jackson_version = "2.8.9"
jersey_version = "2.25.1"
- jodatime_version = "2.9.9"
commons_io_version=2.5
commons_lang3_version=3.6
junit_version = "4.12"
@@ -110,10 +109,9 @@ dependencies {
compile "com.fasterxml.jackson.core:jackson-core:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
- compile "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version"
- compile "joda-time:joda-time:$jodatime_version"
- compile "com.brsanthu:migbase64:2.2"
compile "commons-io:commons-io:$commons_io_version"
compile "org.apache.commons:commons-lang3:$commons_lang3_version"
+ compile "com.github.joschi.jackson:jackson-datatype-threetenbp:$jackson_version",
+ compile "com.brsanthu:migbase64:2.2"
testCompile "junit:junit:$junit_version"
}
diff --git a/samples/client/petstore/java/jersey2-java6/build.sbt b/samples/client/petstore/java/jersey2-java6/build.sbt
index 05f502ac4ab..164450b9f06 100644
--- a/samples/client/petstore/java/jersey2-java6/build.sbt
+++ b/samples/client/petstore/java/jersey2-java6/build.sbt
@@ -13,11 +13,10 @@ lazy val root = (project in file(".")).
"org.glassfish.jersey.core" % "jersey-client" % "2.25.1",
"org.glassfish.jersey.media" % "jersey-media-multipart" % "2.25.1",
"org.glassfish.jersey.media" % "jersey-media-json-jackson" % "2.25.1",
- "com.fasterxml.jackson.core" % "jackson-core" % "2.8.9",
- "com.fasterxml.jackson.core" % "jackson-annotations" % "2.8.9",
- "com.fasterxml.jackson.core" % "jackson-databind" % "2.8.9",
- "com.fasterxml.jackson.datatype" % "jackson-datatype-joda" % "2.8.9",
- "joda-time" % "joda-time" % "2.9.9",
+ "com.fasterxml.jackson.core" % "jackson-core" % "2.6.4" % "compile",
+ "com.fasterxml.jackson.core" % "jackson-annotations" % "2.6.4" % "compile",
+ "com.fasterxml.jackson.core" % "jackson-databind" % "2.6.4" % "compile",
+ "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile",
"com.brsanthu" % "migbase64" % "2.2",
"org.apache.commons" % "commons-lang3" % "3.6",
"commons-io" % "commons-io" % "2.5",
diff --git a/samples/client/petstore/java/jersey2-java6/docs/FakeApi.md b/samples/client/petstore/java/jersey2-java6/docs/FakeApi.md
index 5a061d3e6b5..0418b476a66 100644
--- a/samples/client/petstore/java/jersey2-java6/docs/FakeApi.md
+++ b/samples/client/petstore/java/jersey2-java6/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -301,7 +301,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/jersey2-java6/docs/FormatTest.md b/samples/client/petstore/java/jersey2-java6/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/jersey2-java6/docs/FormatTest.md
+++ b/samples/client/petstore/java/jersey2-java6/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/jersey2-java6/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/jersey2-java6/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/jersey2-java6/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/jersey2-java6/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/jersey2-java6/docs/Order.md b/samples/client/petstore/java/jersey2-java6/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/jersey2-java6/docs/Order.md
+++ b/samples/client/petstore/java/jersey2-java6/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/jersey2-java6/pom.xml b/samples/client/petstore/java/jersey2-java6/pom.xml
index 10c36abe73a..ae6cd7e30f4 100644
--- a/samples/client/petstore/java/jersey2-java6/pom.xml
+++ b/samples/client/petstore/java/jersey2-java6/pom.xml
@@ -217,35 +217,26 @@
${jackson-version}
- com.fasterxml.jackson.datatype
- jackson-datatype-joda
+ com.github.joschi.jackson
+ jackson-datatype-threetenbp
${jackson-version}
-
- joda-time
- joda-time
- ${jodatime-version}
-
-
com.brsanthu
migbase64
2.2
-
org.apache.commons
commons-lang3
${commons_lang3_version}
-
commons-io
commons-io
${commons_io_version}
-
junit
@@ -257,10 +248,9 @@
1.5.15
2.25.1
- 2.8.9
- 2.9.9
2.5
3.6
+ 2.6.4
1.0.0
4.12
diff --git a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/CustomInstantDeserializer.java b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/CustomInstantDeserializer.java
new file mode 100644
index 00000000000..5ed8ba446ec
--- /dev/null
+++ b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/CustomInstantDeserializer.java
@@ -0,0 +1,232 @@
+package io.swagger.client;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonTokenId;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.JsonDeserializer;
+import com.fasterxml.jackson.datatype.threetenbp.DateTimeUtils;
+import com.fasterxml.jackson.datatype.threetenbp.DecimalUtils;
+import com.fasterxml.jackson.datatype.threetenbp.deser.ThreeTenDateTimeDeserializerBase;
+import com.fasterxml.jackson.datatype.threetenbp.function.BiFunction;
+import com.fasterxml.jackson.datatype.threetenbp.function.Function;
+import org.threeten.bp.DateTimeException;
+import org.threeten.bp.Instant;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.ZoneId;
+import org.threeten.bp.ZonedDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+import org.threeten.bp.temporal.Temporal;
+import org.threeten.bp.temporal.TemporalAccessor;
+
+import java.io.IOException;
+import java.math.BigDecimal;
+
+/**
+ * Deserializer for ThreeTen temporal {@link Instant}s, {@link OffsetDateTime}, and {@link ZonedDateTime}s.
+ * Adapted from the jackson threetenbp InstantDeserializer to add support for deserializing rfc822 format.
+ *
+ * @author Nick Williams
+ */
+public class CustomInstantDeserializer
+ extends ThreeTenDateTimeDeserializerBase {
+ private static final long serialVersionUID = 1L;
+
+ public static final CustomInstantDeserializer INSTANT = new CustomInstantDeserializer(
+ Instant.class, DateTimeFormatter.ISO_INSTANT,
+ new Function() {
+ @Override
+ public Instant apply(TemporalAccessor temporalAccessor) {
+ return Instant.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromIntegerArguments a) {
+ return Instant.ofEpochMilli(a.value);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromDecimalArguments a) {
+ return Instant.ofEpochSecond(a.integer, a.fraction);
+ }
+ },
+ null
+ );
+
+ public static final CustomInstantDeserializer OFFSET_DATE_TIME = new CustomInstantDeserializer(
+ OffsetDateTime.class, DateTimeFormatter.ISO_OFFSET_DATE_TIME,
+ new Function() {
+ @Override
+ public OffsetDateTime apply(TemporalAccessor temporalAccessor) {
+ return OffsetDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromIntegerArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromDecimalArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public OffsetDateTime apply(OffsetDateTime d, ZoneId z) {
+ return d.withOffsetSameInstant(z.getRules().getOffset(d.toLocalDateTime()));
+ }
+ }
+ );
+
+ public static final CustomInstantDeserializer ZONED_DATE_TIME = new CustomInstantDeserializer(
+ ZonedDateTime.class, DateTimeFormatter.ISO_ZONED_DATE_TIME,
+ new Function() {
+ @Override
+ public ZonedDateTime apply(TemporalAccessor temporalAccessor) {
+ return ZonedDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromIntegerArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromDecimalArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public ZonedDateTime apply(ZonedDateTime zonedDateTime, ZoneId zoneId) {
+ return zonedDateTime.withZoneSameInstant(zoneId);
+ }
+ }
+ );
+
+ protected final Function fromMilliseconds;
+
+ protected final Function fromNanoseconds;
+
+ protected final Function parsedToValue;
+
+ protected final BiFunction adjust;
+
+ protected CustomInstantDeserializer(Class supportedType,
+ DateTimeFormatter parser,
+ Function parsedToValue,
+ Function fromMilliseconds,
+ Function fromNanoseconds,
+ BiFunction adjust) {
+ super(supportedType, parser);
+ this.parsedToValue = parsedToValue;
+ this.fromMilliseconds = fromMilliseconds;
+ this.fromNanoseconds = fromNanoseconds;
+ this.adjust = adjust == null ? new BiFunction() {
+ @Override
+ public T apply(T t, ZoneId zoneId) {
+ return t;
+ }
+ } : adjust;
+ }
+
+ @SuppressWarnings("unchecked")
+ protected CustomInstantDeserializer(CustomInstantDeserializer base, DateTimeFormatter f) {
+ super((Class) base.handledType(), f);
+ parsedToValue = base.parsedToValue;
+ fromMilliseconds = base.fromMilliseconds;
+ fromNanoseconds = base.fromNanoseconds;
+ adjust = base.adjust;
+ }
+
+ @Override
+ protected JsonDeserializer withDateFormat(DateTimeFormatter dtf) {
+ if (dtf == _formatter) {
+ return this;
+ }
+ return new CustomInstantDeserializer(this, dtf);
+ }
+
+ @Override
+ public T deserialize(JsonParser parser, DeserializationContext context) throws IOException {
+ //NOTE: Timestamps contain no timezone info, and are always in configured TZ. Only
+ //string values have to be adjusted to the configured TZ.
+ switch (parser.getCurrentTokenId()) {
+ case JsonTokenId.ID_NUMBER_FLOAT: {
+ BigDecimal value = parser.getDecimalValue();
+ long seconds = value.longValue();
+ int nanoseconds = DecimalUtils.extractNanosecondDecimal(value, seconds);
+ return fromNanoseconds.apply(new FromDecimalArguments(
+ seconds, nanoseconds, getZone(context)));
+ }
+
+ case JsonTokenId.ID_NUMBER_INT: {
+ long timestamp = parser.getLongValue();
+ if (context.isEnabled(DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS)) {
+ return this.fromNanoseconds.apply(new FromDecimalArguments(
+ timestamp, 0, this.getZone(context)
+ ));
+ }
+ return this.fromMilliseconds.apply(new FromIntegerArguments(
+ timestamp, this.getZone(context)
+ ));
+ }
+
+ case JsonTokenId.ID_STRING: {
+ String string = parser.getText().trim();
+ if (string.length() == 0) {
+ return null;
+ }
+ if (string.endsWith("+0000")) {
+ string = string.substring(0, string.length() - 5) + "Z";
+ }
+ T value;
+ try {
+ TemporalAccessor acc = _formatter.parse(string);
+ value = parsedToValue.apply(acc);
+ if (context.isEnabled(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)) {
+ return adjust.apply(value, this.getZone(context));
+ }
+ } catch (DateTimeException e) {
+ throw _peelDTE(e);
+ }
+ return value;
+ }
+ }
+ throw context.mappingException("Expected type float, integer, or string.");
+ }
+
+ private ZoneId getZone(DeserializationContext context) {
+ // Instants are always in UTC, so don't waste compute cycles
+ return (_valueClass == Instant.class) ? null : DateTimeUtils.timeZoneToZoneId(context.getTimeZone());
+ }
+
+ private static class FromIntegerArguments {
+ public final long value;
+ public final ZoneId zoneId;
+
+ private FromIntegerArguments(long value, ZoneId zoneId) {
+ this.value = value;
+ this.zoneId = zoneId;
+ }
+ }
+
+ private static class FromDecimalArguments {
+ public final long integer;
+ public final int fraction;
+ public final ZoneId zoneId;
+
+ private FromDecimalArguments(long integer, int fraction, ZoneId zoneId) {
+ this.integer = integer;
+ this.fraction = fraction;
+ this.zoneId = zoneId;
+ }
+ }
+}
diff --git a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/JSON.java b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/JSON.java
index 131b1b34d02..433f1a313e1 100644
--- a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/JSON.java
+++ b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/JSON.java
@@ -1,8 +1,9 @@
package io.swagger.client;
+import org.threeten.bp.*;
import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.databind.*;
-import com.fasterxml.jackson.datatype.joda.*;
+import com.fasterxml.jackson.datatype.threetenbp.ThreeTenModule;
import java.text.DateFormat;
@@ -21,7 +22,11 @@ public class JSON implements ContextResolver {
mapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
mapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING);
mapper.setDateFormat(new RFC3339DateFormat());
- mapper.registerModule(new JodaModule());
+ ThreeTenModule module = new ThreeTenModule();
+ module.addDeserializer(Instant.class, CustomInstantDeserializer.INSTANT);
+ module.addDeserializer(OffsetDateTime.class, CustomInstantDeserializer.OFFSET_DATE_TIME);
+ module.addDeserializer(ZonedDateTime.class, CustomInstantDeserializer.ZONED_DATE_TIME);
+ mapper.registerModule(module);
}
/**
diff --git a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/api/FakeApi.java
index 8aa23a3d18f..f810edcd3d1 100644
--- a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/api/FakeApi.java
@@ -9,8 +9,8 @@ import javax.ws.rs.core.GenericType;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.util.ArrayList;
@@ -242,7 +242,7 @@ public class FakeApi {
* @param paramCallback None (optional)
* @throws ApiException if fails to make API call
*/
- public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback) throws ApiException {
+ public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback) throws ApiException {
Object localVarPostBody = null;
// verify the required parameter 'number' is set
diff --git a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/FormatTest.java
index 78b6cd6b0f2..0ed06c2934e 100644
--- a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/FormatTest.java
@@ -21,8 +21,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -60,7 +60,7 @@ public class FormatTest {
private LocalDate date = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("uuid")
private UUID uuid = null;
@@ -258,7 +258,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -268,11 +268,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 6965728b56b..06ff5b6287f 100644
--- a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -35,7 +35,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("map")
private Map map = null;
@@ -58,7 +58,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -68,11 +68,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/Order.java
index 46a12da6fe5..32de914a76d 100644
--- a/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/jersey2-java6/src/main/java/io/swagger/client/model/Order.java
@@ -19,7 +19,7 @@ import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -36,7 +36,7 @@ public class Order {
private Integer quantity = null;
@JsonProperty("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -135,7 +135,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -145,11 +145,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/jersey2-java8/.swagger-codegen/VERSION b/samples/client/petstore/java/jersey2-java8/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/jersey2-java8/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/jersey2-java8/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/jersey2-java8/build.gradle b/samples/client/petstore/java/jersey2-java8/build.gradle
index bf5a6b8d236..744c864310a 100644
--- a/samples/client/petstore/java/jersey2-java8/build.gradle
+++ b/samples/client/petstore/java/jersey2-java8/build.gradle
@@ -107,6 +107,6 @@ dependencies {
compile "com.fasterxml.jackson.core:jackson-core:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
- compile "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:$jackson_version"
+ compile "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:$jackson_version",
testCompile "junit:junit:$junit_version"
}
diff --git a/samples/client/petstore/java/jersey2-java8/build.sbt b/samples/client/petstore/java/jersey2-java8/build.sbt
index 4d2a46846fa..53198db6baa 100644
--- a/samples/client/petstore/java/jersey2-java8/build.sbt
+++ b/samples/client/petstore/java/jersey2-java8/build.sbt
@@ -13,11 +13,10 @@ lazy val root = (project in file(".")).
"org.glassfish.jersey.core" % "jersey-client" % "2.25.1",
"org.glassfish.jersey.media" % "jersey-media-multipart" % "2.25.1",
"org.glassfish.jersey.media" % "jersey-media-json-jackson" % "2.25.1",
- "com.fasterxml.jackson.core" % "jackson-core" % "2.8.9",
- "com.fasterxml.jackson.core" % "jackson-annotations" % "2.8.9",
- "com.fasterxml.jackson.core" % "jackson-databind" % "2.8.9",
- "com.fasterxml.jackson.datatype" % "jackson-datatype-jsr310" % "2.8.9",
- "com.brsanthu" % "migbase64" % "2.2",
+ "com.fasterxml.jackson.core" % "jackson-core" % "2.8.9" % "compile",
+ "com.fasterxml.jackson.core" % "jackson-annotations" % "2.8.9" % "compile",
+ "com.fasterxml.jackson.core" % "jackson-databind" % "2.8.9" % "compile",
+ "com.fasterxml.jackson.datatype" % "jackson-datatype-jsr310" % "2.8.9" % "compile",
"junit" % "junit" % "4.12" % "test",
"com.novocode" % "junit-interface" % "0.10" % "test"
)
diff --git a/samples/client/petstore/java/jersey2-java8/docs/FakeApi.md b/samples/client/petstore/java/jersey2-java8/docs/FakeApi.md
index 79aed327d19..0418b476a66 100644
--- a/samples/client/petstore/java/jersey2-java8/docs/FakeApi.md
+++ b/samples/client/petstore/java/jersey2-java8/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
diff --git a/samples/client/petstore/java/jersey2-java8/pom.xml b/samples/client/petstore/java/jersey2-java8/pom.xml
index e244229dd25..2e0dc20ad8f 100644
--- a/samples/client/petstore/java/jersey2-java8/pom.xml
+++ b/samples/client/petstore/java/jersey2-java8/pom.xml
@@ -221,8 +221,6 @@
jackson-datatype-jsr310
${jackson-version}
-
-
junit
@@ -234,7 +232,7 @@
1.5.15
2.25.1
- 2.8.9
+ 2.7.5
1.0.0
4.12
diff --git a/samples/client/petstore/java/jersey2-java8/src/main/java/io/swagger/client/JSON.java b/samples/client/petstore/java/jersey2-java8/src/main/java/io/swagger/client/JSON.java
index 24503f47edf..fa10243e548 100644
--- a/samples/client/petstore/java/jersey2-java8/src/main/java/io/swagger/client/JSON.java
+++ b/samples/client/petstore/java/jersey2-java8/src/main/java/io/swagger/client/JSON.java
@@ -2,7 +2,7 @@ package io.swagger.client;
import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.databind.*;
-import com.fasterxml.jackson.datatype.jsr310.*;
+import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import java.text.DateFormat;
diff --git a/samples/client/petstore/java/jersey2/.swagger-codegen/VERSION b/samples/client/petstore/java/jersey2/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/jersey2/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/jersey2/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/jersey2/build.gradle b/samples/client/petstore/java/jersey2/build.gradle
index 2290cd0f1e6..585cdd96a55 100644
--- a/samples/client/petstore/java/jersey2/build.gradle
+++ b/samples/client/petstore/java/jersey2/build.gradle
@@ -96,7 +96,6 @@ ext {
swagger_annotations_version = "1.5.15"
jackson_version = "2.8.9"
jersey_version = "2.25.1"
- jodatime_version = "2.9.9"
junit_version = "4.12"
}
@@ -108,8 +107,7 @@ dependencies {
compile "com.fasterxml.jackson.core:jackson-core:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
- compile "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version"
- compile "joda-time:joda-time:$jodatime_version"
+ compile "com.github.joschi.jackson:jackson-datatype-threetenbp:$jackson_version",
compile "com.brsanthu:migbase64:2.2"
testCompile "junit:junit:$junit_version"
}
diff --git a/samples/client/petstore/java/jersey2/build.sbt b/samples/client/petstore/java/jersey2/build.sbt
index 9a516c92cf5..c6d1b925753 100644
--- a/samples/client/petstore/java/jersey2/build.sbt
+++ b/samples/client/petstore/java/jersey2/build.sbt
@@ -13,11 +13,10 @@ lazy val root = (project in file(".")).
"org.glassfish.jersey.core" % "jersey-client" % "2.25.1",
"org.glassfish.jersey.media" % "jersey-media-multipart" % "2.25.1",
"org.glassfish.jersey.media" % "jersey-media-json-jackson" % "2.25.1",
- "com.fasterxml.jackson.core" % "jackson-core" % "2.8.9",
- "com.fasterxml.jackson.core" % "jackson-annotations" % "2.8.9",
- "com.fasterxml.jackson.core" % "jackson-databind" % "2.8.9",
- "com.fasterxml.jackson.datatype" % "jackson-datatype-joda" % "2.8.9",
- "joda-time" % "joda-time" % "2.9.9",
+ "com.fasterxml.jackson.core" % "jackson-core" % "2.6.4" % "compile",
+ "com.fasterxml.jackson.core" % "jackson-annotations" % "2.6.4" % "compile",
+ "com.fasterxml.jackson.core" % "jackson-databind" % "2.6.4" % "compile",
+ "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile",
"com.brsanthu" % "migbase64" % "2.2",
"junit" % "junit" % "4.12" % "test",
"com.novocode" % "junit-interface" % "0.10" % "test"
diff --git a/samples/client/petstore/java/jersey2/docs/FakeApi.md b/samples/client/petstore/java/jersey2/docs/FakeApi.md
index 5a061d3e6b5..0418b476a66 100644
--- a/samples/client/petstore/java/jersey2/docs/FakeApi.md
+++ b/samples/client/petstore/java/jersey2/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -301,7 +301,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/jersey2/docs/FormatTest.md b/samples/client/petstore/java/jersey2/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/jersey2/docs/FormatTest.md
+++ b/samples/client/petstore/java/jersey2/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/jersey2/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/jersey2/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/jersey2/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/jersey2/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/jersey2/docs/Order.md b/samples/client/petstore/java/jersey2/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/jersey2/docs/Order.md
+++ b/samples/client/petstore/java/jersey2/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/jersey2/pom.xml b/samples/client/petstore/java/jersey2/pom.xml
index 2b114d13bbe..3f5bfd600cd 100644
--- a/samples/client/petstore/java/jersey2/pom.xml
+++ b/samples/client/petstore/java/jersey2/pom.xml
@@ -217,24 +217,16 @@
${jackson-version}
- com.fasterxml.jackson.datatype
- jackson-datatype-joda
+ com.github.joschi.jackson
+ jackson-datatype-threetenbp
${jackson-version}
-
- joda-time
- joda-time
- ${jodatime-version}
-
-
com.brsanthu
migbase64
2.2
-
-
junit
@@ -246,8 +238,7 @@
1.5.15
2.25.1
- 2.8.9
- 2.9.9
+ 2.6.4
1.0.0
4.12
diff --git a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/CustomInstantDeserializer.java b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/CustomInstantDeserializer.java
new file mode 100644
index 00000000000..5ed8ba446ec
--- /dev/null
+++ b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/CustomInstantDeserializer.java
@@ -0,0 +1,232 @@
+package io.swagger.client;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonTokenId;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.JsonDeserializer;
+import com.fasterxml.jackson.datatype.threetenbp.DateTimeUtils;
+import com.fasterxml.jackson.datatype.threetenbp.DecimalUtils;
+import com.fasterxml.jackson.datatype.threetenbp.deser.ThreeTenDateTimeDeserializerBase;
+import com.fasterxml.jackson.datatype.threetenbp.function.BiFunction;
+import com.fasterxml.jackson.datatype.threetenbp.function.Function;
+import org.threeten.bp.DateTimeException;
+import org.threeten.bp.Instant;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.ZoneId;
+import org.threeten.bp.ZonedDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+import org.threeten.bp.temporal.Temporal;
+import org.threeten.bp.temporal.TemporalAccessor;
+
+import java.io.IOException;
+import java.math.BigDecimal;
+
+/**
+ * Deserializer for ThreeTen temporal {@link Instant}s, {@link OffsetDateTime}, and {@link ZonedDateTime}s.
+ * Adapted from the jackson threetenbp InstantDeserializer to add support for deserializing rfc822 format.
+ *
+ * @author Nick Williams
+ */
+public class CustomInstantDeserializer
+ extends ThreeTenDateTimeDeserializerBase {
+ private static final long serialVersionUID = 1L;
+
+ public static final CustomInstantDeserializer INSTANT = new CustomInstantDeserializer(
+ Instant.class, DateTimeFormatter.ISO_INSTANT,
+ new Function() {
+ @Override
+ public Instant apply(TemporalAccessor temporalAccessor) {
+ return Instant.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromIntegerArguments a) {
+ return Instant.ofEpochMilli(a.value);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromDecimalArguments a) {
+ return Instant.ofEpochSecond(a.integer, a.fraction);
+ }
+ },
+ null
+ );
+
+ public static final CustomInstantDeserializer OFFSET_DATE_TIME = new CustomInstantDeserializer(
+ OffsetDateTime.class, DateTimeFormatter.ISO_OFFSET_DATE_TIME,
+ new Function() {
+ @Override
+ public OffsetDateTime apply(TemporalAccessor temporalAccessor) {
+ return OffsetDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromIntegerArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromDecimalArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public OffsetDateTime apply(OffsetDateTime d, ZoneId z) {
+ return d.withOffsetSameInstant(z.getRules().getOffset(d.toLocalDateTime()));
+ }
+ }
+ );
+
+ public static final CustomInstantDeserializer ZONED_DATE_TIME = new CustomInstantDeserializer(
+ ZonedDateTime.class, DateTimeFormatter.ISO_ZONED_DATE_TIME,
+ new Function() {
+ @Override
+ public ZonedDateTime apply(TemporalAccessor temporalAccessor) {
+ return ZonedDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromIntegerArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromDecimalArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public ZonedDateTime apply(ZonedDateTime zonedDateTime, ZoneId zoneId) {
+ return zonedDateTime.withZoneSameInstant(zoneId);
+ }
+ }
+ );
+
+ protected final Function fromMilliseconds;
+
+ protected final Function fromNanoseconds;
+
+ protected final Function parsedToValue;
+
+ protected final BiFunction adjust;
+
+ protected CustomInstantDeserializer(Class supportedType,
+ DateTimeFormatter parser,
+ Function parsedToValue,
+ Function fromMilliseconds,
+ Function fromNanoseconds,
+ BiFunction adjust) {
+ super(supportedType, parser);
+ this.parsedToValue = parsedToValue;
+ this.fromMilliseconds = fromMilliseconds;
+ this.fromNanoseconds = fromNanoseconds;
+ this.adjust = adjust == null ? new BiFunction() {
+ @Override
+ public T apply(T t, ZoneId zoneId) {
+ return t;
+ }
+ } : adjust;
+ }
+
+ @SuppressWarnings("unchecked")
+ protected CustomInstantDeserializer(CustomInstantDeserializer base, DateTimeFormatter f) {
+ super((Class) base.handledType(), f);
+ parsedToValue = base.parsedToValue;
+ fromMilliseconds = base.fromMilliseconds;
+ fromNanoseconds = base.fromNanoseconds;
+ adjust = base.adjust;
+ }
+
+ @Override
+ protected JsonDeserializer withDateFormat(DateTimeFormatter dtf) {
+ if (dtf == _formatter) {
+ return this;
+ }
+ return new CustomInstantDeserializer(this, dtf);
+ }
+
+ @Override
+ public T deserialize(JsonParser parser, DeserializationContext context) throws IOException {
+ //NOTE: Timestamps contain no timezone info, and are always in configured TZ. Only
+ //string values have to be adjusted to the configured TZ.
+ switch (parser.getCurrentTokenId()) {
+ case JsonTokenId.ID_NUMBER_FLOAT: {
+ BigDecimal value = parser.getDecimalValue();
+ long seconds = value.longValue();
+ int nanoseconds = DecimalUtils.extractNanosecondDecimal(value, seconds);
+ return fromNanoseconds.apply(new FromDecimalArguments(
+ seconds, nanoseconds, getZone(context)));
+ }
+
+ case JsonTokenId.ID_NUMBER_INT: {
+ long timestamp = parser.getLongValue();
+ if (context.isEnabled(DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS)) {
+ return this.fromNanoseconds.apply(new FromDecimalArguments(
+ timestamp, 0, this.getZone(context)
+ ));
+ }
+ return this.fromMilliseconds.apply(new FromIntegerArguments(
+ timestamp, this.getZone(context)
+ ));
+ }
+
+ case JsonTokenId.ID_STRING: {
+ String string = parser.getText().trim();
+ if (string.length() == 0) {
+ return null;
+ }
+ if (string.endsWith("+0000")) {
+ string = string.substring(0, string.length() - 5) + "Z";
+ }
+ T value;
+ try {
+ TemporalAccessor acc = _formatter.parse(string);
+ value = parsedToValue.apply(acc);
+ if (context.isEnabled(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)) {
+ return adjust.apply(value, this.getZone(context));
+ }
+ } catch (DateTimeException e) {
+ throw _peelDTE(e);
+ }
+ return value;
+ }
+ }
+ throw context.mappingException("Expected type float, integer, or string.");
+ }
+
+ private ZoneId getZone(DeserializationContext context) {
+ // Instants are always in UTC, so don't waste compute cycles
+ return (_valueClass == Instant.class) ? null : DateTimeUtils.timeZoneToZoneId(context.getTimeZone());
+ }
+
+ private static class FromIntegerArguments {
+ public final long value;
+ public final ZoneId zoneId;
+
+ private FromIntegerArguments(long value, ZoneId zoneId) {
+ this.value = value;
+ this.zoneId = zoneId;
+ }
+ }
+
+ private static class FromDecimalArguments {
+ public final long integer;
+ public final int fraction;
+ public final ZoneId zoneId;
+
+ private FromDecimalArguments(long integer, int fraction, ZoneId zoneId) {
+ this.integer = integer;
+ this.fraction = fraction;
+ this.zoneId = zoneId;
+ }
+ }
+}
diff --git a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/JSON.java b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/JSON.java
index 131b1b34d02..433f1a313e1 100644
--- a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/JSON.java
+++ b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/JSON.java
@@ -1,8 +1,9 @@
package io.swagger.client;
+import org.threeten.bp.*;
import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.databind.*;
-import com.fasterxml.jackson.datatype.joda.*;
+import com.fasterxml.jackson.datatype.threetenbp.ThreeTenModule;
import java.text.DateFormat;
@@ -21,7 +22,11 @@ public class JSON implements ContextResolver {
mapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
mapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING);
mapper.setDateFormat(new RFC3339DateFormat());
- mapper.registerModule(new JodaModule());
+ ThreeTenModule module = new ThreeTenModule();
+ module.addDeserializer(Instant.class, CustomInstantDeserializer.INSTANT);
+ module.addDeserializer(OffsetDateTime.class, CustomInstantDeserializer.OFFSET_DATE_TIME);
+ module.addDeserializer(ZonedDateTime.class, CustomInstantDeserializer.ZONED_DATE_TIME);
+ mapper.registerModule(module);
}
/**
diff --git a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/api/FakeApi.java
index 8aa23a3d18f..f810edcd3d1 100644
--- a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/api/FakeApi.java
@@ -9,8 +9,8 @@ import javax.ws.rs.core.GenericType;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.util.ArrayList;
@@ -242,7 +242,7 @@ public class FakeApi {
* @param paramCallback None (optional)
* @throws ApiException if fails to make API call
*/
- public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback) throws ApiException {
+ public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback) throws ApiException {
Object localVarPostBody = null;
// verify the required parameter 'number' is set
diff --git a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/FormatTest.java
index c2aa5f35fed..3897095d840 100644
--- a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/FormatTest.java
@@ -21,8 +21,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -60,7 +60,7 @@ public class FormatTest {
private LocalDate date = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("uuid")
private UUID uuid = null;
@@ -258,7 +258,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -268,11 +268,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 9cd0ca678b8..229669da93c 100644
--- a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -35,7 +35,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("map")
private Map map = null;
@@ -58,7 +58,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -68,11 +68,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/Order.java
index d08d27721af..2edfd83b31c 100644
--- a/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/jersey2/src/main/java/io/swagger/client/model/Order.java
@@ -19,7 +19,7 @@ import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -36,7 +36,7 @@ public class Order {
private Integer quantity = null;
@JsonProperty("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -135,7 +135,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -145,11 +145,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/.swagger-codegen/VERSION b/samples/client/petstore/java/okhttp-gson-parcelableModel/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/build.gradle b/samples/client/petstore/java/okhttp-gson-parcelableModel/build.gradle
index 1d7eb55f31d..534d4777929 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/build.gradle
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/build.gradle
@@ -98,6 +98,6 @@ dependencies {
compile 'com.squareup.okhttp:okhttp:2.7.5'
compile 'com.squareup.okhttp:logging-interceptor:2.7.5'
compile 'com.google.code.gson:gson:2.8.1'
- compile 'joda-time:joda-time:2.9.9'
+ compile 'org.threeten:threetenbp:1.3.5'
testCompile 'junit:junit:4.12'
}
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/build.sbt b/samples/client/petstore/java/okhttp-gson-parcelableModel/build.sbt
index 0cb2e949949..03c3ac9e231 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/build.sbt
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/build.sbt
@@ -13,7 +13,7 @@ lazy val root = (project in file(".")).
"com.squareup.okhttp" % "okhttp" % "2.7.5",
"com.squareup.okhttp" % "logging-interceptor" % "2.7.5",
"com.google.code.gson" % "gson" % "2.8.1",
- "joda-time" % "joda-time" % "2.9.9" % "compile",
+ "org.threeten" % "threetenbp" % "1.3.5" % "compile",
"junit" % "junit" % "4.12" % "test",
"com.novocode" % "junit-interface" % "0.10" % "test"
)
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FakeApi.md b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FakeApi.md
index 5a061d3e6b5..0418b476a66 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FakeApi.md
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -301,7 +301,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FormatTest.md b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FormatTest.md
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/Order.md b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/Order.md
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/pom.xml b/samples/client/petstore/java/okhttp-gson-parcelableModel/pom.xml
index 50033a27242..2872b10b6ef 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/pom.xml
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/pom.xml
@@ -190,9 +190,9 @@
${gson-version}
- joda-time
- joda-time
- ${jodatime-version}
+ org.threeten
+ threetenbp
+ ${threetenbp-version}
@@ -216,7 +216,7 @@
1.5.15
2.7.5
2.8.1
- 2.9.9
+ 1.3.5
1.0.0
4.12
UTF-8
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/ApiClient.java
index 2fb48fb0520..0a2fa401474 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/ApiClient.java
@@ -19,9 +19,9 @@ import com.squareup.okhttp.logging.HttpLoggingInterceptor;
import com.squareup.okhttp.logging.HttpLoggingInterceptor.Level;
import okio.BufferedSink;
import okio.Okio;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
-import org.joda.time.format.DateTimeFormatter;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
import javax.net.ssl.*;
import java.io.File;
@@ -232,8 +232,8 @@ public class ApiClient {
return this;
}
- public ApiClient setDateTimeFormat(DateTimeFormatter dateFormat) {
- this.json.setDateTimeFormat(dateFormat);
+ public ApiClient setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ this.json.setOffsetDateTimeFormat(dateFormat);
return this;
}
@@ -447,7 +447,7 @@ public class ApiClient {
public String parameterToString(Object param) {
if (param == null) {
return "";
- } else if (param instanceof Date || param instanceof DateTime || param instanceof LocalDate) {
+ } else if (param instanceof Date || param instanceof OffsetDateTime || param instanceof LocalDate) {
//Serialize to json string and remove the " enclosing characters
String jsonStr = json.serialize(param);
return jsonStr.substring(1, jsonStr.length() - 1);
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/JSON.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/JSON.java
index 8e60a605aa7..992df6a3226 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/JSON.java
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/JSON.java
@@ -20,10 +20,9 @@ import com.google.gson.TypeAdapter;
import com.google.gson.internal.bind.util.ISO8601Utils;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
-import org.joda.time.format.DateTimeFormatter;
-import org.joda.time.format.ISODateTimeFormat;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
import java.io.IOException;
import java.io.StringReader;
@@ -38,14 +37,14 @@ public class JSON {
private boolean isLenientOnJson = false;
private DateTypeAdapter dateTypeAdapter = new DateTypeAdapter();
private SqlDateTypeAdapter sqlDateTypeAdapter = new SqlDateTypeAdapter();
- private DateTimeTypeAdapter dateTimeTypeAdapter = new DateTimeTypeAdapter();
+ private OffsetDateTimeTypeAdapter offsetDateTimeTypeAdapter = new OffsetDateTimeTypeAdapter();
private LocalDateTypeAdapter localDateTypeAdapter = new LocalDateTypeAdapter();
public JSON() {
gson = new GsonBuilder()
.registerTypeAdapter(Date.class, dateTypeAdapter)
.registerTypeAdapter(java.sql.Date.class, sqlDateTypeAdapter)
- .registerTypeAdapter(DateTime.class, dateTimeTypeAdapter)
+ .registerTypeAdapter(OffsetDateTime.class, offsetDateTimeTypeAdapter)
.registerTypeAdapter(LocalDate.class, localDateTypeAdapter)
.create();
}
@@ -114,18 +113,17 @@ public class JSON {
}
/**
- * Gson TypeAdapter for Joda DateTime type
+ * Gson TypeAdapter for JSR310 OffsetDateTime type
*/
- public static class DateTimeTypeAdapter extends TypeAdapter {
+ public static class OffsetDateTimeTypeAdapter extends TypeAdapter {
- private final DateTimeFormatter parseFormatter = ISODateTimeFormat.dateOptionalTimeParser();
- private final DateTimeFormatter printFormatter = ISODateTimeFormat.dateTime();
+ private DateTimeFormatter formatter;
- public DateTimeTypeAdapter() {
- this(ISODateTimeFormat.dateTime().withOffsetParsed());
+ public OffsetDateTimeTypeAdapter() {
+ this(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
}
- public DateTimeTypeAdapter(DateTimeFormatter formatter) {
+ public OffsetDateTimeTypeAdapter(DateTimeFormatter formatter) {
this.formatter = formatter;
}
@@ -134,36 +132,39 @@ public class JSON {
}
@Override
- public void write(JsonWriter out, DateTime date) throws IOException {
+ public void write(JsonWriter out, OffsetDateTime date) throws IOException {
if (date == null) {
out.nullValue();
} else {
- out.value(printFormatter.print(date));
+ out.value(formatter.format(date));
}
}
@Override
- public DateTime read(JsonReader in) throws IOException {
+ public OffsetDateTime read(JsonReader in) throws IOException {
switch (in.peek()) {
case NULL:
in.nextNull();
return null;
default:
String date = in.nextString();
- return parseFormatter.parseDateTime(date);
+ if (date.endsWith("+0000")) {
+ date = date.substring(0, date.length()-5) + "Z";
+ }
+ return OffsetDateTime.parse(date, formatter);
}
}
}
/**
- * Gson TypeAdapter for Joda LocalDate type
+ * Gson TypeAdapter for JSR310 LocalDate type
*/
public class LocalDateTypeAdapter extends TypeAdapter {
private DateTimeFormatter formatter;
public LocalDateTypeAdapter() {
- this(ISODateTimeFormat.date());
+ this(DateTimeFormatter.ISO_LOCAL_DATE);
}
public LocalDateTypeAdapter(DateTimeFormatter formatter) {
@@ -179,7 +180,7 @@ public class JSON {
if (date == null) {
out.nullValue();
} else {
- out.value(formatter.print(date));
+ out.value(formatter.format(date));
}
}
@@ -191,13 +192,13 @@ public class JSON {
return null;
default:
String date = in.nextString();
- return formatter.parseLocalDate(date);
+ return LocalDate.parse(date, formatter);
}
}
}
- public JSON setDateTimeFormat(DateTimeFormatter dateFormat) {
- dateTimeTypeAdapter.setFormat(dateFormat);
+ public JSON setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ offsetDateTimeTypeAdapter.setFormat(dateFormat);
return this;
}
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/api/FakeApi.java
index 221a4e10fbb..6cf5cae059e 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/api/FakeApi.java
@@ -29,8 +29,8 @@ import java.io.IOException;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.lang.reflect.Type;
@@ -689,7 +689,7 @@ public class FakeApi {
* @return Call to execute
* @throws ApiException If fail to serialize the request body object
*/
- public com.squareup.okhttp.Call testEndpointParametersCall(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback, final ProgressResponseBody.ProgressListener progressListener, final ProgressRequestBody.ProgressRequestListener progressRequestListener) throws ApiException {
+ public com.squareup.okhttp.Call testEndpointParametersCall(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback, final ProgressResponseBody.ProgressListener progressListener, final ProgressRequestBody.ProgressRequestListener progressRequestListener) throws ApiException {
Object localVarPostBody = null;
// create path and map variables
@@ -759,7 +759,7 @@ public class FakeApi {
}
@SuppressWarnings("rawtypes")
- private com.squareup.okhttp.Call testEndpointParametersValidateBeforeCall(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback, final ProgressResponseBody.ProgressListener progressListener, final ProgressRequestBody.ProgressRequestListener progressRequestListener) throws ApiException {
+ private com.squareup.okhttp.Call testEndpointParametersValidateBeforeCall(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback, final ProgressResponseBody.ProgressListener progressListener, final ProgressRequestBody.ProgressRequestListener progressRequestListener) throws ApiException {
// verify the required parameter 'number' is set
if (number == null) {
@@ -810,7 +810,7 @@ public class FakeApi {
* @param paramCallback None (optional)
* @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
*/
- public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback) throws ApiException {
+ public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback) throws ApiException {
testEndpointParametersWithHttpInfo(number, _double, patternWithoutDelimiter, _byte, integer, int32, int64, _float, string, binary, date, dateTime, password, paramCallback);
}
@@ -834,7 +834,7 @@ public class FakeApi {
* @return ApiResponse<Void>
* @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
*/
- public ApiResponse testEndpointParametersWithHttpInfo(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback) throws ApiException {
+ public ApiResponse testEndpointParametersWithHttpInfo(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback) throws ApiException {
com.squareup.okhttp.Call call = testEndpointParametersValidateBeforeCall(number, _double, patternWithoutDelimiter, _byte, integer, int32, int64, _float, string, binary, date, dateTime, password, paramCallback, null, null);
return apiClient.execute(call);
}
@@ -860,7 +860,7 @@ public class FakeApi {
* @return The request call
* @throws ApiException If fail to process the API call, e.g. serializing the request body object
*/
- public com.squareup.okhttp.Call testEndpointParametersAsync(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback, final ApiCallback callback) throws ApiException {
+ public com.squareup.okhttp.Call testEndpointParametersAsync(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback, final ApiCallback callback) throws ApiException {
ProgressResponseBody.ProgressListener progressListener = null;
ProgressRequestBody.ProgressRequestListener progressRequestListener = null;
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/FormatTest.java
index 59b8e20979b..2c7916197a0 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/FormatTest.java
@@ -24,8 +24,8 @@ import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import android.os.Parcelable;
import android.os.Parcel;
@@ -65,7 +65,7 @@ public class FormatTest implements Parcelable {
private LocalDate date = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("uuid")
private UUID uuid = null;
@@ -263,7 +263,7 @@ public class FormatTest implements Parcelable {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -273,11 +273,11 @@ public class FormatTest implements Parcelable {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
@@ -426,7 +426,7 @@ public class FormatTest implements Parcelable {
_byte = (byte[])in.readValue(null);
binary = (byte[])in.readValue(null);
date = (LocalDate)in.readValue(LocalDate.class.getClassLoader());
- dateTime = (DateTime)in.readValue(DateTime.class.getClassLoader());
+ dateTime = (OffsetDateTime)in.readValue(OffsetDateTime.class.getClassLoader());
uuid = (UUID)in.readValue(UUID.class.getClassLoader());
password = (String)in.readValue(null);
}
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index a24a92f3ea0..5fb3022b012 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -27,7 +27,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
import android.os.Parcelable;
import android.os.Parcel;
@@ -40,7 +40,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass implements Parcelable {
private UUID uuid = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("map")
private Map map = null;
@@ -63,7 +63,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass implements Parcelable {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -73,11 +73,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass implements Parcelable {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
@@ -167,7 +167,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass implements Parcelable {
MixedPropertiesAndAdditionalPropertiesClass(Parcel in) {
uuid = (UUID)in.readValue(UUID.class.getClassLoader());
- dateTime = (DateTime)in.readValue(DateTime.class.getClassLoader());
+ dateTime = (OffsetDateTime)in.readValue(OffsetDateTime.class.getClassLoader());
map = (Map)in.readValue(Animal.class.getClassLoader());
}
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/Order.java
index 35860186d10..b53b9e204aa 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/io/swagger/client/model/Order.java
@@ -22,7 +22,7 @@ import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
import android.os.Parcelable;
import android.os.Parcel;
@@ -41,7 +41,7 @@ public class Order implements Parcelable {
private Integer quantity = null;
@SerializedName("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -152,7 +152,7 @@ public class Order implements Parcelable {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -162,11 +162,11 @@ public class Order implements Parcelable {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
@@ -280,7 +280,7 @@ public class Order implements Parcelable {
id = (Long)in.readValue(null);
petId = (Long)in.readValue(null);
quantity = (Integer)in.readValue(null);
- shipDate = (DateTime)in.readValue(DateTime.class.getClassLoader());
+ shipDate = (OffsetDateTime)in.readValue(OffsetDateTime.class.getClassLoader());
status = (StatusEnum)in.readValue(null);
complete = (Boolean)in.readValue(null);
}
diff --git a/samples/client/petstore/java/okhttp-gson/.swagger-codegen/VERSION b/samples/client/petstore/java/okhttp-gson/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/okhttp-gson/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/okhttp-gson/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/okhttp-gson/build.gradle b/samples/client/petstore/java/okhttp-gson/build.gradle
index 1d7eb55f31d..534d4777929 100644
--- a/samples/client/petstore/java/okhttp-gson/build.gradle
+++ b/samples/client/petstore/java/okhttp-gson/build.gradle
@@ -98,6 +98,6 @@ dependencies {
compile 'com.squareup.okhttp:okhttp:2.7.5'
compile 'com.squareup.okhttp:logging-interceptor:2.7.5'
compile 'com.google.code.gson:gson:2.8.1'
- compile 'joda-time:joda-time:2.9.9'
+ compile 'org.threeten:threetenbp:1.3.5'
testCompile 'junit:junit:4.12'
}
diff --git a/samples/client/petstore/java/okhttp-gson/build.sbt b/samples/client/petstore/java/okhttp-gson/build.sbt
index 0cb2e949949..03c3ac9e231 100644
--- a/samples/client/petstore/java/okhttp-gson/build.sbt
+++ b/samples/client/petstore/java/okhttp-gson/build.sbt
@@ -13,7 +13,7 @@ lazy val root = (project in file(".")).
"com.squareup.okhttp" % "okhttp" % "2.7.5",
"com.squareup.okhttp" % "logging-interceptor" % "2.7.5",
"com.google.code.gson" % "gson" % "2.8.1",
- "joda-time" % "joda-time" % "2.9.9" % "compile",
+ "org.threeten" % "threetenbp" % "1.3.5" % "compile",
"junit" % "junit" % "4.12" % "test",
"com.novocode" % "junit-interface" % "0.10" % "test"
)
diff --git a/samples/client/petstore/java/okhttp-gson/docs/FakeApi.md b/samples/client/petstore/java/okhttp-gson/docs/FakeApi.md
index 5a061d3e6b5..0418b476a66 100644
--- a/samples/client/petstore/java/okhttp-gson/docs/FakeApi.md
+++ b/samples/client/petstore/java/okhttp-gson/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -301,7 +301,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/okhttp-gson/docs/FormatTest.md b/samples/client/petstore/java/okhttp-gson/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/okhttp-gson/docs/FormatTest.md
+++ b/samples/client/petstore/java/okhttp-gson/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/okhttp-gson/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/okhttp-gson/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/okhttp-gson/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/okhttp-gson/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/okhttp-gson/docs/Order.md b/samples/client/petstore/java/okhttp-gson/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/okhttp-gson/docs/Order.md
+++ b/samples/client/petstore/java/okhttp-gson/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/okhttp-gson/pom.xml b/samples/client/petstore/java/okhttp-gson/pom.xml
index d9cf3f47c33..a161bd12058 100644
--- a/samples/client/petstore/java/okhttp-gson/pom.xml
+++ b/samples/client/petstore/java/okhttp-gson/pom.xml
@@ -190,9 +190,9 @@
${gson-version}
- joda-time
- joda-time
- ${jodatime-version}
+ org.threeten
+ threetenbp
+ ${threetenbp-version}
@@ -209,7 +209,7 @@
1.5.15
2.7.5
2.8.1
- 2.9.9
+ 1.3.5
1.0.0
4.12
UTF-8
diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/ApiClient.java
index 2fb48fb0520..0a2fa401474 100644
--- a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/ApiClient.java
@@ -19,9 +19,9 @@ import com.squareup.okhttp.logging.HttpLoggingInterceptor;
import com.squareup.okhttp.logging.HttpLoggingInterceptor.Level;
import okio.BufferedSink;
import okio.Okio;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
-import org.joda.time.format.DateTimeFormatter;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
import javax.net.ssl.*;
import java.io.File;
@@ -232,8 +232,8 @@ public class ApiClient {
return this;
}
- public ApiClient setDateTimeFormat(DateTimeFormatter dateFormat) {
- this.json.setDateTimeFormat(dateFormat);
+ public ApiClient setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ this.json.setOffsetDateTimeFormat(dateFormat);
return this;
}
@@ -447,7 +447,7 @@ public class ApiClient {
public String parameterToString(Object param) {
if (param == null) {
return "";
- } else if (param instanceof Date || param instanceof DateTime || param instanceof LocalDate) {
+ } else if (param instanceof Date || param instanceof OffsetDateTime || param instanceof LocalDate) {
//Serialize to json string and remove the " enclosing characters
String jsonStr = json.serialize(param);
return jsonStr.substring(1, jsonStr.length() - 1);
diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/JSON.java b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/JSON.java
index 8e60a605aa7..992df6a3226 100644
--- a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/JSON.java
+++ b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/JSON.java
@@ -20,10 +20,9 @@ import com.google.gson.TypeAdapter;
import com.google.gson.internal.bind.util.ISO8601Utils;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
-import org.joda.time.format.DateTimeFormatter;
-import org.joda.time.format.ISODateTimeFormat;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
import java.io.IOException;
import java.io.StringReader;
@@ -38,14 +37,14 @@ public class JSON {
private boolean isLenientOnJson = false;
private DateTypeAdapter dateTypeAdapter = new DateTypeAdapter();
private SqlDateTypeAdapter sqlDateTypeAdapter = new SqlDateTypeAdapter();
- private DateTimeTypeAdapter dateTimeTypeAdapter = new DateTimeTypeAdapter();
+ private OffsetDateTimeTypeAdapter offsetDateTimeTypeAdapter = new OffsetDateTimeTypeAdapter();
private LocalDateTypeAdapter localDateTypeAdapter = new LocalDateTypeAdapter();
public JSON() {
gson = new GsonBuilder()
.registerTypeAdapter(Date.class, dateTypeAdapter)
.registerTypeAdapter(java.sql.Date.class, sqlDateTypeAdapter)
- .registerTypeAdapter(DateTime.class, dateTimeTypeAdapter)
+ .registerTypeAdapter(OffsetDateTime.class, offsetDateTimeTypeAdapter)
.registerTypeAdapter(LocalDate.class, localDateTypeAdapter)
.create();
}
@@ -114,18 +113,17 @@ public class JSON {
}
/**
- * Gson TypeAdapter for Joda DateTime type
+ * Gson TypeAdapter for JSR310 OffsetDateTime type
*/
- public static class DateTimeTypeAdapter extends TypeAdapter {
+ public static class OffsetDateTimeTypeAdapter extends TypeAdapter {
- private final DateTimeFormatter parseFormatter = ISODateTimeFormat.dateOptionalTimeParser();
- private final DateTimeFormatter printFormatter = ISODateTimeFormat.dateTime();
+ private DateTimeFormatter formatter;
- public DateTimeTypeAdapter() {
- this(ISODateTimeFormat.dateTime().withOffsetParsed());
+ public OffsetDateTimeTypeAdapter() {
+ this(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
}
- public DateTimeTypeAdapter(DateTimeFormatter formatter) {
+ public OffsetDateTimeTypeAdapter(DateTimeFormatter formatter) {
this.formatter = formatter;
}
@@ -134,36 +132,39 @@ public class JSON {
}
@Override
- public void write(JsonWriter out, DateTime date) throws IOException {
+ public void write(JsonWriter out, OffsetDateTime date) throws IOException {
if (date == null) {
out.nullValue();
} else {
- out.value(printFormatter.print(date));
+ out.value(formatter.format(date));
}
}
@Override
- public DateTime read(JsonReader in) throws IOException {
+ public OffsetDateTime read(JsonReader in) throws IOException {
switch (in.peek()) {
case NULL:
in.nextNull();
return null;
default:
String date = in.nextString();
- return parseFormatter.parseDateTime(date);
+ if (date.endsWith("+0000")) {
+ date = date.substring(0, date.length()-5) + "Z";
+ }
+ return OffsetDateTime.parse(date, formatter);
}
}
}
/**
- * Gson TypeAdapter for Joda LocalDate type
+ * Gson TypeAdapter for JSR310 LocalDate type
*/
public class LocalDateTypeAdapter extends TypeAdapter {
private DateTimeFormatter formatter;
public LocalDateTypeAdapter() {
- this(ISODateTimeFormat.date());
+ this(DateTimeFormatter.ISO_LOCAL_DATE);
}
public LocalDateTypeAdapter(DateTimeFormatter formatter) {
@@ -179,7 +180,7 @@ public class JSON {
if (date == null) {
out.nullValue();
} else {
- out.value(formatter.print(date));
+ out.value(formatter.format(date));
}
}
@@ -191,13 +192,13 @@ public class JSON {
return null;
default:
String date = in.nextString();
- return formatter.parseLocalDate(date);
+ return LocalDate.parse(date, formatter);
}
}
}
- public JSON setDateTimeFormat(DateTimeFormatter dateFormat) {
- dateTimeTypeAdapter.setFormat(dateFormat);
+ public JSON setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ offsetDateTimeTypeAdapter.setFormat(dateFormat);
return this;
}
diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/api/FakeApi.java
index 221a4e10fbb..6cf5cae059e 100644
--- a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/api/FakeApi.java
@@ -29,8 +29,8 @@ import java.io.IOException;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.lang.reflect.Type;
@@ -689,7 +689,7 @@ public class FakeApi {
* @return Call to execute
* @throws ApiException If fail to serialize the request body object
*/
- public com.squareup.okhttp.Call testEndpointParametersCall(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback, final ProgressResponseBody.ProgressListener progressListener, final ProgressRequestBody.ProgressRequestListener progressRequestListener) throws ApiException {
+ public com.squareup.okhttp.Call testEndpointParametersCall(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback, final ProgressResponseBody.ProgressListener progressListener, final ProgressRequestBody.ProgressRequestListener progressRequestListener) throws ApiException {
Object localVarPostBody = null;
// create path and map variables
@@ -759,7 +759,7 @@ public class FakeApi {
}
@SuppressWarnings("rawtypes")
- private com.squareup.okhttp.Call testEndpointParametersValidateBeforeCall(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback, final ProgressResponseBody.ProgressListener progressListener, final ProgressRequestBody.ProgressRequestListener progressRequestListener) throws ApiException {
+ private com.squareup.okhttp.Call testEndpointParametersValidateBeforeCall(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback, final ProgressResponseBody.ProgressListener progressListener, final ProgressRequestBody.ProgressRequestListener progressRequestListener) throws ApiException {
// verify the required parameter 'number' is set
if (number == null) {
@@ -810,7 +810,7 @@ public class FakeApi {
* @param paramCallback None (optional)
* @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
*/
- public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback) throws ApiException {
+ public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback) throws ApiException {
testEndpointParametersWithHttpInfo(number, _double, patternWithoutDelimiter, _byte, integer, int32, int64, _float, string, binary, date, dateTime, password, paramCallback);
}
@@ -834,7 +834,7 @@ public class FakeApi {
* @return ApiResponse<Void>
* @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
*/
- public ApiResponse testEndpointParametersWithHttpInfo(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback) throws ApiException {
+ public ApiResponse testEndpointParametersWithHttpInfo(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback) throws ApiException {
com.squareup.okhttp.Call call = testEndpointParametersValidateBeforeCall(number, _double, patternWithoutDelimiter, _byte, integer, int32, int64, _float, string, binary, date, dateTime, password, paramCallback, null, null);
return apiClient.execute(call);
}
@@ -860,7 +860,7 @@ public class FakeApi {
* @return The request call
* @throws ApiException If fail to process the API call, e.g. serializing the request body object
*/
- public com.squareup.okhttp.Call testEndpointParametersAsync(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback, final ApiCallback callback) throws ApiException {
+ public com.squareup.okhttp.Call testEndpointParametersAsync(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback, final ApiCallback callback) throws ApiException {
ProgressResponseBody.ProgressListener progressListener = null;
ProgressRequestBody.ProgressRequestListener progressRequestListener = null;
diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/FormatTest.java
index 8ec80fccb78..bd87692a36c 100644
--- a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/FormatTest.java
@@ -24,8 +24,8 @@ import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -63,7 +63,7 @@ public class FormatTest {
private LocalDate date = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("uuid")
private UUID uuid = null;
@@ -261,7 +261,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -271,11 +271,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 447501906da..9c92756e166 100644
--- a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -27,7 +27,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -38,7 +38,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("map")
private Map map = null;
@@ -61,7 +61,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -71,11 +71,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/Order.java
index 32496807606..7856f4baf7b 100644
--- a/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/okhttp-gson/src/main/java/io/swagger/client/model/Order.java
@@ -22,7 +22,7 @@ import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -39,7 +39,7 @@ public class Order {
private Integer quantity = null;
@SerializedName("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -150,7 +150,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -160,11 +160,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/resteasy/.swagger-codegen/VERSION b/samples/client/petstore/java/resteasy/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/resteasy/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/resteasy/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/resteasy/docs/FakeApi.md b/samples/client/petstore/java/resteasy/docs/FakeApi.md
index 5a061d3e6b5..0418b476a66 100644
--- a/samples/client/petstore/java/resteasy/docs/FakeApi.md
+++ b/samples/client/petstore/java/resteasy/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -301,7 +301,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/resteasy/docs/FormatTest.md b/samples/client/petstore/java/resteasy/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/resteasy/docs/FormatTest.md
+++ b/samples/client/petstore/java/resteasy/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/resteasy/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/resteasy/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/resteasy/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/resteasy/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/resteasy/docs/Order.md b/samples/client/petstore/java/resteasy/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/resteasy/docs/Order.md
+++ b/samples/client/petstore/java/resteasy/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/resteasy/pom.xml b/samples/client/petstore/java/resteasy/pom.xml
index a08daa851f2..ae330202da6 100644
--- a/samples/client/petstore/java/resteasy/pom.xml
+++ b/samples/client/petstore/java/resteasy/pom.xml
@@ -178,7 +178,7 @@
1.5.15
3.1.3.Final
- 2.7.5
+ 2.8.9
2.9.9
1.0.0
4.12
diff --git a/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/CustomInstantDeserializer.java b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/CustomInstantDeserializer.java
new file mode 100644
index 00000000000..5ed8ba446ec
--- /dev/null
+++ b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/CustomInstantDeserializer.java
@@ -0,0 +1,232 @@
+package io.swagger.client;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonTokenId;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.JsonDeserializer;
+import com.fasterxml.jackson.datatype.threetenbp.DateTimeUtils;
+import com.fasterxml.jackson.datatype.threetenbp.DecimalUtils;
+import com.fasterxml.jackson.datatype.threetenbp.deser.ThreeTenDateTimeDeserializerBase;
+import com.fasterxml.jackson.datatype.threetenbp.function.BiFunction;
+import com.fasterxml.jackson.datatype.threetenbp.function.Function;
+import org.threeten.bp.DateTimeException;
+import org.threeten.bp.Instant;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.ZoneId;
+import org.threeten.bp.ZonedDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+import org.threeten.bp.temporal.Temporal;
+import org.threeten.bp.temporal.TemporalAccessor;
+
+import java.io.IOException;
+import java.math.BigDecimal;
+
+/**
+ * Deserializer for ThreeTen temporal {@link Instant}s, {@link OffsetDateTime}, and {@link ZonedDateTime}s.
+ * Adapted from the jackson threetenbp InstantDeserializer to add support for deserializing rfc822 format.
+ *
+ * @author Nick Williams
+ */
+public class CustomInstantDeserializer
+ extends ThreeTenDateTimeDeserializerBase {
+ private static final long serialVersionUID = 1L;
+
+ public static final CustomInstantDeserializer INSTANT = new CustomInstantDeserializer(
+ Instant.class, DateTimeFormatter.ISO_INSTANT,
+ new Function() {
+ @Override
+ public Instant apply(TemporalAccessor temporalAccessor) {
+ return Instant.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromIntegerArguments a) {
+ return Instant.ofEpochMilli(a.value);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromDecimalArguments a) {
+ return Instant.ofEpochSecond(a.integer, a.fraction);
+ }
+ },
+ null
+ );
+
+ public static final CustomInstantDeserializer OFFSET_DATE_TIME = new CustomInstantDeserializer(
+ OffsetDateTime.class, DateTimeFormatter.ISO_OFFSET_DATE_TIME,
+ new Function() {
+ @Override
+ public OffsetDateTime apply(TemporalAccessor temporalAccessor) {
+ return OffsetDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromIntegerArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromDecimalArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public OffsetDateTime apply(OffsetDateTime d, ZoneId z) {
+ return d.withOffsetSameInstant(z.getRules().getOffset(d.toLocalDateTime()));
+ }
+ }
+ );
+
+ public static final CustomInstantDeserializer ZONED_DATE_TIME = new CustomInstantDeserializer(
+ ZonedDateTime.class, DateTimeFormatter.ISO_ZONED_DATE_TIME,
+ new Function() {
+ @Override
+ public ZonedDateTime apply(TemporalAccessor temporalAccessor) {
+ return ZonedDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromIntegerArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromDecimalArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public ZonedDateTime apply(ZonedDateTime zonedDateTime, ZoneId zoneId) {
+ return zonedDateTime.withZoneSameInstant(zoneId);
+ }
+ }
+ );
+
+ protected final Function fromMilliseconds;
+
+ protected final Function fromNanoseconds;
+
+ protected final Function parsedToValue;
+
+ protected final BiFunction adjust;
+
+ protected CustomInstantDeserializer(Class supportedType,
+ DateTimeFormatter parser,
+ Function parsedToValue,
+ Function fromMilliseconds,
+ Function fromNanoseconds,
+ BiFunction adjust) {
+ super(supportedType, parser);
+ this.parsedToValue = parsedToValue;
+ this.fromMilliseconds = fromMilliseconds;
+ this.fromNanoseconds = fromNanoseconds;
+ this.adjust = adjust == null ? new BiFunction() {
+ @Override
+ public T apply(T t, ZoneId zoneId) {
+ return t;
+ }
+ } : adjust;
+ }
+
+ @SuppressWarnings("unchecked")
+ protected CustomInstantDeserializer(CustomInstantDeserializer base, DateTimeFormatter f) {
+ super((Class) base.handledType(), f);
+ parsedToValue = base.parsedToValue;
+ fromMilliseconds = base.fromMilliseconds;
+ fromNanoseconds = base.fromNanoseconds;
+ adjust = base.adjust;
+ }
+
+ @Override
+ protected JsonDeserializer withDateFormat(DateTimeFormatter dtf) {
+ if (dtf == _formatter) {
+ return this;
+ }
+ return new CustomInstantDeserializer(this, dtf);
+ }
+
+ @Override
+ public T deserialize(JsonParser parser, DeserializationContext context) throws IOException {
+ //NOTE: Timestamps contain no timezone info, and are always in configured TZ. Only
+ //string values have to be adjusted to the configured TZ.
+ switch (parser.getCurrentTokenId()) {
+ case JsonTokenId.ID_NUMBER_FLOAT: {
+ BigDecimal value = parser.getDecimalValue();
+ long seconds = value.longValue();
+ int nanoseconds = DecimalUtils.extractNanosecondDecimal(value, seconds);
+ return fromNanoseconds.apply(new FromDecimalArguments(
+ seconds, nanoseconds, getZone(context)));
+ }
+
+ case JsonTokenId.ID_NUMBER_INT: {
+ long timestamp = parser.getLongValue();
+ if (context.isEnabled(DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS)) {
+ return this.fromNanoseconds.apply(new FromDecimalArguments(
+ timestamp, 0, this.getZone(context)
+ ));
+ }
+ return this.fromMilliseconds.apply(new FromIntegerArguments(
+ timestamp, this.getZone(context)
+ ));
+ }
+
+ case JsonTokenId.ID_STRING: {
+ String string = parser.getText().trim();
+ if (string.length() == 0) {
+ return null;
+ }
+ if (string.endsWith("+0000")) {
+ string = string.substring(0, string.length() - 5) + "Z";
+ }
+ T value;
+ try {
+ TemporalAccessor acc = _formatter.parse(string);
+ value = parsedToValue.apply(acc);
+ if (context.isEnabled(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)) {
+ return adjust.apply(value, this.getZone(context));
+ }
+ } catch (DateTimeException e) {
+ throw _peelDTE(e);
+ }
+ return value;
+ }
+ }
+ throw context.mappingException("Expected type float, integer, or string.");
+ }
+
+ private ZoneId getZone(DeserializationContext context) {
+ // Instants are always in UTC, so don't waste compute cycles
+ return (_valueClass == Instant.class) ? null : DateTimeUtils.timeZoneToZoneId(context.getTimeZone());
+ }
+
+ private static class FromIntegerArguments {
+ public final long value;
+ public final ZoneId zoneId;
+
+ private FromIntegerArguments(long value, ZoneId zoneId) {
+ this.value = value;
+ this.zoneId = zoneId;
+ }
+ }
+
+ private static class FromDecimalArguments {
+ public final long integer;
+ public final int fraction;
+ public final ZoneId zoneId;
+
+ private FromDecimalArguments(long integer, int fraction, ZoneId zoneId) {
+ this.integer = integer;
+ this.fraction = fraction;
+ this.zoneId = zoneId;
+ }
+ }
+}
diff --git a/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/api/FakeApi.java
index 884dd912f67..8110632ad66 100644
--- a/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/api/FakeApi.java
@@ -9,8 +9,8 @@ import javax.ws.rs.core.GenericType;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.util.ArrayList;
@@ -242,7 +242,7 @@ public class FakeApi {
* @param paramCallback None (optional)
* @throws ApiException if fails to make API call
*/
- public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback) throws ApiException {
+ public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback) throws ApiException {
Object localVarPostBody = null;
// verify the required parameter 'number' is set
diff --git a/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/FormatTest.java
index c2aa5f35fed..3897095d840 100644
--- a/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/FormatTest.java
@@ -21,8 +21,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -60,7 +60,7 @@ public class FormatTest {
private LocalDate date = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("uuid")
private UUID uuid = null;
@@ -258,7 +258,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -268,11 +268,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 9cd0ca678b8..229669da93c 100644
--- a/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -35,7 +35,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("map")
private Map map = null;
@@ -58,7 +58,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -68,11 +68,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/Order.java
index d08d27721af..2edfd83b31c 100644
--- a/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/resteasy/src/main/java/io/swagger/client/model/Order.java
@@ -19,7 +19,7 @@ import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -36,7 +36,7 @@ public class Order {
private Integer quantity = null;
@JsonProperty("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -135,7 +135,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -145,11 +145,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/resttemplate/.swagger-codegen/VERSION b/samples/client/petstore/java/resttemplate/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/resttemplate/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/resttemplate/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/resttemplate/build.gradle b/samples/client/petstore/java/resttemplate/build.gradle
index eeb852d3092..4ad1f2e1229 100644
--- a/samples/client/petstore/java/resttemplate/build.gradle
+++ b/samples/client/petstore/java/resttemplate/build.gradle
@@ -99,6 +99,7 @@ ext {
spring_web_version = "4.3.9.RELEASE"
jodatime_version = "2.9.9"
junit_version = "4.12"
+ jackson_threeten_version = "2.6.4"
}
dependencies {
@@ -108,7 +109,6 @@ dependencies {
compile "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
compile "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
compile "com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:$jackson_version"
- compile "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version"
- compile "joda-time:joda-time:$jodatime_version"
+ compile "com.github.joschi.jackson:jackson-datatype-threetenbp:$jackson_threeten_version"
testCompile "junit:junit:$junit_version"
}
diff --git a/samples/client/petstore/java/resttemplate/docs/FakeApi.md b/samples/client/petstore/java/resttemplate/docs/FakeApi.md
index 5a061d3e6b5..0418b476a66 100644
--- a/samples/client/petstore/java/resttemplate/docs/FakeApi.md
+++ b/samples/client/petstore/java/resttemplate/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -301,7 +301,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/resttemplate/docs/FormatTest.md b/samples/client/petstore/java/resttemplate/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/resttemplate/docs/FormatTest.md
+++ b/samples/client/petstore/java/resttemplate/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/resttemplate/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/resttemplate/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/resttemplate/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/resttemplate/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/resttemplate/docs/Order.md b/samples/client/petstore/java/resttemplate/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/resttemplate/docs/Order.md
+++ b/samples/client/petstore/java/resttemplate/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/resttemplate/pom.xml b/samples/client/petstore/java/resttemplate/pom.xml
index 01059b5fcb9..0eb7db54a10 100644
--- a/samples/client/petstore/java/resttemplate/pom.xml
+++ b/samples/client/petstore/java/resttemplate/pom.xml
@@ -213,14 +213,9 @@
${jackson-version}
- com.fasterxml.jackson.datatype
- jackson-datatype-joda
- ${jackson-version}
-
-
- joda-time
- joda-time
- ${jodatime-version}
+ com.github.joschi.jackson
+ jackson-datatype-threetenbp
+ ${jackson-threetenbp-version}
@@ -236,7 +231,7 @@
1.5.15
4.3.9.RELEASE
2.8.9
- 2.9.9
+ 2.6.4
1.0.0
4.12
diff --git a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/ApiClient.java b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/ApiClient.java
index 04565c0efe4..d8d84aedfb5 100644
--- a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/ApiClient.java
+++ b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/ApiClient.java
@@ -24,6 +24,11 @@ import org.springframework.util.StringUtils;
import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;
import org.springframework.web.util.UriComponentsBuilder;
+import org.threeten.bp.*;
+import com.fasterxml.jackson.datatype.threetenbp.ThreeTenModule;
+import org.springframework.http.converter.HttpMessageConverter;
+import org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter;
+import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.BufferedReader;
import java.io.IOException;
@@ -303,6 +308,12 @@ public class ApiClient {
*/
public ApiClient setDateFormat(DateFormat dateFormat) {
this.dateFormat = dateFormat;
+ for(HttpMessageConverter converter:restTemplate.getMessageConverters()){
+ if(converter instanceof AbstractJackson2HttpMessageConverter){
+ ObjectMapper mapper = ((AbstractJackson2HttpMessageConverter)converter).getObjectMapper();
+ mapper.setDateFormat(dateFormat);
+ }
+ }
return this;
}
@@ -551,6 +562,16 @@ public class ApiClient {
*/
protected RestTemplate buildRestTemplate() {
RestTemplate restTemplate = new RestTemplate();
+ for(HttpMessageConverter converter:restTemplate.getMessageConverters()){
+ if(converter instanceof AbstractJackson2HttpMessageConverter){
+ ObjectMapper mapper = ((AbstractJackson2HttpMessageConverter)converter).getObjectMapper();
+ ThreeTenModule module = new ThreeTenModule();
+ module.addDeserializer(Instant.class, CustomInstantDeserializer.INSTANT);
+ module.addDeserializer(OffsetDateTime.class, CustomInstantDeserializer.OFFSET_DATE_TIME);
+ module.addDeserializer(ZonedDateTime.class, CustomInstantDeserializer.ZONED_DATE_TIME);
+ mapper.registerModule(module);
+ }
+ }
// This allows us to read the response more than once - Necessary for debugging.
restTemplate.setRequestFactory(new BufferingClientHttpRequestFactory(restTemplate.getRequestFactory()));
return restTemplate;
diff --git a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/CustomInstantDeserializer.java b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/CustomInstantDeserializer.java
new file mode 100644
index 00000000000..5ed8ba446ec
--- /dev/null
+++ b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/CustomInstantDeserializer.java
@@ -0,0 +1,232 @@
+package io.swagger.client;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonTokenId;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.JsonDeserializer;
+import com.fasterxml.jackson.datatype.threetenbp.DateTimeUtils;
+import com.fasterxml.jackson.datatype.threetenbp.DecimalUtils;
+import com.fasterxml.jackson.datatype.threetenbp.deser.ThreeTenDateTimeDeserializerBase;
+import com.fasterxml.jackson.datatype.threetenbp.function.BiFunction;
+import com.fasterxml.jackson.datatype.threetenbp.function.Function;
+import org.threeten.bp.DateTimeException;
+import org.threeten.bp.Instant;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.ZoneId;
+import org.threeten.bp.ZonedDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+import org.threeten.bp.temporal.Temporal;
+import org.threeten.bp.temporal.TemporalAccessor;
+
+import java.io.IOException;
+import java.math.BigDecimal;
+
+/**
+ * Deserializer for ThreeTen temporal {@link Instant}s, {@link OffsetDateTime}, and {@link ZonedDateTime}s.
+ * Adapted from the jackson threetenbp InstantDeserializer to add support for deserializing rfc822 format.
+ *
+ * @author Nick Williams
+ */
+public class CustomInstantDeserializer
+ extends ThreeTenDateTimeDeserializerBase {
+ private static final long serialVersionUID = 1L;
+
+ public static final CustomInstantDeserializer INSTANT = new CustomInstantDeserializer(
+ Instant.class, DateTimeFormatter.ISO_INSTANT,
+ new Function() {
+ @Override
+ public Instant apply(TemporalAccessor temporalAccessor) {
+ return Instant.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromIntegerArguments a) {
+ return Instant.ofEpochMilli(a.value);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromDecimalArguments a) {
+ return Instant.ofEpochSecond(a.integer, a.fraction);
+ }
+ },
+ null
+ );
+
+ public static final CustomInstantDeserializer OFFSET_DATE_TIME = new CustomInstantDeserializer(
+ OffsetDateTime.class, DateTimeFormatter.ISO_OFFSET_DATE_TIME,
+ new Function() {
+ @Override
+ public OffsetDateTime apply(TemporalAccessor temporalAccessor) {
+ return OffsetDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromIntegerArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromDecimalArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public OffsetDateTime apply(OffsetDateTime d, ZoneId z) {
+ return d.withOffsetSameInstant(z.getRules().getOffset(d.toLocalDateTime()));
+ }
+ }
+ );
+
+ public static final CustomInstantDeserializer ZONED_DATE_TIME = new CustomInstantDeserializer(
+ ZonedDateTime.class, DateTimeFormatter.ISO_ZONED_DATE_TIME,
+ new Function() {
+ @Override
+ public ZonedDateTime apply(TemporalAccessor temporalAccessor) {
+ return ZonedDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromIntegerArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromDecimalArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public ZonedDateTime apply(ZonedDateTime zonedDateTime, ZoneId zoneId) {
+ return zonedDateTime.withZoneSameInstant(zoneId);
+ }
+ }
+ );
+
+ protected final Function fromMilliseconds;
+
+ protected final Function fromNanoseconds;
+
+ protected final Function parsedToValue;
+
+ protected final BiFunction adjust;
+
+ protected CustomInstantDeserializer(Class supportedType,
+ DateTimeFormatter parser,
+ Function parsedToValue,
+ Function fromMilliseconds,
+ Function fromNanoseconds,
+ BiFunction adjust) {
+ super(supportedType, parser);
+ this.parsedToValue = parsedToValue;
+ this.fromMilliseconds = fromMilliseconds;
+ this.fromNanoseconds = fromNanoseconds;
+ this.adjust = adjust == null ? new BiFunction() {
+ @Override
+ public T apply(T t, ZoneId zoneId) {
+ return t;
+ }
+ } : adjust;
+ }
+
+ @SuppressWarnings("unchecked")
+ protected CustomInstantDeserializer(CustomInstantDeserializer base, DateTimeFormatter f) {
+ super((Class) base.handledType(), f);
+ parsedToValue = base.parsedToValue;
+ fromMilliseconds = base.fromMilliseconds;
+ fromNanoseconds = base.fromNanoseconds;
+ adjust = base.adjust;
+ }
+
+ @Override
+ protected JsonDeserializer withDateFormat(DateTimeFormatter dtf) {
+ if (dtf == _formatter) {
+ return this;
+ }
+ return new CustomInstantDeserializer(this, dtf);
+ }
+
+ @Override
+ public T deserialize(JsonParser parser, DeserializationContext context) throws IOException {
+ //NOTE: Timestamps contain no timezone info, and are always in configured TZ. Only
+ //string values have to be adjusted to the configured TZ.
+ switch (parser.getCurrentTokenId()) {
+ case JsonTokenId.ID_NUMBER_FLOAT: {
+ BigDecimal value = parser.getDecimalValue();
+ long seconds = value.longValue();
+ int nanoseconds = DecimalUtils.extractNanosecondDecimal(value, seconds);
+ return fromNanoseconds.apply(new FromDecimalArguments(
+ seconds, nanoseconds, getZone(context)));
+ }
+
+ case JsonTokenId.ID_NUMBER_INT: {
+ long timestamp = parser.getLongValue();
+ if (context.isEnabled(DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS)) {
+ return this.fromNanoseconds.apply(new FromDecimalArguments(
+ timestamp, 0, this.getZone(context)
+ ));
+ }
+ return this.fromMilliseconds.apply(new FromIntegerArguments(
+ timestamp, this.getZone(context)
+ ));
+ }
+
+ case JsonTokenId.ID_STRING: {
+ String string = parser.getText().trim();
+ if (string.length() == 0) {
+ return null;
+ }
+ if (string.endsWith("+0000")) {
+ string = string.substring(0, string.length() - 5) + "Z";
+ }
+ T value;
+ try {
+ TemporalAccessor acc = _formatter.parse(string);
+ value = parsedToValue.apply(acc);
+ if (context.isEnabled(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)) {
+ return adjust.apply(value, this.getZone(context));
+ }
+ } catch (DateTimeException e) {
+ throw _peelDTE(e);
+ }
+ return value;
+ }
+ }
+ throw context.mappingException("Expected type float, integer, or string.");
+ }
+
+ private ZoneId getZone(DeserializationContext context) {
+ // Instants are always in UTC, so don't waste compute cycles
+ return (_valueClass == Instant.class) ? null : DateTimeUtils.timeZoneToZoneId(context.getTimeZone());
+ }
+
+ private static class FromIntegerArguments {
+ public final long value;
+ public final ZoneId zoneId;
+
+ private FromIntegerArguments(long value, ZoneId zoneId) {
+ this.value = value;
+ this.zoneId = zoneId;
+ }
+ }
+
+ private static class FromDecimalArguments {
+ public final long integer;
+ public final int fraction;
+ public final ZoneId zoneId;
+
+ private FromDecimalArguments(long integer, int fraction, ZoneId zoneId) {
+ this.integer = integer;
+ this.fraction = fraction;
+ this.zoneId = zoneId;
+ }
+ }
+}
diff --git a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/api/FakeApi.java
index 22320fa7f96..8393e7097f1 100644
--- a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/api/FakeApi.java
@@ -4,8 +4,8 @@ import io.swagger.client.ApiClient;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.util.ArrayList;
@@ -214,7 +214,7 @@ public class FakeApi {
* @param paramCallback None
* @throws RestClientException if an error occurs while attempting to invoke the API
*/
- public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, DateTime dateTime, String password, String paramCallback) throws RestClientException {
+ public void testEndpointParameters(BigDecimal number, Double _double, String patternWithoutDelimiter, byte[] _byte, Integer integer, Integer int32, Long int64, Float _float, String string, byte[] binary, LocalDate date, OffsetDateTime dateTime, String password, String paramCallback) throws RestClientException {
Object postBody = null;
// verify the required parameter 'number' is set
diff --git a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/FormatTest.java
index c2aa5f35fed..3897095d840 100644
--- a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/FormatTest.java
@@ -21,8 +21,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -60,7 +60,7 @@ public class FormatTest {
private LocalDate date = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("uuid")
private UUID uuid = null;
@@ -258,7 +258,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -268,11 +268,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 9cd0ca678b8..229669da93c 100644
--- a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -35,7 +35,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("map")
private Map map = null;
@@ -58,7 +58,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -68,11 +68,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/Order.java
index d08d27721af..2edfd83b31c 100644
--- a/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/resttemplate/src/main/java/io/swagger/client/model/Order.java
@@ -19,7 +19,7 @@ import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -36,7 +36,7 @@ public class Order {
private Integer quantity = null;
@JsonProperty("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -135,7 +135,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -145,11 +145,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/retrofit/.swagger-codegen/VERSION b/samples/client/petstore/java/retrofit/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/retrofit/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/retrofit/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/retrofit2-play24/.swagger-codegen/VERSION b/samples/client/petstore/java/retrofit2-play24/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/retrofit2-play24/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/retrofit2-play24/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/retrofit2-play24/build.gradle b/samples/client/petstore/java/retrofit2-play24/build.gradle
index 660aa9a74f3..99773a8c88d 100644
--- a/samples/client/petstore/java/retrofit2-play24/build.gradle
+++ b/samples/client/petstore/java/retrofit2-play24/build.gradle
@@ -100,7 +100,7 @@ ext {
play_version = "2.4.11"
swagger_annotations_version = "1.5.15"
junit_version = "4.12"
- jodatime_version = "2.9.9"
+ threetenbp_version = "1.3.5"
}
dependencies {
@@ -109,7 +109,7 @@ dependencies {
compile "com.squareup.retrofit2:converter-gson:$retrofit_version"
compile "io.swagger:swagger-annotations:$swagger_annotations_version"
compile "org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:$oltu_version"
- compile "joda-time:joda-time:$jodatime_version"
+ compile "org.threeten:threetenbp:$threetenbp_version"
compile "com.typesafe.play:play-java-ws_2.11:$play_version"
compile "com.squareup.retrofit2:converter-jackson:$retrofit_version"
compile "com.fasterxml.jackson.core:jackson-core:$jackson_version"
diff --git a/samples/client/petstore/java/retrofit2-play24/build.sbt b/samples/client/petstore/java/retrofit2-play24/build.sbt
index 60a3d4c78ec..555352f5fec 100644
--- a/samples/client/petstore/java/retrofit2-play24/build.sbt
+++ b/samples/client/petstore/java/retrofit2-play24/build.sbt
@@ -19,7 +19,7 @@ lazy val root = (project in file(".")).
"com.fasterxml.jackson.core" % "jackson-databind" % "2.8.9" % "compile",
"io.swagger" % "swagger-annotations" % "1.5.15" % "compile",
"org.apache.oltu.oauth2" % "org.apache.oltu.oauth2.client" % "1.0.1" % "compile",
- "joda-time" % "joda-time" % "2.9.9" % "compile",
+ "org.threeten" % "threetenbp" % "1.3.5" % "compile",
"junit" % "junit" % "4.12" % "test",
"com.novocode" % "junit-interface" % "0.11" % "test"
)
diff --git a/samples/client/petstore/java/retrofit2-play24/docs/FakeApi.md b/samples/client/petstore/java/retrofit2-play24/docs/FakeApi.md
index 1b53ccee145..1467a2943d6 100644
--- a/samples/client/petstore/java/retrofit2-play24/docs/FakeApi.md
+++ b/samples/client/petstore/java/retrofit2-play24/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -302,7 +302,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/retrofit2-play24/docs/FormatTest.md b/samples/client/petstore/java/retrofit2-play24/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/retrofit2-play24/docs/FormatTest.md
+++ b/samples/client/petstore/java/retrofit2-play24/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/retrofit2-play24/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/retrofit2-play24/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/retrofit2-play24/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/retrofit2-play24/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/retrofit2-play24/docs/Order.md b/samples/client/petstore/java/retrofit2-play24/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/retrofit2-play24/docs/Order.md
+++ b/samples/client/petstore/java/retrofit2-play24/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/retrofit2-play24/pom.xml b/samples/client/petstore/java/retrofit2-play24/pom.xml
index f711d861787..b80b50ef5b9 100644
--- a/samples/client/petstore/java/retrofit2-play24/pom.xml
+++ b/samples/client/petstore/java/retrofit2-play24/pom.xml
@@ -195,9 +195,9 @@
${oltu-version}
- joda-time
- joda-time
- ${jodatime-version}
+ org.threeten
+ threetenbp
+ ${threetenbp-version}
@@ -250,7 +250,7 @@
2.8.9
2.4.11
2.3.0
- 2.9.9
+ 1.3.5
1.0.1
4.12
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/CustomInstantDeserializer.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/CustomInstantDeserializer.java
new file mode 100644
index 00000000000..5ed8ba446ec
--- /dev/null
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/CustomInstantDeserializer.java
@@ -0,0 +1,232 @@
+package io.swagger.client;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonTokenId;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.JsonDeserializer;
+import com.fasterxml.jackson.datatype.threetenbp.DateTimeUtils;
+import com.fasterxml.jackson.datatype.threetenbp.DecimalUtils;
+import com.fasterxml.jackson.datatype.threetenbp.deser.ThreeTenDateTimeDeserializerBase;
+import com.fasterxml.jackson.datatype.threetenbp.function.BiFunction;
+import com.fasterxml.jackson.datatype.threetenbp.function.Function;
+import org.threeten.bp.DateTimeException;
+import org.threeten.bp.Instant;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.ZoneId;
+import org.threeten.bp.ZonedDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+import org.threeten.bp.temporal.Temporal;
+import org.threeten.bp.temporal.TemporalAccessor;
+
+import java.io.IOException;
+import java.math.BigDecimal;
+
+/**
+ * Deserializer for ThreeTen temporal {@link Instant}s, {@link OffsetDateTime}, and {@link ZonedDateTime}s.
+ * Adapted from the jackson threetenbp InstantDeserializer to add support for deserializing rfc822 format.
+ *
+ * @author Nick Williams
+ */
+public class CustomInstantDeserializer
+ extends ThreeTenDateTimeDeserializerBase {
+ private static final long serialVersionUID = 1L;
+
+ public static final CustomInstantDeserializer INSTANT = new CustomInstantDeserializer(
+ Instant.class, DateTimeFormatter.ISO_INSTANT,
+ new Function() {
+ @Override
+ public Instant apply(TemporalAccessor temporalAccessor) {
+ return Instant.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromIntegerArguments a) {
+ return Instant.ofEpochMilli(a.value);
+ }
+ },
+ new Function() {
+ @Override
+ public Instant apply(FromDecimalArguments a) {
+ return Instant.ofEpochSecond(a.integer, a.fraction);
+ }
+ },
+ null
+ );
+
+ public static final CustomInstantDeserializer OFFSET_DATE_TIME = new CustomInstantDeserializer(
+ OffsetDateTime.class, DateTimeFormatter.ISO_OFFSET_DATE_TIME,
+ new Function() {
+ @Override
+ public OffsetDateTime apply(TemporalAccessor temporalAccessor) {
+ return OffsetDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromIntegerArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public OffsetDateTime apply(FromDecimalArguments a) {
+ return OffsetDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public OffsetDateTime apply(OffsetDateTime d, ZoneId z) {
+ return d.withOffsetSameInstant(z.getRules().getOffset(d.toLocalDateTime()));
+ }
+ }
+ );
+
+ public static final CustomInstantDeserializer ZONED_DATE_TIME = new CustomInstantDeserializer(
+ ZonedDateTime.class, DateTimeFormatter.ISO_ZONED_DATE_TIME,
+ new Function() {
+ @Override
+ public ZonedDateTime apply(TemporalAccessor temporalAccessor) {
+ return ZonedDateTime.from(temporalAccessor);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromIntegerArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochMilli(a.value), a.zoneId);
+ }
+ },
+ new Function() {
+ @Override
+ public ZonedDateTime apply(FromDecimalArguments a) {
+ return ZonedDateTime.ofInstant(Instant.ofEpochSecond(a.integer, a.fraction), a.zoneId);
+ }
+ },
+ new BiFunction() {
+ @Override
+ public ZonedDateTime apply(ZonedDateTime zonedDateTime, ZoneId zoneId) {
+ return zonedDateTime.withZoneSameInstant(zoneId);
+ }
+ }
+ );
+
+ protected final Function fromMilliseconds;
+
+ protected final Function fromNanoseconds;
+
+ protected final Function parsedToValue;
+
+ protected final BiFunction adjust;
+
+ protected CustomInstantDeserializer(Class supportedType,
+ DateTimeFormatter parser,
+ Function parsedToValue,
+ Function fromMilliseconds,
+ Function fromNanoseconds,
+ BiFunction adjust) {
+ super(supportedType, parser);
+ this.parsedToValue = parsedToValue;
+ this.fromMilliseconds = fromMilliseconds;
+ this.fromNanoseconds = fromNanoseconds;
+ this.adjust = adjust == null ? new BiFunction() {
+ @Override
+ public T apply(T t, ZoneId zoneId) {
+ return t;
+ }
+ } : adjust;
+ }
+
+ @SuppressWarnings("unchecked")
+ protected CustomInstantDeserializer(CustomInstantDeserializer base, DateTimeFormatter f) {
+ super((Class) base.handledType(), f);
+ parsedToValue = base.parsedToValue;
+ fromMilliseconds = base.fromMilliseconds;
+ fromNanoseconds = base.fromNanoseconds;
+ adjust = base.adjust;
+ }
+
+ @Override
+ protected JsonDeserializer withDateFormat(DateTimeFormatter dtf) {
+ if (dtf == _formatter) {
+ return this;
+ }
+ return new CustomInstantDeserializer(this, dtf);
+ }
+
+ @Override
+ public T deserialize(JsonParser parser, DeserializationContext context) throws IOException {
+ //NOTE: Timestamps contain no timezone info, and are always in configured TZ. Only
+ //string values have to be adjusted to the configured TZ.
+ switch (parser.getCurrentTokenId()) {
+ case JsonTokenId.ID_NUMBER_FLOAT: {
+ BigDecimal value = parser.getDecimalValue();
+ long seconds = value.longValue();
+ int nanoseconds = DecimalUtils.extractNanosecondDecimal(value, seconds);
+ return fromNanoseconds.apply(new FromDecimalArguments(
+ seconds, nanoseconds, getZone(context)));
+ }
+
+ case JsonTokenId.ID_NUMBER_INT: {
+ long timestamp = parser.getLongValue();
+ if (context.isEnabled(DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS)) {
+ return this.fromNanoseconds.apply(new FromDecimalArguments(
+ timestamp, 0, this.getZone(context)
+ ));
+ }
+ return this.fromMilliseconds.apply(new FromIntegerArguments(
+ timestamp, this.getZone(context)
+ ));
+ }
+
+ case JsonTokenId.ID_STRING: {
+ String string = parser.getText().trim();
+ if (string.length() == 0) {
+ return null;
+ }
+ if (string.endsWith("+0000")) {
+ string = string.substring(0, string.length() - 5) + "Z";
+ }
+ T value;
+ try {
+ TemporalAccessor acc = _formatter.parse(string);
+ value = parsedToValue.apply(acc);
+ if (context.isEnabled(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)) {
+ return adjust.apply(value, this.getZone(context));
+ }
+ } catch (DateTimeException e) {
+ throw _peelDTE(e);
+ }
+ return value;
+ }
+ }
+ throw context.mappingException("Expected type float, integer, or string.");
+ }
+
+ private ZoneId getZone(DeserializationContext context) {
+ // Instants are always in UTC, so don't waste compute cycles
+ return (_valueClass == Instant.class) ? null : DateTimeUtils.timeZoneToZoneId(context.getTimeZone());
+ }
+
+ private static class FromIntegerArguments {
+ public final long value;
+ public final ZoneId zoneId;
+
+ private FromIntegerArguments(long value, ZoneId zoneId) {
+ this.value = value;
+ this.zoneId = zoneId;
+ }
+ }
+
+ private static class FromDecimalArguments {
+ public final long integer;
+ public final int fraction;
+ public final ZoneId zoneId;
+
+ private FromDecimalArguments(long integer, int fraction, ZoneId zoneId) {
+ this.integer = integer;
+ this.fraction = fraction;
+ this.zoneId = zoneId;
+ }
+ }
+}
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/JSON.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/JSON.java
new file mode 100644
index 00000000000..590495331b6
--- /dev/null
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/JSON.java
@@ -0,0 +1,289 @@
+/*
+ * Swagger Petstore
+ * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+ *
+ * OpenAPI spec version: 1.0.0
+ * Contact: apiteam@swagger.io
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+
+package io.swagger.client;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapter;
+import com.google.gson.internal.bind.util.ISO8601Utils;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+
+import java.io.IOException;
+import java.io.StringReader;
+import java.lang.reflect.Type;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.ParsePosition;
+import java.util.Date;
+
+public class JSON {
+ private Gson gson;
+ private DateTypeAdapter dateTypeAdapter = new DateTypeAdapter();
+ private SqlDateTypeAdapter sqlDateTypeAdapter = new SqlDateTypeAdapter();
+ private OffsetDateTimeTypeAdapter offsetDateTimeTypeAdapter = new OffsetDateTimeTypeAdapter();
+ private LocalDateTypeAdapter localDateTypeAdapter = new LocalDateTypeAdapter();
+
+ public JSON() {
+ gson = new GsonBuilder()
+ .registerTypeAdapter(Date.class, dateTypeAdapter)
+ .registerTypeAdapter(java.sql.Date.class, sqlDateTypeAdapter)
+ .registerTypeAdapter(OffsetDateTime.class, offsetDateTimeTypeAdapter)
+ .registerTypeAdapter(LocalDate.class, localDateTypeAdapter)
+ .create();
+ }
+
+ /**
+ * Get Gson.
+ *
+ * @return Gson
+ */
+ public Gson getGson() {
+ return gson;
+ }
+
+ /**
+ * Set Gson.
+ *
+ * @param gson Gson
+ * @return JSON
+ */
+ public JSON setGson(Gson gson) {
+ this.gson = gson;
+ return this;
+ }
+
+ /**
+ * Gson TypeAdapter for JSR310 OffsetDateTime type
+ */
+ public static class OffsetDateTimeTypeAdapter extends TypeAdapter {
+
+ private DateTimeFormatter formatter;
+
+ public OffsetDateTimeTypeAdapter() {
+ this(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
+ }
+
+ public OffsetDateTimeTypeAdapter(DateTimeFormatter formatter) {
+ this.formatter = formatter;
+ }
+
+ public void setFormat(DateTimeFormatter dateFormat) {
+ this.formatter = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, OffsetDateTime date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ out.value(formatter.format(date));
+ }
+ }
+
+ @Override
+ public OffsetDateTime read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ if (date.endsWith("+0000")) {
+ date = date.substring(0, date.length()-5) + "Z";
+ }
+ return OffsetDateTime.parse(date, formatter);
+ }
+ }
+ }
+
+ /**
+ * Gson TypeAdapter for JSR310 LocalDate type
+ */
+ public class LocalDateTypeAdapter extends TypeAdapter {
+
+ private DateTimeFormatter formatter;
+
+ public LocalDateTypeAdapter() {
+ this(DateTimeFormatter.ISO_LOCAL_DATE);
+ }
+
+ public LocalDateTypeAdapter(DateTimeFormatter formatter) {
+ this.formatter = formatter;
+ }
+
+ public void setFormat(DateTimeFormatter dateFormat) {
+ this.formatter = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, LocalDate date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ out.value(formatter.format(date));
+ }
+ }
+
+ @Override
+ public LocalDate read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ return LocalDate.parse(date, formatter);
+ }
+ }
+ }
+
+ public JSON setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ offsetDateTimeTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ public JSON setLocalDateFormat(DateTimeFormatter dateFormat) {
+ localDateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ /**
+ * Gson TypeAdapter for java.sql.Date type
+ * If the dateFormat is null, a simple "yyyy-MM-dd" format will be used
+ * (more efficient than SimpleDateFormat).
+ */
+ public static class SqlDateTypeAdapter extends TypeAdapter {
+
+ private DateFormat dateFormat;
+
+ public SqlDateTypeAdapter() {
+ }
+
+ public SqlDateTypeAdapter(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ public void setFormat(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, java.sql.Date date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ String value;
+ if (dateFormat != null) {
+ value = dateFormat.format(date);
+ } else {
+ value = date.toString();
+ }
+ out.value(value);
+ }
+ }
+
+ @Override
+ public java.sql.Date read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ try {
+ if (dateFormat != null) {
+ return new java.sql.Date(dateFormat.parse(date).getTime());
+ }
+ return new java.sql.Date(ISO8601Utils.parse(date, new ParsePosition(0)).getTime());
+ } catch (ParseException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ }
+ }
+
+ /**
+ * Gson TypeAdapter for java.util.Date type
+ * If the dateFormat is null, ISO8601Utils will be used.
+ */
+ public static class DateTypeAdapter extends TypeAdapter {
+
+ private DateFormat dateFormat;
+
+ public DateTypeAdapter() {
+ }
+
+ public DateTypeAdapter(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ public void setFormat(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, Date date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ String value;
+ if (dateFormat != null) {
+ value = dateFormat.format(date);
+ } else {
+ value = ISO8601Utils.format(date, true);
+ }
+ out.value(value);
+ }
+ }
+
+ @Override
+ public Date read(JsonReader in) throws IOException {
+ try {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ try {
+ if (dateFormat != null) {
+ return dateFormat.parse(date);
+ }
+ return ISO8601Utils.parse(date, new ParsePosition(0));
+ } catch (ParseException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ } catch (IllegalArgumentException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ }
+
+ public JSON setDateFormat(DateFormat dateFormat) {
+ dateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ public JSON setSqlDateFormat(DateFormat dateFormat) {
+ sqlDateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+}
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/FakeApi.java
index ddfd251eb19..f264d32ba9b 100644
--- a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/FakeApi.java
@@ -2,8 +2,6 @@ package io.swagger.client.api;
import io.swagger.client.CollectionFormats.*;
-
-
import retrofit2.Call;
import retrofit2.http.*;
@@ -11,8 +9,8 @@ import okhttp3.RequestBody;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.util.ArrayList;
@@ -104,7 +102,7 @@ public interface FakeApi {
@retrofit2.http.FormUrlEncoded
@POST("fake")
F.Promise> testEndpointParameters(
- @retrofit2.http.Field("number") BigDecimal number, @retrofit2.http.Field("double") Double _double, @retrofit2.http.Field("pattern_without_delimiter") String patternWithoutDelimiter, @retrofit2.http.Field("byte") byte[] _byte, @retrofit2.http.Field("integer") Integer integer, @retrofit2.http.Field("int32") Integer int32, @retrofit2.http.Field("int64") Long int64, @retrofit2.http.Field("float") Float _float, @retrofit2.http.Field("string") String string, @retrofit2.http.Field("binary") byte[] binary, @retrofit2.http.Field("date") LocalDate date, @retrofit2.http.Field("dateTime") DateTime dateTime, @retrofit2.http.Field("password") String password, @retrofit2.http.Field("callback") String paramCallback
+ @retrofit2.http.Field("number") BigDecimal number, @retrofit2.http.Field("double") Double _double, @retrofit2.http.Field("pattern_without_delimiter") String patternWithoutDelimiter, @retrofit2.http.Field("byte") byte[] _byte, @retrofit2.http.Field("integer") Integer integer, @retrofit2.http.Field("int32") Integer int32, @retrofit2.http.Field("int64") Long int64, @retrofit2.http.Field("float") Float _float, @retrofit2.http.Field("string") String string, @retrofit2.http.Field("binary") byte[] binary, @retrofit2.http.Field("date") LocalDate date, @retrofit2.http.Field("dateTime") OffsetDateTime dateTime, @retrofit2.http.Field("password") String password, @retrofit2.http.Field("callback") String paramCallback
);
/**
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/FakeClassnameTags123Api.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/FakeClassnameTags123Api.java
index 1aef86538fe..feb5c347ef6 100644
--- a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/FakeClassnameTags123Api.java
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/FakeClassnameTags123Api.java
@@ -2,8 +2,6 @@ package io.swagger.client.api;
import io.swagger.client.CollectionFormats.*;
-
-
import retrofit2.Call;
import retrofit2.http.*;
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/PetApi.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/PetApi.java
index 8f841a8f1e2..343eeb1e780 100644
--- a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/PetApi.java
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/PetApi.java
@@ -2,8 +2,6 @@ package io.swagger.client.api;
import io.swagger.client.CollectionFormats.*;
-
-
import retrofit2.Call;
import retrofit2.http.*;
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/StoreApi.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/StoreApi.java
index 3cfefc29b9d..a32bbbb9e82 100644
--- a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/StoreApi.java
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/StoreApi.java
@@ -2,8 +2,6 @@ package io.swagger.client.api;
import io.swagger.client.CollectionFormats.*;
-
-
import retrofit2.Call;
import retrofit2.http.*;
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/UserApi.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/UserApi.java
index 9b553463002..cea84a9ab79 100644
--- a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/UserApi.java
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/api/UserApi.java
@@ -2,8 +2,6 @@ package io.swagger.client.api;
import io.swagger.client.CollectionFormats.*;
-
-
import retrofit2.Call;
import retrofit2.http.*;
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/FormatTest.java
index feab1d429d1..7794ee05657 100644
--- a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/FormatTest.java
@@ -21,8 +21,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import javax.validation.constraints.*;
import javax.validation.Valid;
@@ -62,7 +62,7 @@ public class FormatTest {
private LocalDate date = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("uuid")
private UUID uuid = null;
@@ -218,7 +218,7 @@ public class FormatTest {
* @return _byte
**/
@NotNull
- @ApiModelProperty(required = true, value = "")
+ @Pattern(regexp="^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$") @ApiModelProperty(required = true, value = "")
public byte[] getByte() {
return _byte;
}
@@ -265,7 +265,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -276,11 +276,11 @@ public class FormatTest {
**/
@Valid
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 584389c6974..d4d344023cb 100644
--- a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
import javax.validation.constraints.*;
import javax.validation.Valid;
@@ -37,7 +37,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@JsonProperty("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@JsonProperty("map")
private Map map = null;
@@ -61,7 +61,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -72,11 +72,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
**/
@Valid
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/Order.java
index fef07f4b9e2..275172b86f7 100644
--- a/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/io/swagger/client/model/Order.java
@@ -19,7 +19,7 @@ import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
import javax.validation.constraints.*;
import javax.validation.Valid;
@@ -38,7 +38,7 @@ public class Order {
private Integer quantity = null;
@JsonProperty("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -137,7 +137,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -148,11 +148,11 @@ public class Order {
**/
@Valid
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/retrofit2/.swagger-codegen/VERSION b/samples/client/petstore/java/retrofit2/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/retrofit2/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/retrofit2/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/retrofit2/build.gradle b/samples/client/petstore/java/retrofit2/build.gradle
index 32fa566abd0..9c7f627e48c 100644
--- a/samples/client/petstore/java/retrofit2/build.gradle
+++ b/samples/client/petstore/java/retrofit2/build.gradle
@@ -98,7 +98,7 @@ ext {
retrofit_version = "2.3.0"
swagger_annotations_version = "1.5.15"
junit_version = "4.12"
- jodatime_version = "2.9.9"
+ threetenbp_version = "1.3.5"
}
dependencies {
@@ -107,7 +107,7 @@ dependencies {
compile "com.squareup.retrofit2:converter-gson:$retrofit_version"
compile "io.swagger:swagger-annotations:$swagger_annotations_version"
compile "org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:$oltu_version"
- compile "joda-time:joda-time:$jodatime_version"
+ compile "org.threeten:threetenbp:$threetenbp_version"
testCompile "junit:junit:$junit_version"
}
diff --git a/samples/client/petstore/java/retrofit2/build.sbt b/samples/client/petstore/java/retrofit2/build.sbt
index 84cf4872581..de55c31451b 100644
--- a/samples/client/petstore/java/retrofit2/build.sbt
+++ b/samples/client/petstore/java/retrofit2/build.sbt
@@ -14,7 +14,7 @@ lazy val root = (project in file(".")).
"com.squareup.retrofit2" % "converter-gson" % "2.3.0" % "compile",
"io.swagger" % "swagger-annotations" % "1.5.15" % "compile",
"org.apache.oltu.oauth2" % "org.apache.oltu.oauth2.client" % "1.0.1" % "compile",
- "joda-time" % "joda-time" % "2.9.9" % "compile",
+ "org.threeten" % "threetenbp" % "1.3.5" % "compile",
"junit" % "junit" % "4.12" % "test",
"com.novocode" % "junit-interface" % "0.11" % "test"
)
diff --git a/samples/client/petstore/java/retrofit2/docs/FakeApi.md b/samples/client/petstore/java/retrofit2/docs/FakeApi.md
index 1b53ccee145..1467a2943d6 100644
--- a/samples/client/petstore/java/retrofit2/docs/FakeApi.md
+++ b/samples/client/petstore/java/retrofit2/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -302,7 +302,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/retrofit2/docs/FormatTest.md b/samples/client/petstore/java/retrofit2/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/retrofit2/docs/FormatTest.md
+++ b/samples/client/petstore/java/retrofit2/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/retrofit2/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/retrofit2/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/retrofit2/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/retrofit2/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/retrofit2/docs/Order.md b/samples/client/petstore/java/retrofit2/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/retrofit2/docs/Order.md
+++ b/samples/client/petstore/java/retrofit2/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/retrofit2/pom.xml b/samples/client/petstore/java/retrofit2/pom.xml
index c9a8b343c8d..c6a92971afd 100644
--- a/samples/client/petstore/java/retrofit2/pom.xml
+++ b/samples/client/petstore/java/retrofit2/pom.xml
@@ -195,9 +195,9 @@
${oltu-version}
- joda-time
- joda-time
- ${jodatime-version}
+ org.threeten
+ threetenbp
+ ${threetenbp-version}
@@ -217,7 +217,7 @@
${java.version}
1.5.15
2.3.0
- 2.9.9
+ 1.3.5
1.0.1
4.12
diff --git a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/ApiClient.java b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/ApiClient.java
index 8c9a5ed61e3..ccd98428077 100644
--- a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/ApiClient.java
+++ b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/ApiClient.java
@@ -8,7 +8,7 @@ import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder;
import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder;
-import org.joda.time.format.DateTimeFormatter;
+import org.threeten.bp.format.DateTimeFormatter;
import retrofit2.Converter;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
@@ -134,8 +134,8 @@ public class ApiClient {
return this;
}
- public ApiClient setDateTimeFormat(DateTimeFormatter dateFormat) {
- this.json.setDateTimeFormat(dateFormat);
+ public ApiClient setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ this.json.setOffsetDateTimeFormat(dateFormat);
return this;
}
diff --git a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/JSON.java b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/JSON.java
new file mode 100644
index 00000000000..590495331b6
--- /dev/null
+++ b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/JSON.java
@@ -0,0 +1,289 @@
+/*
+ * Swagger Petstore
+ * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+ *
+ * OpenAPI spec version: 1.0.0
+ * Contact: apiteam@swagger.io
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+
+package io.swagger.client;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapter;
+import com.google.gson.internal.bind.util.ISO8601Utils;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+
+import java.io.IOException;
+import java.io.StringReader;
+import java.lang.reflect.Type;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.ParsePosition;
+import java.util.Date;
+
+public class JSON {
+ private Gson gson;
+ private DateTypeAdapter dateTypeAdapter = new DateTypeAdapter();
+ private SqlDateTypeAdapter sqlDateTypeAdapter = new SqlDateTypeAdapter();
+ private OffsetDateTimeTypeAdapter offsetDateTimeTypeAdapter = new OffsetDateTimeTypeAdapter();
+ private LocalDateTypeAdapter localDateTypeAdapter = new LocalDateTypeAdapter();
+
+ public JSON() {
+ gson = new GsonBuilder()
+ .registerTypeAdapter(Date.class, dateTypeAdapter)
+ .registerTypeAdapter(java.sql.Date.class, sqlDateTypeAdapter)
+ .registerTypeAdapter(OffsetDateTime.class, offsetDateTimeTypeAdapter)
+ .registerTypeAdapter(LocalDate.class, localDateTypeAdapter)
+ .create();
+ }
+
+ /**
+ * Get Gson.
+ *
+ * @return Gson
+ */
+ public Gson getGson() {
+ return gson;
+ }
+
+ /**
+ * Set Gson.
+ *
+ * @param gson Gson
+ * @return JSON
+ */
+ public JSON setGson(Gson gson) {
+ this.gson = gson;
+ return this;
+ }
+
+ /**
+ * Gson TypeAdapter for JSR310 OffsetDateTime type
+ */
+ public static class OffsetDateTimeTypeAdapter extends TypeAdapter {
+
+ private DateTimeFormatter formatter;
+
+ public OffsetDateTimeTypeAdapter() {
+ this(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
+ }
+
+ public OffsetDateTimeTypeAdapter(DateTimeFormatter formatter) {
+ this.formatter = formatter;
+ }
+
+ public void setFormat(DateTimeFormatter dateFormat) {
+ this.formatter = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, OffsetDateTime date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ out.value(formatter.format(date));
+ }
+ }
+
+ @Override
+ public OffsetDateTime read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ if (date.endsWith("+0000")) {
+ date = date.substring(0, date.length()-5) + "Z";
+ }
+ return OffsetDateTime.parse(date, formatter);
+ }
+ }
+ }
+
+ /**
+ * Gson TypeAdapter for JSR310 LocalDate type
+ */
+ public class LocalDateTypeAdapter extends TypeAdapter {
+
+ private DateTimeFormatter formatter;
+
+ public LocalDateTypeAdapter() {
+ this(DateTimeFormatter.ISO_LOCAL_DATE);
+ }
+
+ public LocalDateTypeAdapter(DateTimeFormatter formatter) {
+ this.formatter = formatter;
+ }
+
+ public void setFormat(DateTimeFormatter dateFormat) {
+ this.formatter = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, LocalDate date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ out.value(formatter.format(date));
+ }
+ }
+
+ @Override
+ public LocalDate read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ return LocalDate.parse(date, formatter);
+ }
+ }
+ }
+
+ public JSON setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ offsetDateTimeTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ public JSON setLocalDateFormat(DateTimeFormatter dateFormat) {
+ localDateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ /**
+ * Gson TypeAdapter for java.sql.Date type
+ * If the dateFormat is null, a simple "yyyy-MM-dd" format will be used
+ * (more efficient than SimpleDateFormat).
+ */
+ public static class SqlDateTypeAdapter extends TypeAdapter {
+
+ private DateFormat dateFormat;
+
+ public SqlDateTypeAdapter() {
+ }
+
+ public SqlDateTypeAdapter(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ public void setFormat(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, java.sql.Date date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ String value;
+ if (dateFormat != null) {
+ value = dateFormat.format(date);
+ } else {
+ value = date.toString();
+ }
+ out.value(value);
+ }
+ }
+
+ @Override
+ public java.sql.Date read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ try {
+ if (dateFormat != null) {
+ return new java.sql.Date(dateFormat.parse(date).getTime());
+ }
+ return new java.sql.Date(ISO8601Utils.parse(date, new ParsePosition(0)).getTime());
+ } catch (ParseException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ }
+ }
+
+ /**
+ * Gson TypeAdapter for java.util.Date type
+ * If the dateFormat is null, ISO8601Utils will be used.
+ */
+ public static class DateTypeAdapter extends TypeAdapter {
+
+ private DateFormat dateFormat;
+
+ public DateTypeAdapter() {
+ }
+
+ public DateTypeAdapter(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ public void setFormat(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, Date date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ String value;
+ if (dateFormat != null) {
+ value = dateFormat.format(date);
+ } else {
+ value = ISO8601Utils.format(date, true);
+ }
+ out.value(value);
+ }
+ }
+
+ @Override
+ public Date read(JsonReader in) throws IOException {
+ try {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ try {
+ if (dateFormat != null) {
+ return dateFormat.parse(date);
+ }
+ return ISO8601Utils.parse(date, new ParsePosition(0));
+ } catch (ParseException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ } catch (IllegalArgumentException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ }
+
+ public JSON setDateFormat(DateFormat dateFormat) {
+ dateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ public JSON setSqlDateFormat(DateFormat dateFormat) {
+ sqlDateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+}
diff --git a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/api/FakeApi.java
index 9a870811561..5eb2fb0d8bf 100644
--- a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/api/FakeApi.java
@@ -9,8 +9,8 @@ import okhttp3.RequestBody;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.util.ArrayList;
@@ -100,7 +100,7 @@ public interface FakeApi {
@retrofit2.http.FormUrlEncoded
@POST("fake")
Call testEndpointParameters(
- @retrofit2.http.Field("number") BigDecimal number, @retrofit2.http.Field("double") Double _double, @retrofit2.http.Field("pattern_without_delimiter") String patternWithoutDelimiter, @retrofit2.http.Field("byte") byte[] _byte, @retrofit2.http.Field("integer") Integer integer, @retrofit2.http.Field("int32") Integer int32, @retrofit2.http.Field("int64") Long int64, @retrofit2.http.Field("float") Float _float, @retrofit2.http.Field("string") String string, @retrofit2.http.Field("binary") byte[] binary, @retrofit2.http.Field("date") LocalDate date, @retrofit2.http.Field("dateTime") DateTime dateTime, @retrofit2.http.Field("password") String password, @retrofit2.http.Field("callback") String paramCallback
+ @retrofit2.http.Field("number") BigDecimal number, @retrofit2.http.Field("double") Double _double, @retrofit2.http.Field("pattern_without_delimiter") String patternWithoutDelimiter, @retrofit2.http.Field("byte") byte[] _byte, @retrofit2.http.Field("integer") Integer integer, @retrofit2.http.Field("int32") Integer int32, @retrofit2.http.Field("int64") Long int64, @retrofit2.http.Field("float") Float _float, @retrofit2.http.Field("string") String string, @retrofit2.http.Field("binary") byte[] binary, @retrofit2.http.Field("date") LocalDate date, @retrofit2.http.Field("dateTime") OffsetDateTime dateTime, @retrofit2.http.Field("password") String password, @retrofit2.http.Field("callback") String paramCallback
);
/**
diff --git a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/FormatTest.java
index 8ec80fccb78..bd87692a36c 100644
--- a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/FormatTest.java
@@ -24,8 +24,8 @@ import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -63,7 +63,7 @@ public class FormatTest {
private LocalDate date = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("uuid")
private UUID uuid = null;
@@ -261,7 +261,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -271,11 +271,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 447501906da..9c92756e166 100644
--- a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -27,7 +27,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -38,7 +38,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("map")
private Map map = null;
@@ -61,7 +61,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -71,11 +71,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/Order.java
index 32496807606..7856f4baf7b 100644
--- a/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/retrofit2/src/main/java/io/swagger/client/model/Order.java
@@ -22,7 +22,7 @@ import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -39,7 +39,7 @@ public class Order {
private Integer quantity = null;
@SerializedName("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -150,7 +150,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -160,11 +160,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/retrofit2rx/.swagger-codegen/VERSION b/samples/client/petstore/java/retrofit2rx/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/retrofit2rx/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/retrofit2rx/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/retrofit2rx/build.gradle b/samples/client/petstore/java/retrofit2rx/build.gradle
index 42f189e96f5..fe0538acddc 100644
--- a/samples/client/petstore/java/retrofit2rx/build.gradle
+++ b/samples/client/petstore/java/retrofit2rx/build.gradle
@@ -99,7 +99,7 @@ ext {
swagger_annotations_version = "1.5.15"
junit_version = "4.12"
rx_java_version = "1.3.0"
- jodatime_version = "2.9.9"
+ threetenbp_version = "1.3.5"
}
dependencies {
@@ -110,7 +110,7 @@ dependencies {
compile "io.reactivex:rxjava:$rx_java_version"
compile "io.swagger:swagger-annotations:$swagger_annotations_version"
compile "org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:$oltu_version"
- compile "joda-time:joda-time:$jodatime_version"
+ compile "org.threeten:threetenbp:$threetenbp_version"
testCompile "junit:junit:$junit_version"
}
diff --git a/samples/client/petstore/java/retrofit2rx/build.sbt b/samples/client/petstore/java/retrofit2rx/build.sbt
index 6c15e1b6659..992dd1963dc 100644
--- a/samples/client/petstore/java/retrofit2rx/build.sbt
+++ b/samples/client/petstore/java/retrofit2rx/build.sbt
@@ -16,7 +16,7 @@ lazy val root = (project in file(".")).
"io.reactivex" % "rxjava" % "1.3.0" % "compile",
"io.swagger" % "swagger-annotations" % "1.5.15" % "compile",
"org.apache.oltu.oauth2" % "org.apache.oltu.oauth2.client" % "1.0.1" % "compile",
- "joda-time" % "joda-time" % "2.9.9" % "compile",
+ "org.threeten" % "threetenbp" % "1.3.5" % "compile",
"junit" % "junit" % "4.12" % "test",
"com.novocode" % "junit-interface" % "0.11" % "test"
)
diff --git a/samples/client/petstore/java/retrofit2rx/docs/FakeApi.md b/samples/client/petstore/java/retrofit2rx/docs/FakeApi.md
index 1b53ccee145..1467a2943d6 100644
--- a/samples/client/petstore/java/retrofit2rx/docs/FakeApi.md
+++ b/samples/client/petstore/java/retrofit2rx/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -302,7 +302,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/retrofit2rx/docs/FormatTest.md b/samples/client/petstore/java/retrofit2rx/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/retrofit2rx/docs/FormatTest.md
+++ b/samples/client/petstore/java/retrofit2rx/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/retrofit2rx/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/retrofit2rx/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/retrofit2rx/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/retrofit2rx/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/retrofit2rx/docs/Order.md b/samples/client/petstore/java/retrofit2rx/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/retrofit2rx/docs/Order.md
+++ b/samples/client/petstore/java/retrofit2rx/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/retrofit2rx/pom.xml b/samples/client/petstore/java/retrofit2rx/pom.xml
index e7275be1be3..ce519bcf66a 100644
--- a/samples/client/petstore/java/retrofit2rx/pom.xml
+++ b/samples/client/petstore/java/retrofit2rx/pom.xml
@@ -195,9 +195,9 @@
${oltu-version}
- joda-time
- joda-time
- ${jodatime-version}
+ org.threeten
+ threetenbp
+ ${threetenbp-version}
io.reactivex
@@ -228,7 +228,7 @@
1.5.15
2.3.0
1.3.0
- 2.9.9
+ 1.3.5
1.0.1
4.12
diff --git a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/ApiClient.java b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/ApiClient.java
index 428c7808e44..c5fc0a0872b 100644
--- a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/ApiClient.java
+++ b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/ApiClient.java
@@ -8,7 +8,7 @@ import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder;
import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder;
-import org.joda.time.format.DateTimeFormatter;
+import org.threeten.bp.format.DateTimeFormatter;
import retrofit2.Converter;
import retrofit2.Retrofit;
import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory;
@@ -136,8 +136,8 @@ public class ApiClient {
return this;
}
- public ApiClient setDateTimeFormat(DateTimeFormatter dateFormat) {
- this.json.setDateTimeFormat(dateFormat);
+ public ApiClient setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ this.json.setOffsetDateTimeFormat(dateFormat);
return this;
}
diff --git a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/JSON.java b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/JSON.java
new file mode 100644
index 00000000000..590495331b6
--- /dev/null
+++ b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/JSON.java
@@ -0,0 +1,289 @@
+/*
+ * Swagger Petstore
+ * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+ *
+ * OpenAPI spec version: 1.0.0
+ * Contact: apiteam@swagger.io
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+
+package io.swagger.client;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapter;
+import com.google.gson.internal.bind.util.ISO8601Utils;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+
+import java.io.IOException;
+import java.io.StringReader;
+import java.lang.reflect.Type;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.ParsePosition;
+import java.util.Date;
+
+public class JSON {
+ private Gson gson;
+ private DateTypeAdapter dateTypeAdapter = new DateTypeAdapter();
+ private SqlDateTypeAdapter sqlDateTypeAdapter = new SqlDateTypeAdapter();
+ private OffsetDateTimeTypeAdapter offsetDateTimeTypeAdapter = new OffsetDateTimeTypeAdapter();
+ private LocalDateTypeAdapter localDateTypeAdapter = new LocalDateTypeAdapter();
+
+ public JSON() {
+ gson = new GsonBuilder()
+ .registerTypeAdapter(Date.class, dateTypeAdapter)
+ .registerTypeAdapter(java.sql.Date.class, sqlDateTypeAdapter)
+ .registerTypeAdapter(OffsetDateTime.class, offsetDateTimeTypeAdapter)
+ .registerTypeAdapter(LocalDate.class, localDateTypeAdapter)
+ .create();
+ }
+
+ /**
+ * Get Gson.
+ *
+ * @return Gson
+ */
+ public Gson getGson() {
+ return gson;
+ }
+
+ /**
+ * Set Gson.
+ *
+ * @param gson Gson
+ * @return JSON
+ */
+ public JSON setGson(Gson gson) {
+ this.gson = gson;
+ return this;
+ }
+
+ /**
+ * Gson TypeAdapter for JSR310 OffsetDateTime type
+ */
+ public static class OffsetDateTimeTypeAdapter extends TypeAdapter {
+
+ private DateTimeFormatter formatter;
+
+ public OffsetDateTimeTypeAdapter() {
+ this(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
+ }
+
+ public OffsetDateTimeTypeAdapter(DateTimeFormatter formatter) {
+ this.formatter = formatter;
+ }
+
+ public void setFormat(DateTimeFormatter dateFormat) {
+ this.formatter = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, OffsetDateTime date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ out.value(formatter.format(date));
+ }
+ }
+
+ @Override
+ public OffsetDateTime read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ if (date.endsWith("+0000")) {
+ date = date.substring(0, date.length()-5) + "Z";
+ }
+ return OffsetDateTime.parse(date, formatter);
+ }
+ }
+ }
+
+ /**
+ * Gson TypeAdapter for JSR310 LocalDate type
+ */
+ public class LocalDateTypeAdapter extends TypeAdapter {
+
+ private DateTimeFormatter formatter;
+
+ public LocalDateTypeAdapter() {
+ this(DateTimeFormatter.ISO_LOCAL_DATE);
+ }
+
+ public LocalDateTypeAdapter(DateTimeFormatter formatter) {
+ this.formatter = formatter;
+ }
+
+ public void setFormat(DateTimeFormatter dateFormat) {
+ this.formatter = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, LocalDate date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ out.value(formatter.format(date));
+ }
+ }
+
+ @Override
+ public LocalDate read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ return LocalDate.parse(date, formatter);
+ }
+ }
+ }
+
+ public JSON setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ offsetDateTimeTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ public JSON setLocalDateFormat(DateTimeFormatter dateFormat) {
+ localDateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ /**
+ * Gson TypeAdapter for java.sql.Date type
+ * If the dateFormat is null, a simple "yyyy-MM-dd" format will be used
+ * (more efficient than SimpleDateFormat).
+ */
+ public static class SqlDateTypeAdapter extends TypeAdapter {
+
+ private DateFormat dateFormat;
+
+ public SqlDateTypeAdapter() {
+ }
+
+ public SqlDateTypeAdapter(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ public void setFormat(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, java.sql.Date date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ String value;
+ if (dateFormat != null) {
+ value = dateFormat.format(date);
+ } else {
+ value = date.toString();
+ }
+ out.value(value);
+ }
+ }
+
+ @Override
+ public java.sql.Date read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ try {
+ if (dateFormat != null) {
+ return new java.sql.Date(dateFormat.parse(date).getTime());
+ }
+ return new java.sql.Date(ISO8601Utils.parse(date, new ParsePosition(0)).getTime());
+ } catch (ParseException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ }
+ }
+
+ /**
+ * Gson TypeAdapter for java.util.Date type
+ * If the dateFormat is null, ISO8601Utils will be used.
+ */
+ public static class DateTypeAdapter extends TypeAdapter {
+
+ private DateFormat dateFormat;
+
+ public DateTypeAdapter() {
+ }
+
+ public DateTypeAdapter(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ public void setFormat(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, Date date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ String value;
+ if (dateFormat != null) {
+ value = dateFormat.format(date);
+ } else {
+ value = ISO8601Utils.format(date, true);
+ }
+ out.value(value);
+ }
+ }
+
+ @Override
+ public Date read(JsonReader in) throws IOException {
+ try {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ try {
+ if (dateFormat != null) {
+ return dateFormat.parse(date);
+ }
+ return ISO8601Utils.parse(date, new ParsePosition(0));
+ } catch (ParseException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ } catch (IllegalArgumentException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ }
+
+ public JSON setDateFormat(DateFormat dateFormat) {
+ dateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ public JSON setSqlDateFormat(DateFormat dateFormat) {
+ sqlDateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+}
diff --git a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/api/FakeApi.java
index 3c258bd88a4..673afc53fd7 100644
--- a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/api/FakeApi.java
@@ -9,8 +9,8 @@ import okhttp3.RequestBody;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.util.ArrayList;
@@ -100,7 +100,7 @@ public interface FakeApi {
@retrofit2.http.FormUrlEncoded
@POST("fake")
Observable testEndpointParameters(
- @retrofit2.http.Field("number") BigDecimal number, @retrofit2.http.Field("double") Double _double, @retrofit2.http.Field("pattern_without_delimiter") String patternWithoutDelimiter, @retrofit2.http.Field("byte") byte[] _byte, @retrofit2.http.Field("integer") Integer integer, @retrofit2.http.Field("int32") Integer int32, @retrofit2.http.Field("int64") Long int64, @retrofit2.http.Field("float") Float _float, @retrofit2.http.Field("string") String string, @retrofit2.http.Field("binary") byte[] binary, @retrofit2.http.Field("date") LocalDate date, @retrofit2.http.Field("dateTime") DateTime dateTime, @retrofit2.http.Field("password") String password, @retrofit2.http.Field("callback") String paramCallback
+ @retrofit2.http.Field("number") BigDecimal number, @retrofit2.http.Field("double") Double _double, @retrofit2.http.Field("pattern_without_delimiter") String patternWithoutDelimiter, @retrofit2.http.Field("byte") byte[] _byte, @retrofit2.http.Field("integer") Integer integer, @retrofit2.http.Field("int32") Integer int32, @retrofit2.http.Field("int64") Long int64, @retrofit2.http.Field("float") Float _float, @retrofit2.http.Field("string") String string, @retrofit2.http.Field("binary") byte[] binary, @retrofit2.http.Field("date") LocalDate date, @retrofit2.http.Field("dateTime") OffsetDateTime dateTime, @retrofit2.http.Field("password") String password, @retrofit2.http.Field("callback") String paramCallback
);
/**
diff --git a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/FormatTest.java
index 8ec80fccb78..bd87692a36c 100644
--- a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/FormatTest.java
@@ -24,8 +24,8 @@ import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -63,7 +63,7 @@ public class FormatTest {
private LocalDate date = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("uuid")
private UUID uuid = null;
@@ -261,7 +261,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -271,11 +271,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 447501906da..9c92756e166 100644
--- a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -27,7 +27,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -38,7 +38,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("map")
private Map map = null;
@@ -61,7 +61,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -71,11 +71,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/Order.java
index 32496807606..7856f4baf7b 100644
--- a/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/retrofit2rx/src/main/java/io/swagger/client/model/Order.java
@@ -22,7 +22,7 @@ import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -39,7 +39,7 @@ public class Order {
private Integer quantity = null;
@SerializedName("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -150,7 +150,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -160,11 +160,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/java/retrofit2rx2/.swagger-codegen/VERSION b/samples/client/petstore/java/retrofit2rx2/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/java/retrofit2rx2/.swagger-codegen/VERSION
+++ b/samples/client/petstore/java/retrofit2rx2/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/java/retrofit2rx2/build.gradle b/samples/client/petstore/java/retrofit2rx2/build.gradle
index 7d35c759233..7ec34d974c9 100644
--- a/samples/client/petstore/java/retrofit2rx2/build.gradle
+++ b/samples/client/petstore/java/retrofit2rx2/build.gradle
@@ -99,7 +99,7 @@ ext {
swagger_annotations_version = "1.5.15"
junit_version = "4.12"
rx_java_version = "2.1.1"
- jodatime_version = "2.9.9"
+ threetenbp_version = "1.3.5"
}
dependencies {
@@ -110,7 +110,7 @@ dependencies {
compile "io.reactivex.rxjava2:rxjava:$rx_java_version"
compile "io.swagger:swagger-annotations:$swagger_annotations_version"
compile "org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:$oltu_version"
- compile "joda-time:joda-time:$jodatime_version"
+ compile "org.threeten:threetenbp:$threetenbp_version"
testCompile "junit:junit:$junit_version"
}
diff --git a/samples/client/petstore/java/retrofit2rx2/build.sbt b/samples/client/petstore/java/retrofit2rx2/build.sbt
index 181f8040a71..d99837ab113 100644
--- a/samples/client/petstore/java/retrofit2rx2/build.sbt
+++ b/samples/client/petstore/java/retrofit2rx2/build.sbt
@@ -16,7 +16,7 @@ lazy val root = (project in file(".")).
"io.reactivex.rxjava2" % "rxjava" % "2.1.1" % "compile",
"io.swagger" % "swagger-annotations" % "1.5.15" % "compile",
"org.apache.oltu.oauth2" % "org.apache.oltu.oauth2.client" % "1.0.1" % "compile",
- "joda-time" % "joda-time" % "2.9.9" % "compile",
+ "org.threeten" % "threetenbp" % "1.3.5" % "compile",
"junit" % "junit" % "4.12" % "test",
"com.novocode" % "junit-interface" % "0.11" % "test"
)
diff --git a/samples/client/petstore/java/retrofit2rx2/docs/FakeApi.md b/samples/client/petstore/java/retrofit2rx2/docs/FakeApi.md
index 1b53ccee145..1467a2943d6 100644
--- a/samples/client/petstore/java/retrofit2rx2/docs/FakeApi.md
+++ b/samples/client/petstore/java/retrofit2rx2/docs/FakeApi.md
@@ -267,7 +267,7 @@ FakeApi apiInstance = new FakeApi();
BigDecimal number = new BigDecimal(); // BigDecimal | None
Double _double = 3.4D; // Double | None
String patternWithoutDelimiter = "patternWithoutDelimiter_example"; // String | None
-byte[] _byte = B; // byte[] | None
+byte[] _byte = _byte_example; // byte[] | None
Integer integer = 56; // Integer | None
Integer int32 = 56; // Integer | None
Long int64 = 789L; // Long | None
@@ -275,7 +275,7 @@ Float _float = 3.4F; // Float | None
String string = "string_example"; // String | None
byte[] binary = B; // byte[] | None
LocalDate date = new LocalDate(); // LocalDate | None
-DateTime dateTime = new DateTime(); // DateTime | None
+OffsetDateTime dateTime = new OffsetDateTime(); // OffsetDateTime | None
String password = "password_example"; // String | None
String paramCallback = "paramCallback_example"; // String | None
try {
@@ -302,7 +302,7 @@ Name | Type | Description | Notes
**string** | **String**| None | [optional]
**binary** | **byte[]**| None | [optional]
**date** | **LocalDate**| None | [optional]
- **dateTime** | **DateTime**| None | [optional]
+ **dateTime** | **OffsetDateTime**| None | [optional]
**password** | **String**| None | [optional]
**paramCallback** | **String**| None | [optional]
diff --git a/samples/client/petstore/java/retrofit2rx2/docs/FormatTest.md b/samples/client/petstore/java/retrofit2rx2/docs/FormatTest.md
index 06bed417232..c7a3acb3cb7 100644
--- a/samples/client/petstore/java/retrofit2rx2/docs/FormatTest.md
+++ b/samples/client/petstore/java/retrofit2rx2/docs/FormatTest.md
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
**_byte** | **byte[]** | |
**binary** | **byte[]** | | [optional]
**date** | [**LocalDate**](LocalDate.md) | |
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**uuid** | [**UUID**](UUID.md) | | [optional]
**password** | **String** | |
diff --git a/samples/client/petstore/java/retrofit2rx2/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/java/retrofit2rx2/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index 349afef35a9..b12e2cd70e6 100644
--- a/samples/client/petstore/java/retrofit2rx2/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/java/retrofit2rx2/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | [**UUID**](UUID.md) | | [optional]
-**dateTime** | [**DateTime**](DateTime.md) | | [optional]
+**dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**map** | [**Map<String, Animal>**](Animal.md) | | [optional]
diff --git a/samples/client/petstore/java/retrofit2rx2/docs/Order.md b/samples/client/petstore/java/retrofit2rx2/docs/Order.md
index a1089f5384e..268c617d1ff 100644
--- a/samples/client/petstore/java/retrofit2rx2/docs/Order.md
+++ b/samples/client/petstore/java/retrofit2rx2/docs/Order.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**id** | **Long** | | [optional]
**petId** | **Long** | | [optional]
**quantity** | **Integer** | | [optional]
-**shipDate** | [**DateTime**](DateTime.md) | | [optional]
+**shipDate** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Order Status | [optional]
**complete** | **Boolean** | | [optional]
diff --git a/samples/client/petstore/java/retrofit2rx2/pom.xml b/samples/client/petstore/java/retrofit2rx2/pom.xml
index e30ee231a55..b09b4ecea4e 100644
--- a/samples/client/petstore/java/retrofit2rx2/pom.xml
+++ b/samples/client/petstore/java/retrofit2rx2/pom.xml
@@ -195,9 +195,9 @@
${oltu-version}
- joda-time
- joda-time
- ${jodatime-version}
+ org.threeten
+ threetenbp
+ ${threetenbp-version}
io.reactivex.rxjava2
@@ -228,7 +228,7 @@
1.5.15
2.3.0
2.1.1
- 2.9.9
+ 1.3.5
1.0.1
4.12
diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/ApiClient.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/ApiClient.java
index 08eb0121f06..c348b2a162c 100644
--- a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/ApiClient.java
+++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/ApiClient.java
@@ -8,7 +8,7 @@ import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder;
import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder;
-import org.joda.time.format.DateTimeFormatter;
+import org.threeten.bp.format.DateTimeFormatter;
import retrofit2.Converter;
import retrofit2.Retrofit;
import com.jakewharton.retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory;
@@ -137,8 +137,8 @@ public class ApiClient {
return this;
}
- public ApiClient setDateTimeFormat(DateTimeFormatter dateFormat) {
- this.json.setDateTimeFormat(dateFormat);
+ public ApiClient setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ this.json.setOffsetDateTimeFormat(dateFormat);
return this;
}
diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/JSON.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/JSON.java
new file mode 100644
index 00000000000..590495331b6
--- /dev/null
+++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/JSON.java
@@ -0,0 +1,289 @@
+/*
+ * Swagger Petstore
+ * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+ *
+ * OpenAPI spec version: 1.0.0
+ * Contact: apiteam@swagger.io
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+
+package io.swagger.client;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapter;
+import com.google.gson.internal.bind.util.ISO8601Utils;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.format.DateTimeFormatter;
+
+import java.io.IOException;
+import java.io.StringReader;
+import java.lang.reflect.Type;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.ParsePosition;
+import java.util.Date;
+
+public class JSON {
+ private Gson gson;
+ private DateTypeAdapter dateTypeAdapter = new DateTypeAdapter();
+ private SqlDateTypeAdapter sqlDateTypeAdapter = new SqlDateTypeAdapter();
+ private OffsetDateTimeTypeAdapter offsetDateTimeTypeAdapter = new OffsetDateTimeTypeAdapter();
+ private LocalDateTypeAdapter localDateTypeAdapter = new LocalDateTypeAdapter();
+
+ public JSON() {
+ gson = new GsonBuilder()
+ .registerTypeAdapter(Date.class, dateTypeAdapter)
+ .registerTypeAdapter(java.sql.Date.class, sqlDateTypeAdapter)
+ .registerTypeAdapter(OffsetDateTime.class, offsetDateTimeTypeAdapter)
+ .registerTypeAdapter(LocalDate.class, localDateTypeAdapter)
+ .create();
+ }
+
+ /**
+ * Get Gson.
+ *
+ * @return Gson
+ */
+ public Gson getGson() {
+ return gson;
+ }
+
+ /**
+ * Set Gson.
+ *
+ * @param gson Gson
+ * @return JSON
+ */
+ public JSON setGson(Gson gson) {
+ this.gson = gson;
+ return this;
+ }
+
+ /**
+ * Gson TypeAdapter for JSR310 OffsetDateTime type
+ */
+ public static class OffsetDateTimeTypeAdapter extends TypeAdapter {
+
+ private DateTimeFormatter formatter;
+
+ public OffsetDateTimeTypeAdapter() {
+ this(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
+ }
+
+ public OffsetDateTimeTypeAdapter(DateTimeFormatter formatter) {
+ this.formatter = formatter;
+ }
+
+ public void setFormat(DateTimeFormatter dateFormat) {
+ this.formatter = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, OffsetDateTime date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ out.value(formatter.format(date));
+ }
+ }
+
+ @Override
+ public OffsetDateTime read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ if (date.endsWith("+0000")) {
+ date = date.substring(0, date.length()-5) + "Z";
+ }
+ return OffsetDateTime.parse(date, formatter);
+ }
+ }
+ }
+
+ /**
+ * Gson TypeAdapter for JSR310 LocalDate type
+ */
+ public class LocalDateTypeAdapter extends TypeAdapter {
+
+ private DateTimeFormatter formatter;
+
+ public LocalDateTypeAdapter() {
+ this(DateTimeFormatter.ISO_LOCAL_DATE);
+ }
+
+ public LocalDateTypeAdapter(DateTimeFormatter formatter) {
+ this.formatter = formatter;
+ }
+
+ public void setFormat(DateTimeFormatter dateFormat) {
+ this.formatter = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, LocalDate date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ out.value(formatter.format(date));
+ }
+ }
+
+ @Override
+ public LocalDate read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ return LocalDate.parse(date, formatter);
+ }
+ }
+ }
+
+ public JSON setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
+ offsetDateTimeTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ public JSON setLocalDateFormat(DateTimeFormatter dateFormat) {
+ localDateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ /**
+ * Gson TypeAdapter for java.sql.Date type
+ * If the dateFormat is null, a simple "yyyy-MM-dd" format will be used
+ * (more efficient than SimpleDateFormat).
+ */
+ public static class SqlDateTypeAdapter extends TypeAdapter {
+
+ private DateFormat dateFormat;
+
+ public SqlDateTypeAdapter() {
+ }
+
+ public SqlDateTypeAdapter(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ public void setFormat(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, java.sql.Date date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ String value;
+ if (dateFormat != null) {
+ value = dateFormat.format(date);
+ } else {
+ value = date.toString();
+ }
+ out.value(value);
+ }
+ }
+
+ @Override
+ public java.sql.Date read(JsonReader in) throws IOException {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ try {
+ if (dateFormat != null) {
+ return new java.sql.Date(dateFormat.parse(date).getTime());
+ }
+ return new java.sql.Date(ISO8601Utils.parse(date, new ParsePosition(0)).getTime());
+ } catch (ParseException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ }
+ }
+
+ /**
+ * Gson TypeAdapter for java.util.Date type
+ * If the dateFormat is null, ISO8601Utils will be used.
+ */
+ public static class DateTypeAdapter extends TypeAdapter {
+
+ private DateFormat dateFormat;
+
+ public DateTypeAdapter() {
+ }
+
+ public DateTypeAdapter(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ public void setFormat(DateFormat dateFormat) {
+ this.dateFormat = dateFormat;
+ }
+
+ @Override
+ public void write(JsonWriter out, Date date) throws IOException {
+ if (date == null) {
+ out.nullValue();
+ } else {
+ String value;
+ if (dateFormat != null) {
+ value = dateFormat.format(date);
+ } else {
+ value = ISO8601Utils.format(date, true);
+ }
+ out.value(value);
+ }
+ }
+
+ @Override
+ public Date read(JsonReader in) throws IOException {
+ try {
+ switch (in.peek()) {
+ case NULL:
+ in.nextNull();
+ return null;
+ default:
+ String date = in.nextString();
+ try {
+ if (dateFormat != null) {
+ return dateFormat.parse(date);
+ }
+ return ISO8601Utils.parse(date, new ParsePosition(0));
+ } catch (ParseException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ } catch (IllegalArgumentException e) {
+ throw new JsonParseException(e);
+ }
+ }
+ }
+
+ public JSON setDateFormat(DateFormat dateFormat) {
+ dateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+ public JSON setSqlDateFormat(DateFormat dateFormat) {
+ sqlDateTypeAdapter.setFormat(dateFormat);
+ return this;
+ }
+
+}
diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/api/FakeApi.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/api/FakeApi.java
index 98766c03091..382733eb124 100644
--- a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/api/FakeApi.java
+++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/api/FakeApi.java
@@ -9,8 +9,8 @@ import okhttp3.RequestBody;
import java.math.BigDecimal;
import io.swagger.client.model.Client;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
import io.swagger.client.model.OuterComposite;
import java.util.ArrayList;
@@ -100,7 +100,7 @@ public interface FakeApi {
@retrofit2.http.FormUrlEncoded
@POST("fake")
Observable testEndpointParameters(
- @retrofit2.http.Field("number") BigDecimal number, @retrofit2.http.Field("double") Double _double, @retrofit2.http.Field("pattern_without_delimiter") String patternWithoutDelimiter, @retrofit2.http.Field("byte") byte[] _byte, @retrofit2.http.Field("integer") Integer integer, @retrofit2.http.Field("int32") Integer int32, @retrofit2.http.Field("int64") Long int64, @retrofit2.http.Field("float") Float _float, @retrofit2.http.Field("string") String string, @retrofit2.http.Field("binary") byte[] binary, @retrofit2.http.Field("date") LocalDate date, @retrofit2.http.Field("dateTime") DateTime dateTime, @retrofit2.http.Field("password") String password, @retrofit2.http.Field("callback") String paramCallback
+ @retrofit2.http.Field("number") BigDecimal number, @retrofit2.http.Field("double") Double _double, @retrofit2.http.Field("pattern_without_delimiter") String patternWithoutDelimiter, @retrofit2.http.Field("byte") byte[] _byte, @retrofit2.http.Field("integer") Integer integer, @retrofit2.http.Field("int32") Integer int32, @retrofit2.http.Field("int64") Long int64, @retrofit2.http.Field("float") Float _float, @retrofit2.http.Field("string") String string, @retrofit2.http.Field("binary") byte[] binary, @retrofit2.http.Field("date") LocalDate date, @retrofit2.http.Field("dateTime") OffsetDateTime dateTime, @retrofit2.http.Field("password") String password, @retrofit2.http.Field("callback") String paramCallback
);
/**
diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/FormatTest.java
index 8ec80fccb78..bd87692a36c 100644
--- a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/FormatTest.java
+++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/FormatTest.java
@@ -24,8 +24,8 @@ import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.UUID;
-import org.joda.time.DateTime;
-import org.joda.time.LocalDate;
+import org.threeten.bp.LocalDate;
+import org.threeten.bp.OffsetDateTime;
/**
* FormatTest
@@ -63,7 +63,7 @@ public class FormatTest {
private LocalDate date = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("uuid")
private UUID uuid = null;
@@ -261,7 +261,7 @@ public class FormatTest {
this.date = date;
}
- public FormatTest dateTime(DateTime dateTime) {
+ public FormatTest dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -271,11 +271,11 @@ public class FormatTest {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
index 447501906da..9c92756e166 100644
--- a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
+++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/MixedPropertiesAndAdditionalPropertiesClass.java
@@ -27,7 +27,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* MixedPropertiesAndAdditionalPropertiesClass
@@ -38,7 +38,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
private UUID uuid = null;
@SerializedName("dateTime")
- private DateTime dateTime = null;
+ private OffsetDateTime dateTime = null;
@SerializedName("map")
private Map map = null;
@@ -61,7 +61,7 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
this.uuid = uuid;
}
- public MixedPropertiesAndAdditionalPropertiesClass dateTime(DateTime dateTime) {
+ public MixedPropertiesAndAdditionalPropertiesClass dateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
return this;
}
@@ -71,11 +71,11 @@ public class MixedPropertiesAndAdditionalPropertiesClass {
* @return dateTime
**/
@ApiModelProperty(value = "")
- public DateTime getDateTime() {
+ public OffsetDateTime getDateTime() {
return dateTime;
}
- public void setDateTime(DateTime dateTime) {
+ public void setDateTime(OffsetDateTime dateTime) {
this.dateTime = dateTime;
}
diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/Order.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/Order.java
index 32496807606..7856f4baf7b 100644
--- a/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/Order.java
+++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/io/swagger/client/model/Order.java
@@ -22,7 +22,7 @@ import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
-import org.joda.time.DateTime;
+import org.threeten.bp.OffsetDateTime;
/**
* Order
@@ -39,7 +39,7 @@ public class Order {
private Integer quantity = null;
@SerializedName("shipDate")
- private DateTime shipDate = null;
+ private OffsetDateTime shipDate = null;
/**
* Order Status
@@ -150,7 +150,7 @@ public class Order {
this.quantity = quantity;
}
- public Order shipDate(DateTime shipDate) {
+ public Order shipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
return this;
}
@@ -160,11 +160,11 @@ public class Order {
* @return shipDate
**/
@ApiModelProperty(value = "")
- public DateTime getShipDate() {
+ public OffsetDateTime getShipDate() {
return shipDate;
}
- public void setShipDate(DateTime shipDate) {
+ public void setShipDate(OffsetDateTime shipDate) {
this.shipDate = shipDate;
}
diff --git a/samples/client/petstore/jaxrs-cxf-client/pom.xml b/samples/client/petstore/jaxrs-cxf-client/pom.xml
index 52d8bf6b2d2..0c5cec23101 100644
--- a/samples/client/petstore/jaxrs-cxf-client/pom.xml
+++ b/samples/client/petstore/jaxrs-cxf-client/pom.xml
@@ -80,7 +80,7 @@
maven-war-plugin
- 2.1.1
+ 3.1.0
false
@@ -191,7 +191,7 @@
2.5
1.1.0.Final
3.1.11
- 2.8.4
+ 2.8.9
UTF-8
diff --git a/samples/client/petstore/jaxrs-cxf/pom.xml b/samples/client/petstore/jaxrs-cxf/pom.xml
index f85557041b3..5e6f5059b82 100644
--- a/samples/client/petstore/jaxrs-cxf/pom.xml
+++ b/samples/client/petstore/jaxrs-cxf/pom.xml
@@ -168,7 +168,7 @@
1.1.7
2.5
3.1.11
- 2.8.4
+ 2.8.9
UTF-8
diff --git a/samples/client/petstore/scala/pom.xml b/samples/client/petstore/scala/pom.xml
index 2ad1f31df4e..81bcd8887f4 100644
--- a/samples/client/petstore/scala/pom.xml
+++ b/samples/client/petstore/scala/pom.xml
@@ -223,7 +223,7 @@
1.5.15
1.0.5
1.0.0
- 2.4.2
+ 2.8.9
4.8.1
3.1.5
diff --git a/samples/client/petstore/spring-cloud/.swagger-codegen/VERSION b/samples/client/petstore/spring-cloud/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/spring-cloud/.swagger-codegen/VERSION
+++ b/samples/client/petstore/spring-cloud/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/spring-cloud/pom.xml b/samples/client/petstore/spring-cloud/pom.xml
index f8763abcd83..65849299023 100644
--- a/samples/client/petstore/spring-cloud/pom.xml
+++ b/samples/client/petstore/spring-cloud/pom.xml
@@ -14,7 +14,7 @@
org.springframework.boot
spring-boot-starter-parent
- 1.4.1.RELEASE
+ 1.4.7.RELEASE
src/main/java
diff --git a/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/PetApi.java b/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/PetApi.java
index bc66ac4c286..0f3497e809b 100644
--- a/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/PetApi.java
+++ b/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/PetApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/StoreApi.java b/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/StoreApi.java
index 79ae75d5034..3096e1e7967 100644
--- a/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/StoreApi.java
+++ b/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/StoreApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/UserApi.java b/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/UserApi.java
index e36e50967bd..894221fbc00 100644
--- a/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/UserApi.java
+++ b/samples/client/petstore/spring-cloud/src/main/java/io/swagger/api/UserApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/client/petstore/spring-stubs/.swagger-codegen/VERSION b/samples/client/petstore/spring-stubs/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/spring-stubs/.swagger-codegen/VERSION
+++ b/samples/client/petstore/spring-stubs/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/spring-stubs/pom.xml b/samples/client/petstore/spring-stubs/pom.xml
index 8863cd80d3b..52dd32b90f0 100644
--- a/samples/client/petstore/spring-stubs/pom.xml
+++ b/samples/client/petstore/spring-stubs/pom.xml
@@ -14,7 +14,7 @@
org.springframework.boot
spring-boot-starter-parent
- 1.4.5.RELEASE
+ 1.4.7.RELEASE
src/main/java
diff --git a/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/PetApi.java b/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/PetApi.java
index 9710a149ce4..d3bdd17c939 100644
--- a/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/PetApi.java
+++ b/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/PetApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/StoreApi.java b/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/StoreApi.java
index 4d77f2d62c4..879873f0791 100644
--- a/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/StoreApi.java
+++ b/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/StoreApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/UserApi.java b/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/UserApi.java
index 1df76a05700..df25e4d5177 100644
--- a/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/UserApi.java
+++ b/samples/client/petstore/spring-stubs/src/main/java/io/swagger/api/UserApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/client/petstore/typescript-fetch/builds/default/.swagger-codegen/VERSION b/samples/client/petstore/typescript-fetch/builds/default/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/typescript-fetch/builds/default/.swagger-codegen/VERSION
+++ b/samples/client/petstore/typescript-fetch/builds/default/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/typescript-fetch/builds/default/api.ts b/samples/client/petstore/typescript-fetch/builds/default/api.ts
index f873efb26ff..db540732e5e 100644
--- a/samples/client/petstore/typescript-fetch/builds/default/api.ts
+++ b/samples/client/petstore/typescript-fetch/builds/default/api.ts
@@ -140,7 +140,7 @@ export const PetApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -174,7 +174,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
fetchOptions.headers = assign({
"api_key": params["apiKey"],
- }, contentTypeHeader);
+ }, contentTypeHeader, fetchOptions.headers);
// authentication (petstore_auth) required
// oauth required
if (configuration.accessToken) {
@@ -207,7 +207,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -241,7 +241,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -273,7 +273,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (api_key) required
if (configuration.apiKey && configuration.apiKey.api_key) {
@@ -307,7 +307,7 @@ export const PetApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -346,7 +346,7 @@ export const PetApiFetchParamCreator = {
"status": params["status"],
});
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -385,7 +385,7 @@ export const PetApiFetchParamCreator = {
"file": params["file"],
});
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -723,7 +723,7 @@ export const StoreApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -742,7 +742,7 @@ export const StoreApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (api_key) required
if (configuration.apiKey && configuration.apiKey.api_key) {
@@ -773,7 +773,7 @@ export const StoreApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -801,7 +801,7 @@ export const StoreApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -985,7 +985,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1013,7 +1013,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1041,7 +1041,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1066,7 +1066,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1091,7 +1091,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1124,7 +1124,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1143,7 +1143,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1177,7 +1177,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/.swagger-codegen/VERSION b/samples/client/petstore/typescript-fetch/builds/es6-target/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/typescript-fetch/builds/es6-target/.swagger-codegen/VERSION
+++ b/samples/client/petstore/typescript-fetch/builds/es6-target/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/api.ts b/samples/client/petstore/typescript-fetch/builds/es6-target/api.ts
index 311fc40b097..2d289dbeb21 100644
--- a/samples/client/petstore/typescript-fetch/builds/es6-target/api.ts
+++ b/samples/client/petstore/typescript-fetch/builds/es6-target/api.ts
@@ -139,7 +139,7 @@ export const PetApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -173,7 +173,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
fetchOptions.headers = Object.assign({
"api_key": params["apiKey"],
- }, contentTypeHeader);
+ }, contentTypeHeader, fetchOptions.headers);
// authentication (petstore_auth) required
// oauth required
if (configuration.accessToken) {
@@ -206,7 +206,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -240,7 +240,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -272,7 +272,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (api_key) required
if (configuration.apiKey && configuration.apiKey.api_key) {
@@ -306,7 +306,7 @@ export const PetApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -345,7 +345,7 @@ export const PetApiFetchParamCreator = {
"status": params["status"],
});
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -384,7 +384,7 @@ export const PetApiFetchParamCreator = {
"file": params["file"],
});
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -722,7 +722,7 @@ export const StoreApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -741,7 +741,7 @@ export const StoreApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (api_key) required
if (configuration.apiKey && configuration.apiKey.api_key) {
@@ -772,7 +772,7 @@ export const StoreApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -800,7 +800,7 @@ export const StoreApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -984,7 +984,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1012,7 +1012,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1040,7 +1040,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1065,7 +1065,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1090,7 +1090,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1123,7 +1123,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1142,7 +1142,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1176,7 +1176,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = Object.assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/.swagger-codegen/VERSION b/samples/client/petstore/typescript-fetch/builds/with-npm-version/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/.swagger-codegen/VERSION
+++ b/samples/client/petstore/typescript-fetch/builds/with-npm-version/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/api.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/api.ts
index f873efb26ff..db540732e5e 100644
--- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/api.ts
+++ b/samples/client/petstore/typescript-fetch/builds/with-npm-version/api.ts
@@ -140,7 +140,7 @@ export const PetApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -174,7 +174,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
fetchOptions.headers = assign({
"api_key": params["apiKey"],
- }, contentTypeHeader);
+ }, contentTypeHeader, fetchOptions.headers);
// authentication (petstore_auth) required
// oauth required
if (configuration.accessToken) {
@@ -207,7 +207,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -241,7 +241,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -273,7 +273,7 @@ export const PetApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (api_key) required
if (configuration.apiKey && configuration.apiKey.api_key) {
@@ -307,7 +307,7 @@ export const PetApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -346,7 +346,7 @@ export const PetApiFetchParamCreator = {
"status": params["status"],
});
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -385,7 +385,7 @@ export const PetApiFetchParamCreator = {
"file": params["file"],
});
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (petstore_auth) required
// oauth required
@@ -723,7 +723,7 @@ export const StoreApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -742,7 +742,7 @@ export const StoreApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
// authentication (api_key) required
if (configuration.apiKey && configuration.apiKey.api_key) {
@@ -773,7 +773,7 @@ export const StoreApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -801,7 +801,7 @@ export const StoreApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -985,7 +985,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1013,7 +1013,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1041,7 +1041,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1066,7 +1066,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1091,7 +1091,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1124,7 +1124,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1143,7 +1143,7 @@ export const UserApiFetchParamCreator = {
let contentTypeHeader: Dictionary = {};
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
@@ -1177,7 +1177,7 @@ export const UserApiFetchParamCreator = {
fetchOptions.body = JSON.stringify(params["body"] || {});
}
if (contentTypeHeader) {
- fetchOptions.headers = contentTypeHeader;
+ fetchOptions.headers = assign({}, contentTypeHeader, fetchOptions.headers);
}
return {
diff --git a/samples/server/petstore/java-inflector/.swagger-codegen/VERSION b/samples/server/petstore/java-inflector/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/java-inflector/.swagger-codegen/VERSION
+++ b/samples/server/petstore/java-inflector/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/java-inflector/src/main/swagger/swagger.yaml b/samples/server/petstore/java-inflector/src/main/swagger/swagger.yaml
index a9bed2deee8..c228c799477 100644
--- a/samples/server/petstore/java-inflector/src/main/swagger/swagger.yaml
+++ b/samples/server/petstore/java-inflector/src/main/swagger/swagger.yaml
@@ -109,11 +109,11 @@ paths:
type: "array"
items:
type: "string"
+ default: "available"
enum:
- "available"
- "pending"
- "sold"
- default: "available"
collectionFormat: "csv"
responses:
200:
@@ -647,10 +647,10 @@ paths:
type: "array"
items:
type: "string"
+ default: "$"
enum:
- ">"
- "$"
- default: "$"
- name: "enum_form_string"
in: "formData"
description: "Form parameter enum test (string)"
@@ -668,10 +668,10 @@ paths:
type: "array"
items:
type: "string"
+ default: "$"
enum:
- ">"
- "$"
- default: "$"
- name: "enum_header_string"
in: "header"
description: "Header parameter enum test (string)"
@@ -689,10 +689,10 @@ paths:
type: "array"
items:
type: "string"
+ default: "$"
enum:
- ">"
- "$"
- default: "$"
- name: "enum_query_string"
in: "query"
description: "Query parameter enum test (string)"
@@ -988,6 +988,13 @@ definitions:
complete:
type: "boolean"
default: false
+ example:
+ petId: 6
+ quantity: 1
+ id: 0
+ shipDate: "2000-01-23T04:56:07.000+00:00"
+ complete: false
+ status: "placed"
xml:
name: "Order"
Category:
@@ -998,6 +1005,9 @@ definitions:
format: "int64"
name:
type: "string"
+ example:
+ name: "aeiou"
+ id: 6
xml:
name: "Category"
User:
@@ -1023,6 +1033,15 @@ definitions:
type: "integer"
format: "int32"
description: "User Status"
+ example:
+ firstName: "aeiou"
+ lastName: "aeiou"
+ password: "aeiou"
+ userStatus: 6
+ phone: "aeiou"
+ id: 0
+ email: "aeiou"
+ username: "aeiou"
xml:
name: "User"
Tag:
@@ -1033,6 +1052,9 @@ definitions:
format: "int64"
name:
type: "string"
+ example:
+ name: "aeiou"
+ id: 1
xml:
name: "Tag"
Pet:
@@ -1071,6 +1093,18 @@ definitions:
- "available"
- "pending"
- "sold"
+ example:
+ photoUrls:
+ - "aeiou"
+ name: "doggie"
+ id: 0
+ category:
+ name: "aeiou"
+ id: 6
+ tags:
+ - name: "aeiou"
+ id: 1
+ status: "available"
xml:
name: "Pet"
ApiResponse:
@@ -1083,6 +1117,10 @@ definitions:
type: "string"
message:
type: "string"
+ example:
+ code: 0
+ type: "aeiou"
+ message: "aeiou"
$special[model.name]:
properties:
$special[property.name]:
@@ -1284,6 +1322,8 @@ definitions:
properties:
client:
type: "string"
+ example:
+ client: "aeiou"
ReadOnlyFirst:
type: "object"
properties:
@@ -1410,6 +1450,10 @@ definitions:
$ref: "#/definitions/OuterString"
my_boolean:
$ref: "#/definitions/OuterBoolean"
+ example:
+ my_string: {}
+ my_number: {}
+ my_boolean: {}
externalDocs:
description: "Find out more about Swagger"
url: "http://swagger.io"
diff --git a/samples/server/petstore/java-msf4j/.swagger-codegen/VERSION b/samples/server/petstore/java-msf4j/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/java-msf4j/.swagger-codegen/VERSION
+++ b/samples/server/petstore/java-msf4j/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/java-play-framework/.swagger-codegen/VERSION b/samples/server/petstore/java-play-framework/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/java-play-framework/.swagger-codegen/VERSION
+++ b/samples/server/petstore/java-play-framework/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/java-play-framework/public/swagger.json b/samples/server/petstore/java-play-framework/public/swagger.json
index 3446ff8eac8..c2d08f8e01f 100644
--- a/samples/server/petstore/java-play-framework/public/swagger.json
+++ b/samples/server/petstore/java-play-framework/public/swagger.json
@@ -112,8 +112,8 @@
"type" : "array",
"items" : {
"type" : "string",
- "enum" : [ "available", "pending", "sold" ],
- "default" : "available"
+ "default" : "available",
+ "enum" : [ "available", "pending", "sold" ]
},
"collectionFormat" : "csv"
} ],
@@ -723,6 +723,14 @@
},
"title" : "Pet Order",
"description" : "An order for a pets from the pet store",
+ "example" : {
+ "petId" : 6,
+ "quantity" : 1,
+ "id" : 0,
+ "shipDate" : "2000-01-23T04:56:07.000+00:00",
+ "complete" : false,
+ "status" : "placed"
+ },
"xml" : {
"name" : "Order"
}
@@ -740,6 +748,10 @@
},
"title" : "Pet catehgry",
"description" : "A category for a pet",
+ "example" : {
+ "name" : "aeiou",
+ "id" : 6
+ },
"xml" : {
"name" : "Category"
}
@@ -777,6 +789,16 @@
},
"title" : "a User",
"description" : "A User who is purchasing from the pet store",
+ "example" : {
+ "firstName" : "aeiou",
+ "lastName" : "aeiou",
+ "password" : "aeiou",
+ "userStatus" : 6,
+ "phone" : "aeiou",
+ "id" : 0,
+ "email" : "aeiou",
+ "username" : "aeiou"
+ },
"xml" : {
"name" : "User"
}
@@ -794,6 +816,10 @@
},
"title" : "Pet Tag",
"description" : "A tag for a pet",
+ "example" : {
+ "name" : "aeiou",
+ "id" : 1
+ },
"xml" : {
"name" : "Tag"
}
@@ -841,6 +867,20 @@
},
"title" : "a Pet",
"description" : "A pet for sale in the pet store",
+ "example" : {
+ "photoUrls" : [ "aeiou" ],
+ "name" : "doggie",
+ "id" : 0,
+ "category" : {
+ "name" : "aeiou",
+ "id" : 6
+ },
+ "tags" : [ {
+ "name" : "aeiou",
+ "id" : 1
+ } ],
+ "status" : "available"
+ },
"xml" : {
"name" : "Pet"
}
@@ -860,7 +900,12 @@
}
},
"title" : "An uploaded response",
- "description" : "Describes the result of uploading an image resource"
+ "description" : "Describes the result of uploading an image resource",
+ "example" : {
+ "code" : 0,
+ "type" : "aeiou",
+ "message" : "aeiou"
+ }
}
},
"externalDocs" : {
diff --git a/samples/server/petstore/jaxrs-cxf-annotated-base-path/pom.xml b/samples/server/petstore/jaxrs-cxf-annotated-base-path/pom.xml
index 1aaae04fa86..edaf8d0eeb7 100644
--- a/samples/server/petstore/jaxrs-cxf-annotated-base-path/pom.xml
+++ b/samples/server/petstore/jaxrs-cxf-annotated-base-path/pom.xml
@@ -80,7 +80,7 @@
maven-war-plugin
- 2.1.1
+ 3.1.0
false
diff --git a/samples/server/petstore/jaxrs-cxf-cdi/pom.xml b/samples/server/petstore/jaxrs-cxf-cdi/pom.xml
index 0b12e6bd4a4..b35e29c0255 100644
--- a/samples/server/petstore/jaxrs-cxf-cdi/pom.xml
+++ b/samples/server/petstore/jaxrs-cxf-cdi/pom.xml
@@ -35,7 +35,7 @@
maven-war-plugin
- 3.0.0
+ 3.1.0
false
@@ -87,4 +87,4 @@
-
\ No newline at end of file
+
diff --git a/samples/server/petstore/jaxrs-cxf-non-spring-app/pom.xml b/samples/server/petstore/jaxrs-cxf-non-spring-app/pom.xml
index 6f42c8f9704..df55fcf5667 100644
--- a/samples/server/petstore/jaxrs-cxf-non-spring-app/pom.xml
+++ b/samples/server/petstore/jaxrs-cxf-non-spring-app/pom.xml
@@ -80,7 +80,7 @@
maven-war-plugin
- 2.1.1
+ 3.1.0
false
diff --git a/samples/server/petstore/jaxrs-cxf/pom.xml b/samples/server/petstore/jaxrs-cxf/pom.xml
index 57f83767849..3d7d56c8519 100644
--- a/samples/server/petstore/jaxrs-cxf/pom.xml
+++ b/samples/server/petstore/jaxrs-cxf/pom.xml
@@ -80,7 +80,7 @@
maven-war-plugin
- 2.1.1
+ 3.1.0
false
@@ -191,7 +191,7 @@
2.5
1.1.0.Final
3.1.11
- 2.8.4
+ 2.8.9
UTF-8
diff --git a/samples/server/petstore/jaxrs-resteasy/default/pom.xml b/samples/server/petstore/jaxrs-resteasy/default/pom.xml
index 4387e631154..a1b12834a1d 100644
--- a/samples/server/petstore/jaxrs-resteasy/default/pom.xml
+++ b/samples/server/petstore/jaxrs-resteasy/default/pom.xml
@@ -12,7 +12,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
diff --git a/samples/server/petstore/jaxrs-resteasy/eap-joda/pom.xml b/samples/server/petstore/jaxrs-resteasy/eap-joda/pom.xml
index 0155af16b22..c1da131b556 100644
--- a/samples/server/petstore/jaxrs-resteasy/eap-joda/pom.xml
+++ b/samples/server/petstore/jaxrs-resteasy/eap-joda/pom.xml
@@ -12,7 +12,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
diff --git a/samples/server/petstore/jaxrs-resteasy/eap/pom.xml b/samples/server/petstore/jaxrs-resteasy/eap/pom.xml
index a760e1662ea..d4f0bc7abc5 100644
--- a/samples/server/petstore/jaxrs-resteasy/eap/pom.xml
+++ b/samples/server/petstore/jaxrs-resteasy/eap/pom.xml
@@ -12,7 +12,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
diff --git a/samples/server/petstore/jaxrs-resteasy/joda/pom.xml b/samples/server/petstore/jaxrs-resteasy/joda/pom.xml
index ea3ff373067..3a69cdd65b8 100644
--- a/samples/server/petstore/jaxrs-resteasy/joda/pom.xml
+++ b/samples/server/petstore/jaxrs-resteasy/joda/pom.xml
@@ -12,7 +12,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
diff --git a/samples/server/petstore/jaxrs-spec/pom.xml b/samples/server/petstore/jaxrs-spec/pom.xml
index 0c8ec37669a..984515b6162 100644
--- a/samples/server/petstore/jaxrs-spec/pom.xml
+++ b/samples/server/petstore/jaxrs-spec/pom.xml
@@ -11,7 +11,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.6
+ 3.1.0
false
@@ -80,4 +80,4 @@
4.8.1
-
\ No newline at end of file
+
diff --git a/samples/server/petstore/jaxrs/jersey1/pom.xml b/samples/server/petstore/jaxrs/jersey1/pom.xml
index b1516889769..efaa0edf24b 100644
--- a/samples/server/petstore/jaxrs/jersey1/pom.xml
+++ b/samples/server/petstore/jaxrs/jersey1/pom.xml
@@ -11,7 +11,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
@@ -192,7 +192,7 @@
1.5.15
9.2.9.v20150224
1.19.1
- 2.8.7
+ 2.8.9
1.7.21
4.12
2.5
diff --git a/samples/server/petstore/jaxrs/jersey2/pom.xml b/samples/server/petstore/jaxrs/jersey2/pom.xml
index 287ab883220..03d596436fd 100644
--- a/samples/server/petstore/jaxrs/jersey2/pom.xml
+++ b/samples/server/petstore/jaxrs/jersey2/pom.xml
@@ -20,7 +20,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.1.1
+ 3.1.0
maven-failsafe-plugin
@@ -176,7 +176,7 @@
1.5.15
9.2.9.v20150224
2.22.2
- 2.8.7
+ 2.8.9
4.12
1.1.7
2.5
diff --git a/samples/server/petstore/nancyfx/.swagger-codegen/VERSION b/samples/server/petstore/nancyfx/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/nancyfx/.swagger-codegen/VERSION
+++ b/samples/server/petstore/nancyfx/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/nancyfx/IO.Swagger.sln b/samples/server/petstore/nancyfx/IO.Swagger.sln
index 565c1417d24..1e40deb1a14 100644
--- a/samples/server/petstore/nancyfx/IO.Swagger.sln
+++ b/samples/server/petstore/nancyfx/IO.Swagger.sln
@@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
VisualStudioVersion = 12.0.0.0
MinimumVisualStudioVersion = 10.0.0.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IO.Swagger", "src\IO.Swagger\IO.Swagger.csproj", "{EC6A666F-46B8-43A1-B5FB-46F1C708C8A5}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IO.Swagger", "src\IO.Swagger\IO.Swagger.csproj", "{768B8DC6-54EE-4D40-9B20-7857E1D742A4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -10,10 +10,10 @@ Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
-{EC6A666F-46B8-43A1-B5FB-46F1C708C8A5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-{EC6A666F-46B8-43A1-B5FB-46F1C708C8A5}.Debug|Any CPU.Build.0 = Debug|Any CPU
-{EC6A666F-46B8-43A1-B5FB-46F1C708C8A5}.Release|Any CPU.ActiveCfg = Release|Any CPU
-{EC6A666F-46B8-43A1-B5FB-46F1C708C8A5}.Release|Any CPU.Build.0 = Release|Any CPU
+{768B8DC6-54EE-4D40-9B20-7857E1D742A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+{768B8DC6-54EE-4D40-9B20-7857E1D742A4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+{768B8DC6-54EE-4D40-9B20-7857E1D742A4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+{768B8DC6-54EE-4D40-9B20-7857E1D742A4}.Release|Any CPU.Build.0 = Release|Any CPU
{19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.Build.0 = Debug|Any CPU
{19F1DEBC-DE5E-4517-8062-F000CD499087}.Release|Any CPU.ActiveCfg = Release|Any CPU
diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/IO.Swagger.csproj b/samples/server/petstore/nancyfx/src/IO.Swagger/IO.Swagger.csproj
index 925d861b59e..e1577197b6f 100644
--- a/samples/server/petstore/nancyfx/src/IO.Swagger/IO.Swagger.csproj
+++ b/samples/server/petstore/nancyfx/src/IO.Swagger/IO.Swagger.csproj
@@ -3,7 +3,7 @@
Debug
AnyCPU
- {EC6A666F-46B8-43A1-B5FB-46F1C708C8A5}
+ {768B8DC6-54EE-4D40-9B20-7857E1D742A4}
Library
Properties
IO.Swagger.v2
diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/ApiResponse.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/ApiResponse.cs
index 3b8ad566af8..ebaa3c8d4f1 100644
--- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/ApiResponse.cs
+++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/ApiResponse.cs
@@ -182,4 +182,4 @@ namespace IO.Swagger.v2.Models
}
-}
+}
\ No newline at end of file
diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Category.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Category.cs
index c6089446e51..bf811614b37 100644
--- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Category.cs
+++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Category.cs
@@ -162,4 +162,4 @@ namespace IO.Swagger.v2.Models
}
-}
+}
\ No newline at end of file
diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Order.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Order.cs
index f1f94f39d77..0495a36f138 100644
--- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Order.cs
+++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Order.cs
@@ -244,4 +244,4 @@ namespace IO.Swagger.v2.Models
public enum StatusEnum { Placed, Approved, Delivered };
}
-}
+}
\ No newline at end of file
diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Pet.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Pet.cs
index b092feb9e85..f945a0fdd78 100644
--- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Pet.cs
+++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Pet.cs
@@ -251,4 +251,4 @@ namespace IO.Swagger.v2.Models
public enum StatusEnum { Available, Pending, Sold };
}
-}
+}
\ No newline at end of file
diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Tag.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Tag.cs
index 94b15c123a1..02d1e40f1ec 100644
--- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Tag.cs
+++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Tag.cs
@@ -162,4 +162,4 @@ namespace IO.Swagger.v2.Models
}
-}
+}
\ No newline at end of file
diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/User.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/User.cs
index bd720290ad4..99f401750df 100644
--- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/User.cs
+++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/User.cs
@@ -282,4 +282,4 @@ namespace IO.Swagger.v2.Models
}
-}
+}
\ No newline at end of file
diff --git a/samples/server/petstore/spring-mvc-j8-async/.swagger-codegen/VERSION b/samples/server/petstore/spring-mvc-j8-async/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/spring-mvc-j8-async/.swagger-codegen/VERSION
+++ b/samples/server/petstore/spring-mvc-j8-async/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/spring-mvc-j8-async/pom.xml b/samples/server/petstore/spring-mvc-j8-async/pom.xml
index 27c113c405f..67421697029 100644
--- a/samples/server/petstore/spring-mvc-j8-async/pom.xml
+++ b/samples/server/petstore/spring-mvc-j8-async/pom.xml
@@ -11,7 +11,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.6
+ 3.1.0
maven-failsafe-plugin
@@ -140,7 +140,7 @@
4.12
2.5
2.6.0
- 2.6.4
- 4.2.5.RELEASE
+ 2.8.9
+ 4.3.9.RELEASE
diff --git a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/FakeApi.java b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/FakeApi.java
index 4c16c2254ad..54e038c5dd9 100644
--- a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/FakeApi.java
+++ b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/FakeApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/FakeClassnameTestApi.java b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/FakeClassnameTestApi.java
index d3ddba08b3c..f16556d18ab 100644
--- a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/FakeClassnameTestApi.java
+++ b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/FakeClassnameTestApi.java
@@ -1,3 +1,8 @@
+/**
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
+ * https://github.com/swagger-api/swagger-codegen
+ * Do not edit the class manually.
+ */
package io.swagger.api;
import io.swagger.model.Client;
diff --git a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/PetApi.java b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/PetApi.java
index ed20c10c166..d399446731e 100644
--- a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/PetApi.java
+++ b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/PetApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/StoreApi.java b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/StoreApi.java
index dbe8583be38..c39db020527 100644
--- a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/StoreApi.java
+++ b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/StoreApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/UserApi.java b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/UserApi.java
index 53d0fb8bb87..1b301f27552 100644
--- a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/UserApi.java
+++ b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/api/UserApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/model/FormatTest.java b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/model/FormatTest.java
index b5d0c2e2505..411c1ca63b9 100644
--- a/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/model/FormatTest.java
+++ b/samples/server/petstore/spring-mvc-j8-async/src/main/java/io/swagger/model/FormatTest.java
@@ -220,7 +220,7 @@ public class FormatTest {
@ApiModelProperty(required = true, value = "")
@NotNull
-
+ @Pattern(regexp="^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$")
public byte[] getByte() {
return _byte;
}
diff --git a/samples/server/petstore/spring-mvc/pom.xml b/samples/server/petstore/spring-mvc/pom.xml
index 6830c25fa7b..3c2e3f3c09a 100644
--- a/samples/server/petstore/spring-mvc/pom.xml
+++ b/samples/server/petstore/spring-mvc/pom.xml
@@ -11,7 +11,7 @@
org.apache.maven.plugins
maven-war-plugin
- 2.6
+ 3.1.0
maven-failsafe-plugin
@@ -140,7 +140,7 @@
4.12
2.5
2.6.0
- 2.6.4
- 4.2.5.RELEASE
+ 2.8.9
+ 4.3.9.RELEASE
diff --git a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/FakeApi.java b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/FakeApi.java
index fdeecfba834..16bbbf05c53 100644
--- a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/FakeApi.java
+++ b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/FakeApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/FakeClassnameTestApi.java b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/FakeClassnameTestApi.java
index 87a50f42810..f56ad43fb8a 100644
--- a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/FakeClassnameTestApi.java
+++ b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/FakeClassnameTestApi.java
@@ -1,3 +1,8 @@
+/**
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
+ * https://github.com/swagger-api/swagger-codegen
+ * Do not edit the class manually.
+ */
package io.swagger.api;
import io.swagger.model.Client;
diff --git a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/PetApi.java b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/PetApi.java
index 6f2b2d299e1..7a37cbf7a45 100644
--- a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/PetApi.java
+++ b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/PetApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/StoreApi.java b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/StoreApi.java
index 9bda749a1db..2bbbf1759b7 100644
--- a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/StoreApi.java
+++ b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/StoreApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/UserApi.java b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/UserApi.java
index 5dea1773ebb..308d4215e91 100644
--- a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/UserApi.java
+++ b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/api/UserApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/model/FormatTest.java b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/model/FormatTest.java
index 66baac16d0d..7af1fc56b75 100644
--- a/samples/server/petstore/spring-mvc/src/main/java/io/swagger/model/FormatTest.java
+++ b/samples/server/petstore/spring-mvc/src/main/java/io/swagger/model/FormatTest.java
@@ -220,7 +220,7 @@ public class FormatTest {
@ApiModelProperty(required = true, value = "")
@NotNull
-
+ @Pattern(regexp="^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$")
public byte[] getByte() {
return _byte;
}
diff --git a/samples/server/petstore/springboot-beanvalidation/.swagger-codegen/VERSION b/samples/server/petstore/springboot-beanvalidation/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/springboot-beanvalidation/.swagger-codegen/VERSION
+++ b/samples/server/petstore/springboot-beanvalidation/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/springboot-beanvalidation/pom.xml b/samples/server/petstore/springboot-beanvalidation/pom.xml
index 59570dd3b56..5e6452410f4 100644
--- a/samples/server/petstore/springboot-beanvalidation/pom.xml
+++ b/samples/server/petstore/springboot-beanvalidation/pom.xml
@@ -14,7 +14,7 @@
org.springframework.boot
spring-boot-starter-parent
- 1.4.5.RELEASE
+ 1.4.7.RELEASE
src/main/java
diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/FakeApi.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/FakeApi.java
index fdeecfba834..16bbbf05c53 100644
--- a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/FakeApi.java
+++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/FakeApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/FakeClassnameTestApi.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/FakeClassnameTestApi.java
index 87a50f42810..f56ad43fb8a 100644
--- a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/FakeClassnameTestApi.java
+++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/FakeClassnameTestApi.java
@@ -1,3 +1,8 @@
+/**
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
+ * https://github.com/swagger-api/swagger-codegen
+ * Do not edit the class manually.
+ */
package io.swagger.api;
import io.swagger.model.Client;
diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/PetApi.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/PetApi.java
index 6f2b2d299e1..7a37cbf7a45 100644
--- a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/PetApi.java
+++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/PetApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/StoreApi.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/StoreApi.java
index 9bda749a1db..2bbbf1759b7 100644
--- a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/StoreApi.java
+++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/StoreApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/UserApi.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/UserApi.java
index 5dea1773ebb..308d4215e91 100644
--- a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/UserApi.java
+++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/api/UserApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/model/FormatTest.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/model/FormatTest.java
index 66baac16d0d..7af1fc56b75 100644
--- a/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/model/FormatTest.java
+++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/io/swagger/model/FormatTest.java
@@ -220,7 +220,7 @@ public class FormatTest {
@ApiModelProperty(required = true, value = "")
@NotNull
-
+ @Pattern(regexp="^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$")
public byte[] getByte() {
return _byte;
}
diff --git a/samples/server/petstore/springboot-delegate-j8/.swagger-codegen/VERSION b/samples/server/petstore/springboot-delegate-j8/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/springboot-delegate-j8/.swagger-codegen/VERSION
+++ b/samples/server/petstore/springboot-delegate-j8/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/springboot-delegate-j8/pom.xml b/samples/server/petstore/springboot-delegate-j8/pom.xml
index 63692c76559..ba9be83fe8a 100644
--- a/samples/server/petstore/springboot-delegate-j8/pom.xml
+++ b/samples/server/petstore/springboot-delegate-j8/pom.xml
@@ -14,7 +14,7 @@
org.springframework.boot
spring-boot-starter-parent
- 1.4.5.RELEASE
+ 1.4.7.RELEASE
src/main/java
diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/FakeApi.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/FakeApi.java
index a8a2930a23f..0777b5b3dd9 100644
--- a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/FakeApi.java
+++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/FakeApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/FakeClassnameTestApi.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/FakeClassnameTestApi.java
index e64071b1122..467188e7534 100644
--- a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/FakeClassnameTestApi.java
+++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/FakeClassnameTestApi.java
@@ -1,3 +1,8 @@
+/**
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
+ * https://github.com/swagger-api/swagger-codegen
+ * Do not edit the class manually.
+ */
package io.swagger.api;
import io.swagger.model.Client;
diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/PetApi.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/PetApi.java
index 78795201787..742def21dd4 100644
--- a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/PetApi.java
+++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/PetApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/StoreApi.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/StoreApi.java
index 28896517669..4c7b48a28f0 100644
--- a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/StoreApi.java
+++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/StoreApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/UserApi.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/UserApi.java
index eca55982341..edf6aa86f0b 100644
--- a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/UserApi.java
+++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/api/UserApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/model/FormatTest.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/model/FormatTest.java
index b5d0c2e2505..411c1ca63b9 100644
--- a/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/model/FormatTest.java
+++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/io/swagger/model/FormatTest.java
@@ -220,7 +220,7 @@ public class FormatTest {
@ApiModelProperty(required = true, value = "")
@NotNull
-
+ @Pattern(regexp="^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$")
public byte[] getByte() {
return _byte;
}
diff --git a/samples/server/petstore/springboot-delegate/.swagger-codegen/VERSION b/samples/server/petstore/springboot-delegate/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/springboot-delegate/.swagger-codegen/VERSION
+++ b/samples/server/petstore/springboot-delegate/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/springboot-delegate/pom.xml b/samples/server/petstore/springboot-delegate/pom.xml
index 9881f63cdf3..a4dfc993091 100644
--- a/samples/server/petstore/springboot-delegate/pom.xml
+++ b/samples/server/petstore/springboot-delegate/pom.xml
@@ -14,7 +14,7 @@
org.springframework.boot
spring-boot-starter-parent
- 1.4.5.RELEASE
+ 1.4.7.RELEASE
src/main/java
diff --git a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/FakeApi.java b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/FakeApi.java
index fdeecfba834..16bbbf05c53 100644
--- a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/FakeApi.java
+++ b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/FakeApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/FakeClassnameTestApi.java b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/FakeClassnameTestApi.java
index 87a50f42810..f56ad43fb8a 100644
--- a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/FakeClassnameTestApi.java
+++ b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/FakeClassnameTestApi.java
@@ -1,3 +1,8 @@
+/**
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
+ * https://github.com/swagger-api/swagger-codegen
+ * Do not edit the class manually.
+ */
package io.swagger.api;
import io.swagger.model.Client;
diff --git a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/PetApi.java b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/PetApi.java
index 6f2b2d299e1..7a37cbf7a45 100644
--- a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/PetApi.java
+++ b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/PetApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/StoreApi.java b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/StoreApi.java
index 9bda749a1db..2bbbf1759b7 100644
--- a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/StoreApi.java
+++ b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/StoreApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/UserApi.java b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/UserApi.java
index 5dea1773ebb..308d4215e91 100644
--- a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/UserApi.java
+++ b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/api/UserApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/model/FormatTest.java b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/model/FormatTest.java
index 66baac16d0d..7af1fc56b75 100644
--- a/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/model/FormatTest.java
+++ b/samples/server/petstore/springboot-delegate/src/main/java/io/swagger/model/FormatTest.java
@@ -220,7 +220,7 @@ public class FormatTest {
@ApiModelProperty(required = true, value = "")
@NotNull
-
+ @Pattern(regexp="^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$")
public byte[] getByte() {
return _byte;
}
diff --git a/samples/server/petstore/springboot-implicitHeaders/.swagger-codegen/VERSION b/samples/server/petstore/springboot-implicitHeaders/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/springboot-implicitHeaders/.swagger-codegen/VERSION
+++ b/samples/server/petstore/springboot-implicitHeaders/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/springboot-implicitHeaders/pom.xml b/samples/server/petstore/springboot-implicitHeaders/pom.xml
index 9881f63cdf3..a4dfc993091 100644
--- a/samples/server/petstore/springboot-implicitHeaders/pom.xml
+++ b/samples/server/petstore/springboot-implicitHeaders/pom.xml
@@ -14,7 +14,7 @@
org.springframework.boot
spring-boot-starter-parent
- 1.4.5.RELEASE
+ 1.4.7.RELEASE
src/main/java
diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/FakeApi.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/FakeApi.java
index 0d95e0f268d..99e35da0ab2 100644
--- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/FakeApi.java
+++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/FakeApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/FakeClassnameTestApi.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/FakeClassnameTestApi.java
index 521a69ea7ad..802a84769b2 100644
--- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/FakeClassnameTestApi.java
+++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/FakeClassnameTestApi.java
@@ -1,3 +1,8 @@
+/**
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
+ * https://github.com/swagger-api/swagger-codegen
+ * Do not edit the class manually.
+ */
package io.swagger.api;
import io.swagger.model.Client;
diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/PetApi.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/PetApi.java
index 681e05f46d8..8a5e8ab3731 100644
--- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/PetApi.java
+++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/PetApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/StoreApi.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/StoreApi.java
index fffb1677a22..7be27d50a6e 100644
--- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/StoreApi.java
+++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/StoreApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/UserApi.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/UserApi.java
index 98ffd114136..c4ebbd68085 100644
--- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/UserApi.java
+++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/api/UserApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/model/FormatTest.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/model/FormatTest.java
index 66baac16d0d..7af1fc56b75 100644
--- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/model/FormatTest.java
+++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/io/swagger/model/FormatTest.java
@@ -220,7 +220,7 @@ public class FormatTest {
@ApiModelProperty(required = true, value = "")
@NotNull
-
+ @Pattern(regexp="^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$")
public byte[] getByte() {
return _byte;
}
diff --git a/samples/server/petstore/springboot/.swagger-codegen/VERSION b/samples/server/petstore/springboot/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/springboot/.swagger-codegen/VERSION
+++ b/samples/server/petstore/springboot/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/springboot/pom.xml b/samples/server/petstore/springboot/pom.xml
index 9881f63cdf3..a4dfc993091 100644
--- a/samples/server/petstore/springboot/pom.xml
+++ b/samples/server/petstore/springboot/pom.xml
@@ -14,7 +14,7 @@
org.springframework.boot
spring-boot-starter-parent
- 1.4.5.RELEASE
+ 1.4.7.RELEASE
src/main/java
diff --git a/samples/server/petstore/springboot/src/main/java/io/swagger/api/FakeApi.java b/samples/server/petstore/springboot/src/main/java/io/swagger/api/FakeApi.java
index fdeecfba834..16bbbf05c53 100644
--- a/samples/server/petstore/springboot/src/main/java/io/swagger/api/FakeApi.java
+++ b/samples/server/petstore/springboot/src/main/java/io/swagger/api/FakeApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot/src/main/java/io/swagger/api/FakeClassnameTestApi.java b/samples/server/petstore/springboot/src/main/java/io/swagger/api/FakeClassnameTestApi.java
index 87a50f42810..f56ad43fb8a 100644
--- a/samples/server/petstore/springboot/src/main/java/io/swagger/api/FakeClassnameTestApi.java
+++ b/samples/server/petstore/springboot/src/main/java/io/swagger/api/FakeClassnameTestApi.java
@@ -1,3 +1,8 @@
+/**
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
+ * https://github.com/swagger-api/swagger-codegen
+ * Do not edit the class manually.
+ */
package io.swagger.api;
import io.swagger.model.Client;
diff --git a/samples/server/petstore/springboot/src/main/java/io/swagger/api/PetApi.java b/samples/server/petstore/springboot/src/main/java/io/swagger/api/PetApi.java
index 6f2b2d299e1..7a37cbf7a45 100644
--- a/samples/server/petstore/springboot/src/main/java/io/swagger/api/PetApi.java
+++ b/samples/server/petstore/springboot/src/main/java/io/swagger/api/PetApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot/src/main/java/io/swagger/api/StoreApi.java b/samples/server/petstore/springboot/src/main/java/io/swagger/api/StoreApi.java
index 9bda749a1db..2bbbf1759b7 100644
--- a/samples/server/petstore/springboot/src/main/java/io/swagger/api/StoreApi.java
+++ b/samples/server/petstore/springboot/src/main/java/io/swagger/api/StoreApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot/src/main/java/io/swagger/api/UserApi.java b/samples/server/petstore/springboot/src/main/java/io/swagger/api/UserApi.java
index 5dea1773ebb..308d4215e91 100644
--- a/samples/server/petstore/springboot/src/main/java/io/swagger/api/UserApi.java
+++ b/samples/server/petstore/springboot/src/main/java/io/swagger/api/UserApi.java
@@ -1,5 +1,5 @@
/**
- * NOTE: This class is auto generated by the swagger code generator program (2.2.3-SNAPSHOT).
+ * NOTE: This class is auto generated by the swagger code generator program (2.3.0-SNAPSHOT).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
diff --git a/samples/server/petstore/springboot/src/main/java/io/swagger/model/FormatTest.java b/samples/server/petstore/springboot/src/main/java/io/swagger/model/FormatTest.java
index 66baac16d0d..7af1fc56b75 100644
--- a/samples/server/petstore/springboot/src/main/java/io/swagger/model/FormatTest.java
+++ b/samples/server/petstore/springboot/src/main/java/io/swagger/model/FormatTest.java
@@ -220,7 +220,7 @@ public class FormatTest {
@ApiModelProperty(required = true, value = "")
@NotNull
-
+ @Pattern(regexp="^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$")
public byte[] getByte() {
return _byte;
}
diff --git a/samples/server/petstore/undertow/.swagger-codegen/VERSION b/samples/server/petstore/undertow/.swagger-codegen/VERSION
index 7fea99011a6..f9f7450d135 100644
--- a/samples/server/petstore/undertow/.swagger-codegen/VERSION
+++ b/samples/server/petstore/undertow/.swagger-codegen/VERSION
@@ -1 +1 @@
-2.2.3-SNAPSHOT
\ No newline at end of file
+2.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/server/petstore/undertow/src/main/resources/config/swagger.json b/samples/server/petstore/undertow/src/main/resources/config/swagger.json
index 3446ff8eac8..c2d08f8e01f 100644
--- a/samples/server/petstore/undertow/src/main/resources/config/swagger.json
+++ b/samples/server/petstore/undertow/src/main/resources/config/swagger.json
@@ -112,8 +112,8 @@
"type" : "array",
"items" : {
"type" : "string",
- "enum" : [ "available", "pending", "sold" ],
- "default" : "available"
+ "default" : "available",
+ "enum" : [ "available", "pending", "sold" ]
},
"collectionFormat" : "csv"
} ],
@@ -723,6 +723,14 @@
},
"title" : "Pet Order",
"description" : "An order for a pets from the pet store",
+ "example" : {
+ "petId" : 6,
+ "quantity" : 1,
+ "id" : 0,
+ "shipDate" : "2000-01-23T04:56:07.000+00:00",
+ "complete" : false,
+ "status" : "placed"
+ },
"xml" : {
"name" : "Order"
}
@@ -740,6 +748,10 @@
},
"title" : "Pet catehgry",
"description" : "A category for a pet",
+ "example" : {
+ "name" : "aeiou",
+ "id" : 6
+ },
"xml" : {
"name" : "Category"
}
@@ -777,6 +789,16 @@
},
"title" : "a User",
"description" : "A User who is purchasing from the pet store",
+ "example" : {
+ "firstName" : "aeiou",
+ "lastName" : "aeiou",
+ "password" : "aeiou",
+ "userStatus" : 6,
+ "phone" : "aeiou",
+ "id" : 0,
+ "email" : "aeiou",
+ "username" : "aeiou"
+ },
"xml" : {
"name" : "User"
}
@@ -794,6 +816,10 @@
},
"title" : "Pet Tag",
"description" : "A tag for a pet",
+ "example" : {
+ "name" : "aeiou",
+ "id" : 1
+ },
"xml" : {
"name" : "Tag"
}
@@ -841,6 +867,20 @@
},
"title" : "a Pet",
"description" : "A pet for sale in the pet store",
+ "example" : {
+ "photoUrls" : [ "aeiou" ],
+ "name" : "doggie",
+ "id" : 0,
+ "category" : {
+ "name" : "aeiou",
+ "id" : 6
+ },
+ "tags" : [ {
+ "name" : "aeiou",
+ "id" : 1
+ } ],
+ "status" : "available"
+ },
"xml" : {
"name" : "Pet"
}
@@ -860,7 +900,12 @@
}
},
"title" : "An uploaded response",
- "description" : "Describes the result of uploading an image resource"
+ "description" : "Describes the result of uploading an image resource",
+ "example" : {
+ "code" : 0,
+ "type" : "aeiou",
+ "message" : "aeiou"
+ }
}
},
"externalDocs" : {