diff --git a/README.md b/README.md index 0135cd50397..2581682674b 100644 --- a/README.md +++ b/README.md @@ -929,6 +929,7 @@ Presentations/Videos/Tutorials/Books - 2017/12/07 - [API-driven development with OpenAPI and Swagger, Part 2](https://www.itworld.com/article/3199190/apis/api-driven-development-with-openapi-and-swagger-part-2.html) by Matthew Tyson - 2017/12/29 - [REST APIs代码生成指南](https://gumroad.com/l/swagger_codegen_beginner_zh)(eBook) by [William Cheng](https://github.com/wing328), [Xin Meng](https://github.com/xmeng1) - 2017/12/21 - [Using Protocol Buffer to Generate SDK at Hootsuite](http://code.hootsuite.com/using-protocol-buffer-to-generate-sdk-at-hoosuite/?lipi=urn%3Ali%3Apage%3Ad_flagship3_messaging%3By4ATz3SDRXyvXJJ14LQysQ%3D%3D) by [Joy Zhang](https://www.linkedin.com/in/joy8zhang/) +- 2018/01/11 - [Swagger 工具箱介绍及代码自动生成示例](https://github.com/qct/swagger-example) by [qct](https://github.com/qct) # Swagger Codegen Core Team diff --git a/bin/java-vertx-rx-petstore-server.sh b/bin/java-vertx-rx-petstore-server.sh index f569df51cc6..92c7c355081 100755 --- a/bin/java-vertx-rx-petstore-server.sh +++ b/bin/java-vertx-rx-petstore-server.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 java-vertx -o samples/server/petstore/java-vertx/rx -DvertxSwaggerRouterVersion=1.2.0,rxInterface=true" +ags="$@ generate -i modules/swagger-codegen/src/test/resources/2_0/petstore.yaml -l java-vertx --artifact-id swagger-java-vertx-rx-server -o samples/server/petstore/java-vertx/rx -DvertxSwaggerRouterVersion=1.2.0,rxInterface=true" java $JAVA_OPTS -jar $executable $ags diff --git a/modules/swagger-codegen/src/main/resources/JavaVertXServer/apiVerticle.mustache b/modules/swagger-codegen/src/main/resources/JavaVertXServer/apiVerticle.mustache index 715e7aa11f3..74b976f66a7 100644 --- a/modules/swagger-codegen/src/main/resources/JavaVertXServer/apiVerticle.mustache +++ b/modules/swagger-codegen/src/main/resources/JavaVertXServer/apiVerticle.mustache @@ -19,8 +19,17 @@ public class {{classname}}Verticle extends AbstractVerticle { {{#operations}}{{#operation}}{{#vendorExtensions}}final static String {{x-serviceid-varname}} = "{{x-serviceid}}"; {{/vendorExtensions}}{{/operation}}{{/operations}} - //TODO : create Implementation - {{classname}} service = new {{classname}}Impl(); + final {{classname}} service; + + public {{classname}}Verticle() { + try { + Class serviceImplClass = getClass().getClassLoader().loadClass("{{package}}.{{classname}}Impl"); + service = ({{classname}})serviceImplClass.newInstance(); + } catch (Exception e) { + logUnexpectedError("{{classname}}Verticle constructor", e); + throw new RuntimeException(e); + } + } @Override public void start() throws Exception { diff --git a/modules/swagger-codegen/src/main/resources/r/model.mustache b/modules/swagger-codegen/src/main/resources/r/model.mustache index 94ae74085e2..af5b5cc9ecc 100644 --- a/modules/swagger-codegen/src/main/resources/r/model.mustache +++ b/modules/swagger-codegen/src/main/resources/r/model.mustache @@ -127,7 +127,7 @@ self$`{{baseName}}` <- lapply({{classname}}Object$`{{baseName}}`, function(x) {{datatype}}$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE))) {{/isListContainer}} {{^isListContainer}} - {{datatype}}Object -> {{datatype}}$new() + {{datatype}}Object <- {{datatype}}$new() self$`{{baseName}}` <- {{datatype}}Object$fromJSON(jsonlite::toJSON({{classname}}Object${{baseName}}, auto_unbox = TRUE)) {{/isListContainer}} {{/isPrimitiveType}} diff --git a/pom.xml.circleci b/pom.xml.circleci index f54ae23d6d2..fe24e2bfaea 100644 --- a/pom.xml.circleci +++ b/pom.xml.circleci @@ -843,8 +843,10 @@ samples/client/petstore/go + samples/server/petstore/java-vertx/rx + samples/server/petstore/java-vertx/async samples/server/petstore/java-inflector - samples/server/petstore/java-pkmst + samples/server/petstore/java-pkmst samples/server/petstore/java-play-framework samples/server/petstore/undertow samples/server/petstore/jaxrs/jersey1 diff --git a/samples/server/petstore/java-vertx/async/.swagger-codegen/VERSION b/samples/server/petstore/java-vertx/async/.swagger-codegen/VERSION index f9f7450d135..50794f17f1a 100644 --- a/samples/server/petstore/java-vertx/async/.swagger-codegen/VERSION +++ b/samples/server/petstore/java-vertx/async/.swagger-codegen/VERSION @@ -1 +1 @@ -2.3.0-SNAPSHOT \ No newline at end of file +2.3.1-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/java-vertx/async/pom.xml b/samples/server/petstore/java-vertx/async/pom.xml index 8e1a96f88ef..ba6f38e39d9 100644 --- a/samples/server/petstore/java-vertx/async/pom.xml +++ b/samples/server/petstore/java-vertx/async/pom.xml @@ -15,7 +15,7 @@ 4.12 3.4.1 3.3 - 1.2.0 + 1.4.0 2.3 2.7.4 @@ -28,25 +28,24 @@ test - - io.vertx - vertx-unit - ${vertx.version} - test - + + io.vertx + vertx-unit + ${vertx.version} + test + - com.github.phiz71 - vertx-swagger-router - ${vertx-swagger-router.version} - - - - com.fasterxml.jackson.datatype - jackson-datatype-jsr310 - ${jackson-datatype-jsr310.version} - + com.github.phiz71 + vertx-swagger-router + ${vertx-swagger-router.version} + + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + ${jackson-datatype-jsr310.version} + @@ -88,4 +87,4 @@ - \ No newline at end of file + diff --git a/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/PetApiVerticle.java b/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/PetApiVerticle.java index fb3c20944f1..f97369e6ad3 100644 --- a/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/PetApiVerticle.java +++ b/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/PetApiVerticle.java @@ -28,8 +28,17 @@ public class PetApiVerticle extends AbstractVerticle { final static String UPDATEPETWITHFORM_SERVICE_ID = "updatePetWithForm"; final static String UPLOADFILE_SERVICE_ID = "uploadFile"; - //TODO : create Implementation - PetApi service = new PetApiImpl(); + final PetApi service; + + public PetApiVerticle() { + try { + Class serviceImplClass = getClass().getClassLoader().loadClass("io.swagger.server.api.verticle.PetApiImpl"); + service = (PetApi)serviceImplClass.newInstance(); + } catch (Exception e) { + logUnexpectedError("PetApiVerticle constructor", e); + throw new RuntimeException(e); + } + } @Override public void start() throws Exception { diff --git a/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/StoreApiVerticle.java b/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/StoreApiVerticle.java index 9299a08e013..cc11fa49a2c 100644 --- a/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/StoreApiVerticle.java +++ b/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/StoreApiVerticle.java @@ -22,8 +22,17 @@ public class StoreApiVerticle extends AbstractVerticle { final static String GETORDERBYID_SERVICE_ID = "getOrderById"; final static String PLACEORDER_SERVICE_ID = "placeOrder"; - //TODO : create Implementation - StoreApi service = new StoreApiImpl(); + final StoreApi service; + + public StoreApiVerticle() { + try { + Class serviceImplClass = getClass().getClassLoader().loadClass("io.swagger.server.api.verticle.StoreApiImpl"); + service = (StoreApi)serviceImplClass.newInstance(); + } catch (Exception e) { + logUnexpectedError("StoreApiVerticle constructor", e); + throw new RuntimeException(e); + } + } @Override public void start() throws Exception { diff --git a/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/UserApiVerticle.java b/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/UserApiVerticle.java index 0ad1f5eb980..70070fd59b4 100644 --- a/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/UserApiVerticle.java +++ b/samples/server/petstore/java-vertx/async/src/main/java/io/swagger/server/api/verticle/UserApiVerticle.java @@ -26,8 +26,17 @@ public class UserApiVerticle extends AbstractVerticle { final static String LOGOUTUSER_SERVICE_ID = "logoutUser"; final static String UPDATEUSER_SERVICE_ID = "updateUser"; - //TODO : create Implementation - UserApi service = new UserApiImpl(); + final UserApi service; + + public UserApiVerticle() { + try { + Class serviceImplClass = getClass().getClassLoader().loadClass("io.swagger.server.api.verticle.UserApiImpl"); + service = (UserApi)serviceImplClass.newInstance(); + } catch (Exception e) { + logUnexpectedError("UserApiVerticle constructor", e); + throw new RuntimeException(e); + } + } @Override public void start() throws Exception { diff --git a/samples/server/petstore/java-vertx/rx/.swagger-codegen/VERSION b/samples/server/petstore/java-vertx/rx/.swagger-codegen/VERSION index f9f7450d135..50794f17f1a 100644 --- a/samples/server/petstore/java-vertx/rx/.swagger-codegen/VERSION +++ b/samples/server/petstore/java-vertx/rx/.swagger-codegen/VERSION @@ -1 +1 @@ -2.3.0-SNAPSHOT \ No newline at end of file +2.3.1-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/java-vertx/rx/pom.xml b/samples/server/petstore/java-vertx/rx/pom.xml index 8e1a96f88ef..ac1842d1aaa 100644 --- a/samples/server/petstore/java-vertx/rx/pom.xml +++ b/samples/server/petstore/java-vertx/rx/pom.xml @@ -3,7 +3,7 @@ 4.0.0 io.swagger - swagger-java-vertx-server + swagger-java-vertx-server-rx 1.0.0-SNAPSHOT jar @@ -15,7 +15,7 @@ 4.12 3.4.1 3.3 - 1.2.0 + 1.4.0 2.3 2.7.4 @@ -28,25 +28,24 @@ test - - io.vertx - vertx-unit - ${vertx.version} - test - + + io.vertx + vertx-unit + ${vertx.version} + test + - com.github.phiz71 - vertx-swagger-router - ${vertx-swagger-router.version} - - - - com.fasterxml.jackson.datatype - jackson-datatype-jsr310 - ${jackson-datatype-jsr310.version} - + com.github.phiz71 + vertx-swagger-router + ${vertx-swagger-router.version} + + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + ${jackson-datatype-jsr310.version} + @@ -88,4 +87,4 @@ - \ No newline at end of file + diff --git a/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/PetApiVerticle.java b/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/PetApiVerticle.java index 6eada5ae461..1b7e08c336e 100644 --- a/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/PetApiVerticle.java +++ b/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/PetApiVerticle.java @@ -28,8 +28,17 @@ public class PetApiVerticle extends AbstractVerticle { final static String UPDATEPETWITHFORM_SERVICE_ID = "updatePetWithForm"; final static String UPLOADFILE_SERVICE_ID = "uploadFile"; - //TODO : create Implementation - PetApi service = new PetApiImpl(); + final PetApi service; + + public PetApiVerticle() { + try { + Class serviceImplClass = getClass().getClassLoader().loadClass("io.swagger.server.api.verticle.PetApiImpl"); + service = (PetApi)serviceImplClass.newInstance(); + } catch (Exception e) { + logUnexpectedError("PetApiVerticle constructor", e); + throw new RuntimeException(e); + } + } @Override public void start() throws Exception { diff --git a/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/StoreApiVerticle.java b/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/StoreApiVerticle.java index b648fef0593..67353e8ac87 100644 --- a/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/StoreApiVerticle.java +++ b/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/StoreApiVerticle.java @@ -22,8 +22,17 @@ public class StoreApiVerticle extends AbstractVerticle { final static String GETORDERBYID_SERVICE_ID = "getOrderById"; final static String PLACEORDER_SERVICE_ID = "placeOrder"; - //TODO : create Implementation - StoreApi service = new StoreApiImpl(); + final StoreApi service; + + public StoreApiVerticle() { + try { + Class serviceImplClass = getClass().getClassLoader().loadClass("io.swagger.server.api.verticle.StoreApiImpl"); + service = (StoreApi)serviceImplClass.newInstance(); + } catch (Exception e) { + logUnexpectedError("StoreApiVerticle constructor", e); + throw new RuntimeException(e); + } + } @Override public void start() throws Exception { diff --git a/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/UserApiVerticle.java b/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/UserApiVerticle.java index 0bdd10a153b..a6d8f69da06 100644 --- a/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/UserApiVerticle.java +++ b/samples/server/petstore/java-vertx/rx/src/main/java/io/swagger/server/api/verticle/UserApiVerticle.java @@ -26,8 +26,17 @@ public class UserApiVerticle extends AbstractVerticle { final static String LOGOUTUSER_SERVICE_ID = "logoutUser"; final static String UPDATEUSER_SERVICE_ID = "updateUser"; - //TODO : create Implementation - UserApi service = new UserApiImpl(); + final UserApi service; + + public UserApiVerticle() { + try { + Class serviceImplClass = getClass().getClassLoader().loadClass("io.swagger.server.api.verticle.UserApiImpl"); + service = (UserApi)serviceImplClass.newInstance(); + } catch (Exception e) { + logUnexpectedError("UserApiVerticle constructor", e); + throw new RuntimeException(e); + } + } @Override public void start() throws Exception {