Skip to content

Commit

Permalink
refactor java-vertx-web parameters and bugfix on non primitive parame…
Browse files Browse the repository at this point in the history
…ter (#4353)
  • Loading branch information
lwlee2608 authored and wing328 committed Nov 3, 2019
1 parent f77b5da commit 3f72f8d
Show file tree
Hide file tree
Showing 9 changed files with 79 additions and 27 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,32 +39,7 @@ public class {{classname}}Handler {
HttpServerResponse response = routingContext.response();
{{#returnType}}Single{{/returnType}}{{^returnType}}Completable{{/returnType}}.defer( () -> {
{{#allParams}}
{{^isBodyParam}}
{{^isListContainer}}
{{#isHeaderParam}}
{{{dataType}}} {{paramName}} = ParameterCast.to{{dataType}}(routingContext.request().getHeader("{{baseName}}"));
{{/isHeaderParam}}
{{#isPathParam}}
{{{dataType}}} {{paramName}} = ParameterCast.to{{dataType}}(routingContext.pathParams().get("{{baseName}}"));
{{/isPathParam}}
{{#isQueryParam}}
{{{dataType}}} {{paramName}} = ParameterCast.to{{dataType}}(routingContext.queryParams().get("{{baseName}}"));
{{/isQueryParam}}
{{#isFormParam}}
{{^isFile}}
{{{dataType}}} {{paramName}} = ParameterCast.to{{dataType}}(routingContext.request().getFormAttribute("{{baseName}}"));
{{/isFile}}
{{#isFile}}
{{{dataType}}} {{paramName}} = routingContext.fileUploads().iterator().next();
{{/isFile}}
{{/isFormParam}}
{{/isListContainer}}
{{#isListContainer}}
{{{dataType}}} {{paramName}} = routingContext.request().params().getAll("{{baseName}}");
{{/isListContainer}}
{{/isBodyParam}}
{{/allParams}}
{{#allParams}}{{^isBodyParam}}{{>headerParams}}{{>pathParams}}{{>queryParams}}{{>formParams}}{{/isBodyParam}}{{/allParams}}
{{#allParams}}
{{#isBodyParam}}
String jsonString = routingContext.getBodyAsString();
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{{#isFormParam}}
{{^isListContainer}}
{{^isFile}}
{{#isModel}}
{{{dataType}}} {{paramName}} = ParameterCast.toObject(routingContext.request().getFormAttribute("{{baseName}}"), {{dataType}}.class);
{{/isModel}}
{{^isModel}}
{{{dataType}}} {{paramName}} = ParameterCast.to{{dataType}}(routingContext.request().getFormAttribute("{{baseName}}"));
{{/isModel}}
{{/isFile}}
{{#isFile}}
{{{dataType}}} {{paramName}} = routingContext.fileUploads().iterator().next();
{{/isFile}}
{{/isListContainer}}
{{#isListContainer}}
{{{dataType}}} {{paramName}} = routingContext.request().params().getAll("{{baseName}}");
{{/isListContainer}}
{{/isFormParam}}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{{#isHeaderParam}}
{{^isListContainer}}
{{#isModel}}
{{{dataType}}} {{paramName}} = ParameterCast.toObject(routingContext.request().getHeader("{{baseName}}"), {{dataType}}.class);
{{/isModel}}
{{^isModel}}
{{{dataType}}} {{paramName}} = ParameterCast.to{{dataType}}(routingContext.request().getHeader("{{baseName}}"));
{{/isModel}}
{{/isListContainer}}
{{#isListContainer}}
{{{dataType}}} {{paramName}} = routingContext.request().params().getAll("{{baseName}}");
{{/isListContainer}}
{{/isHeaderParam}}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{{#isPathParam}}
{{^isListContainer}}
{{#isModel}}
{{{dataType}}} {{paramName}} = ParameterCast.toObject(routingContext.pathParams().get("{{baseName}}"), {{dataType}}.class);
{{/isModel}}
{{^isModel}}
{{{dataType}}} {{paramName}} = ParameterCast.to{{dataType}}(routingContext.pathParams().get("{{baseName}}"));
{{/isModel}}
{{/isListContainer}}
{{#isListContainer}}
{{{dataType}}} {{paramName}} = routingContext.request().params().getAll("{{baseName}}");
{{/isListContainer}}
{{/isPathParam}}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{{#isQueryParam}}
{{^isListContainer}}
{{#isModel}}
{{{dataType}}} {{paramName}} = ParameterCast.toObject(routingContext.queryParams().get("{{baseName}}"), {{dataType}}.class);
{{/isModel}}
{{^isModel}}
{{{dataType}}} {{paramName}} = ParameterCast.to{{dataType}}(routingContext.queryParams().get("{{baseName}}"));
{{/isModel}}
{{/isListContainer}}
{{#isListContainer}}
{{{dataType}}} {{paramName}} = routingContext.request().params().getAll("{{baseName}}");
{{/isListContainer}}
{{/isQueryParam}}
Original file line number Diff line number Diff line change
@@ -1 +1 @@
4.2.0-SNAPSHOT
4.2.1-SNAPSHOT
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ private void addPet(RoutingContext routingContext) {
HttpServerResponse response = routingContext.response();

Single.defer( () -> {

String jsonString = routingContext.getBodyAsString();
Pet pet = jsonString == null ? null : Json.decodeValue(jsonString, new TypeReference<Pet>(){});
logger.info("Parameter pet is {}", pet);
Expand Down Expand Up @@ -68,6 +69,7 @@ private void deletePet(RoutingContext routingContext) {
Single.defer( () -> {
Long petId = ParameterCast.toLong(routingContext.pathParams().get("petId"));
String apiKey = ParameterCast.toString(routingContext.request().getHeader("api_key"));

logger.info("Parameter petId is {}", petId);
logger.info("Parameter apiKey is {}", apiKey);
return apiImpl.deletePet(petId, apiKey);
Expand All @@ -93,6 +95,7 @@ private void findPetsByStatus(RoutingContext routingContext) {

Single.defer( () -> {
List<String> status = routingContext.request().params().getAll("status");

logger.info("Parameter status is {}", status);
return apiImpl.findPetsByStatus(status);
})
Expand All @@ -117,6 +120,7 @@ private void findPetsByTags(RoutingContext routingContext) {

Single.defer( () -> {
List<String> tags = routingContext.request().params().getAll("tags");

logger.info("Parameter tags is {}", tags);
return apiImpl.findPetsByTags(tags);
})
Expand All @@ -141,6 +145,7 @@ private void getPetById(RoutingContext routingContext) {

Single.defer( () -> {
Long petId = ParameterCast.toLong(routingContext.pathParams().get("petId"));

logger.info("Parameter petId is {}", petId);
return apiImpl.getPetById(petId);
})
Expand All @@ -164,6 +169,7 @@ private void updatePet(RoutingContext routingContext) {
HttpServerResponse response = routingContext.response();

Single.defer( () -> {

String jsonString = routingContext.getBodyAsString();
Pet pet = jsonString == null ? null : Json.decodeValue(jsonString, new TypeReference<Pet>(){});
logger.info("Parameter pet is {}", pet);
Expand Down Expand Up @@ -192,6 +198,7 @@ private void updatePetWithForm(RoutingContext routingContext) {
Long petId = ParameterCast.toLong(routingContext.pathParams().get("petId"));
String name = ParameterCast.toString(routingContext.request().getFormAttribute("name"));
String status = ParameterCast.toString(routingContext.request().getFormAttribute("status"));

logger.info("Parameter petId is {}", petId);
logger.info("Parameter name is {}", name);
logger.info("Parameter status is {}", status);
Expand Down Expand Up @@ -220,6 +227,7 @@ private void uploadFile(RoutingContext routingContext) {
Long petId = ParameterCast.toLong(routingContext.pathParams().get("petId"));
String additionalMetadata = ParameterCast.toString(routingContext.request().getFormAttribute("additionalMetadata"));
FileUpload file = routingContext.fileUploads().iterator().next();

logger.info("Parameter petId is {}", petId);
logger.info("Parameter additionalMetadata is {}", additionalMetadata);
logger.info("Parameter file is {}", file);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ private void deleteOrder(RoutingContext routingContext) {

Single.defer( () -> {
String orderId = ParameterCast.toString(routingContext.pathParams().get("orderId"));

logger.info("Parameter orderId is {}", orderId);
return apiImpl.deleteOrder(orderId);
})
Expand All @@ -59,6 +60,7 @@ private void getInventory(RoutingContext routingContext) {
HttpServerResponse response = routingContext.response();

Single.defer( () -> {

return apiImpl.getInventory();
})
.subscribe(
Expand All @@ -82,6 +84,7 @@ private void getOrderById(RoutingContext routingContext) {

Single.defer( () -> {
Long orderId = ParameterCast.toLong(routingContext.pathParams().get("orderId"));

logger.info("Parameter orderId is {}", orderId);
return apiImpl.getOrderById(orderId);
})
Expand All @@ -105,6 +108,7 @@ private void placeOrder(RoutingContext routingContext) {
HttpServerResponse response = routingContext.response();

Single.defer( () -> {

String jsonString = routingContext.getBodyAsString();
Order order = jsonString == null ? null : Json.decodeValue(jsonString, new TypeReference<Order>(){});
logger.info("Parameter order is {}", order);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ private void createUser(RoutingContext routingContext) {
HttpServerResponse response = routingContext.response();

Single.defer( () -> {

String jsonString = routingContext.getBodyAsString();
User user = jsonString == null ? null : Json.decodeValue(jsonString, new TypeReference<User>(){});
logger.info("Parameter user is {}", user);
Expand All @@ -64,6 +65,7 @@ private void createUsersWithArrayInput(RoutingContext routingContext) {
HttpServerResponse response = routingContext.response();

Single.defer( () -> {

String jsonString = routingContext.getBodyAsString();
List<User> user = jsonString == null ? null : Json.decodeValue(jsonString, new TypeReference<List<User>>(){});
logger.info("Parameter user is {}", user);
Expand All @@ -89,6 +91,7 @@ private void createUsersWithListInput(RoutingContext routingContext) {
HttpServerResponse response = routingContext.response();

Single.defer( () -> {

String jsonString = routingContext.getBodyAsString();
List<User> user = jsonString == null ? null : Json.decodeValue(jsonString, new TypeReference<List<User>>(){});
logger.info("Parameter user is {}", user);
Expand All @@ -115,6 +118,7 @@ private void deleteUser(RoutingContext routingContext) {

Single.defer( () -> {
String username = ParameterCast.toString(routingContext.pathParams().get("username"));

logger.info("Parameter username is {}", username);
return apiImpl.deleteUser(username);
})
Expand All @@ -139,6 +143,7 @@ private void getUserByName(RoutingContext routingContext) {

Single.defer( () -> {
String username = ParameterCast.toString(routingContext.pathParams().get("username"));

logger.info("Parameter username is {}", username);
return apiImpl.getUserByName(username);
})
Expand All @@ -164,6 +169,7 @@ private void loginUser(RoutingContext routingContext) {
Single.defer( () -> {
String username = ParameterCast.toString(routingContext.queryParams().get("username"));
String password = ParameterCast.toString(routingContext.queryParams().get("password"));

logger.info("Parameter username is {}", username);
logger.info("Parameter password is {}", password);
return apiImpl.loginUser(username, password);
Expand All @@ -188,6 +194,7 @@ private void logoutUser(RoutingContext routingContext) {
HttpServerResponse response = routingContext.response();

Single.defer( () -> {

return apiImpl.logoutUser();
})
.subscribe(
Expand All @@ -211,6 +218,7 @@ private void updateUser(RoutingContext routingContext) {

Single.defer( () -> {
String username = ParameterCast.toString(routingContext.pathParams().get("username"));

String jsonString = routingContext.getBodyAsString();
User user = jsonString == null ? null : Json.decodeValue(jsonString, new TypeReference<User>(){});
logger.info("Parameter username is {}", username);
Expand Down

0 comments on commit 3f72f8d

Please sign in to comment.