diff --git a/src/main/java/com/wordnik/swagger/codegen/CodegenParameter.java b/src/main/java/com/wordnik/swagger/codegen/CodegenParameter.java index 1b502442530f..d8894fed3098 100644 --- a/src/main/java/com/wordnik/swagger/codegen/CodegenParameter.java +++ b/src/main/java/com/wordnik/swagger/codegen/CodegenParameter.java @@ -3,4 +3,5 @@ package com.wordnik.swagger.codegen; public class CodegenParameter { public Boolean hasMore = null, isContainer = null, secondaryParam = null; public String baseName, paramName, dataType, collectionFormat, description; + public Boolean isQueryParam, isPathParam, isHeaderParam, isCookieParam, isBodyParam; } \ No newline at end of file diff --git a/src/main/java/com/wordnik/swagger/codegen/DefaultCodegen.java b/src/main/java/com/wordnik/swagger/codegen/DefaultCodegen.java index 91baf03a2572..37ca600ea2da 100644 --- a/src/main/java/com/wordnik/swagger/codegen/DefaultCodegen.java +++ b/src/main/java/com/wordnik/swagger/codegen/DefaultCodegen.java @@ -578,16 +578,26 @@ public class DefaultCodegen { p.paramName = toParamName(bp.getName()); } allParams.add(p); - if(param instanceof QueryParameter) + if(param instanceof QueryParameter) { queryParams.add(p); - else if(param instanceof PathParameter) + p.isQueryParam = new Boolean(true); + } + else if(param instanceof PathParameter) { pathParams.add(p); - else if(param instanceof HeaderParameter) + p.isPathParam = new Boolean(true); + } + else if(param instanceof HeaderParameter) { headerParams.add(p); - else if(param instanceof CookieParameter) + p.isHeaderParam = new Boolean(true); + } + else if(param instanceof CookieParameter) { cookieParams.add(p); - else if(param instanceof BodyParameter) + p.isCookieParam = new Boolean(true); + } + else if(param instanceof BodyParameter) { bodyParams.add(p); + p.isBodyParam = new Boolean(true); + } // else if(param instanceof FormParameter) // formParams.add(p); } diff --git a/src/main/resources/JavaJaxRS/api.mustache b/src/main/resources/JavaJaxRS/api.mustache index c5186394c40e..68c629a6b094 100644 --- a/src/main/resources/JavaJaxRS/api.mustache +++ b/src/main/resources/JavaJaxRS/api.mustache @@ -23,8 +23,9 @@ public class {{classname}} { @ApiResponses(value = { {{#responses}} @ApiResponse(code = {{{code}}}, message = "{{{message}}}"){{#hasMore}}, {{/hasMore}}{{/responses}} }) - - public Response {{nickname}}({{#allParams}}{{>queryParams}}{{>pathParams}}{{>headerParams}}{{>bodyParams}}{{#hasMore}},{{/hasMore}}{{/allParams}}) + + public Response {{nickname}}({{#allParams}}{{>queryParams}}{{>pathParams}}{{>headerParams}}{{>bodyParams}}{{#hasMore}}, + {{/hasMore}}{{/allParams}}) throws NotFoundException { // do some magic! return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); diff --git a/src/main/resources/JavaJaxRS/bodyParams.mustache b/src/main/resources/JavaJaxRS/bodyParams.mustache index a959ec2c8d5b..86546afb9ca4 100644 --- a/src/main/resources/JavaJaxRS/bodyParams.mustache +++ b/src/main/resources/JavaJaxRS/bodyParams.mustache @@ -1 +1 @@ -{{#bodyParams}}@ApiParam(value = "{{{description}}}" {{#required}},required=true{{/required}} {{#allowableValues}}, allowableValues="{{{allowableValues}}}"{{/allowableValues}}{{#defaultValue}}, defaultValue="{{{defaultValue}}}"{{/defaultValue}}) {{{dataType}}} {{paramName}}{{/bodyParams}} \ No newline at end of file +{{#isBodyParam}}@ApiParam(value = "{{{description}}}" {{#required}},required=true{{/required}} {{#allowableValues}}, allowableValues="{{{allowableValues}}}"{{/allowableValues}}{{#defaultValue}}, defaultValue="{{{defaultValue}}}"{{/defaultValue}}) {{{dataType}}} {{paramName}}{{/isBodyParam}} \ No newline at end of file diff --git a/src/main/resources/JavaJaxRS/headerParams.mustache b/src/main/resources/JavaJaxRS/headerParams.mustache index f9f5e1326fce..0f88692ad1d4 100644 --- a/src/main/resources/JavaJaxRS/headerParams.mustache +++ b/src/main/resources/JavaJaxRS/headerParams.mustache @@ -1 +1 @@ -{{#headerParams}}@ApiParam(value = "{{{description}}}" {{#required}},required=true{{/required}} {{#allowableValues}}, allowableValues="{{{allowableValues}}}"{{/allowableValues}}{{#defaultValue}}, defaultValue="{{{defaultValue}}}"{{/defaultValue}})@HeaderParam("{{paramName}}") {{{dataType}}} {{paramName}}{{/headerParams}} \ No newline at end of file +{{#isHeaderParam}}@ApiParam(value = "{{{description}}}" {{#required}},required=true{{/required}} {{#allowableValues}}, allowableValues="{{{allowableValues}}}"{{/allowableValues}}{{#defaultValue}}, defaultValue="{{{defaultValue}}}"{{/defaultValue}})@HeaderParam("{{paramName}}") {{{dataType}}} {{paramName}}{{/isHeaderParam}} \ No newline at end of file diff --git a/src/main/resources/JavaJaxRS/pathParams.mustache b/src/main/resources/JavaJaxRS/pathParams.mustache index 05923c124353..1f1b30887a40 100644 --- a/src/main/resources/JavaJaxRS/pathParams.mustache +++ b/src/main/resources/JavaJaxRS/pathParams.mustache @@ -1 +1 @@ -{{#pathParams}}@ApiParam(value = "{{{description}}}"{{#required}},required=true{{/required}}{{#allowableValues}}, allowableValues="{{{allowableValues}}}"{{/allowableValues}} {{#defaultValue}}, defaultValue="{{{defaultValue}}}"{{/defaultValue}}) @PathParam("{{paramName}}") {{{dataType}}} {{paramName}}{{/pathParams}} \ No newline at end of file +{{#isPathParam}}@ApiParam(value = "{{{description}}}"{{#required}},required=true{{/required}}{{#allowableValues}}, allowableValues="{{{allowableValues}}}"{{/allowableValues}} {{#defaultValue}}, defaultValue="{{{defaultValue}}}"{{/defaultValue}}) @PathParam("{{paramName}}") {{{dataType}}} {{paramName}}{{/isPathParam}} \ No newline at end of file diff --git a/src/main/resources/JavaJaxRS/queryParams.mustache b/src/main/resources/JavaJaxRS/queryParams.mustache index dbe3ed1c3776..b9e80e5a7e75 100644 --- a/src/main/resources/JavaJaxRS/queryParams.mustache +++ b/src/main/resources/JavaJaxRS/queryParams.mustache @@ -1 +1 @@ -{{#queryParams}}@ApiParam(value = "{{{description}}}"{{#required}},required=true{{newline}}{{/required}}{{#allowableValues}}, allowableValues="{{{allowableValues}}}"{{newline}}{{/allowableValues}}{{#defaultValue}}, defaultValue="{{{defaultValue}}}"{{newline}}{{/defaultValue}}) @QueryParam("{{paramName}}") {{{dataType}}} {{paramName}}{{/queryParams}} \ No newline at end of file +{{#isQueryParam}}@ApiParam(value = "{{{description}}}"{{#required}},required=true{{/required}}{{#allowableValues}}, allowableValues="{{{allowableValues}}}"{{/allowableValues}}{{#defaultValue}}, defaultValue="{{{defaultValue}}}"{{/defaultValue}}) @QueryParam("{{paramName}}") {{{dataType}}} {{paramName}}{{/isQueryParam}} \ No newline at end of file