Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ public class {{classname}} {
* {{summary}}
* {{notes}}
{{#responses}} * <p><b>{{code}}</b>{{#message}} - {{.}}{{/message}}
{{/responses}}{{#allParams}} * @param {{paramName}} {{description}}{{^description}}The {{paramName}} parameter{{/description}}
{{/responses}}{{#allParams}} * @param __{{paramName}} {{description}}{{^description}}The {{paramName}} parameter{{/description}}
{{/allParams}}{{#returnType}} * @return {{.}}
{{/returnType}} * @throws RestClientResponseException if an error occurs while attempting to invoke the API
{{#externalDocs}}
Expand All @@ -83,12 +83,12 @@ public class {{classname}} {
{{#isDeprecated}}
@Deprecated
{{/isDeprecated}}
private ResponseSpec {{operationId}}RequestCreation({{#allParams}}{{#isFile}}{{#useAbstractionForFiles}}{{#collectionFormat}}java.util.Collection<org.springframework.core.io.Resource>{{/collectionFormat}}{{^collectionFormat}}org.springframework.core.io.Resource{{/collectionFormat}}{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}{{>nullableArgument}}{{/useAbstractionForFiles}}{{/isFile}}{{^isFile}}{{>nullableArgument}}{{/isFile}} {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) throws RestClientResponseException {
Object postBody = {{#bodyParam}}{{paramName}}{{/bodyParam}}{{^bodyParam}}null{{/bodyParam}};
private ResponseSpec {{operationId}}RequestCreation({{#allParams}}{{#isFile}}{{#useAbstractionForFiles}}{{#collectionFormat}}java.util.Collection<org.springframework.core.io.Resource>{{/collectionFormat}}{{^collectionFormat}}org.springframework.core.io.Resource{{/collectionFormat}}{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}{{>nullableArgument}}{{/useAbstractionForFiles}}{{/isFile}}{{^isFile}}{{>nullableArgument}}{{/isFile}} __{{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) throws RestClientResponseException {
Object postBody = {{#bodyParam}}__{{paramName}}{{/bodyParam}}{{^bodyParam}}null{{/bodyParam}};
{{#allParams}}
{{#required}}
// verify the required parameter '{{paramName}}' is set
if ({{paramName}} == null) {
if (__{{paramName}} == null) {
throw new RestClientResponseException("Missing the required parameter '{{paramName}}' when calling {{operationId}}", HttpStatus.BAD_REQUEST.value(), HttpStatus.BAD_REQUEST.getReasonPhrase(), null, null, null);
}
{{/required}}
Expand All @@ -98,7 +98,7 @@ public class {{classname}} {
{{#hasPathParams}}

{{#pathParams}}
pathParams.put("{{baseName}}", {{#collectionFormat}}apiClient.collectionPathParameterToString(ApiClient.CollectionFormat.valueOf("csv".toUpperCase()), {{/collectionFormat}}{{{paramName}}}{{#collectionFormat}}){{/collectionFormat}});
pathParams.put("{{baseName}}", {{#collectionFormat}}apiClient.collectionPathParameterToString(ApiClient.CollectionFormat.valueOf("csv".toUpperCase()), {{/collectionFormat}}__{{{paramName}}}{{#collectionFormat}}){{/collectionFormat}});
{{/pathParams}}
{{/hasPathParams}}

Expand All @@ -110,46 +110,46 @@ public class {{classname}} {

{{#queryParams}}
{{#queryIsJsonMimeType}}
queryParams.putAll(apiClient.parameterToMultiValueMapJson({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", {{paramName}}));
queryParams.putAll(apiClient.parameterToMultiValueMapJson({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", __{{paramName}}));
{{/queryIsJsonMimeType}}
{{^queryIsJsonMimeType}}
{{#isExplode}}
{{#hasVars}}
if ({{paramName}} != null) {
if (__{{paramName}} != null) {
{{#vars}}
queryParams.putAll(apiClient.parameterToMultiValueMap({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", {{paramName}}.{{getter}}()));
queryParams.putAll(apiClient.parameterToMultiValueMap({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", __{{paramName}}.{{getter}}()));
{{/vars}}
}
{{/hasVars}}
{{^hasVars}}
queryParams.putAll(apiClient.parameterToMultiValueMap({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", {{paramName}}));
queryParams.putAll(apiClient.parameterToMultiValueMap({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", __{{paramName}}));
{{/hasVars}}
{{/isExplode}}
{{^isExplode}}
queryParams.putAll(apiClient.parameterToMultiValueMap({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", {{paramName}}));
queryParams.putAll(apiClient.parameterToMultiValueMap({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", __{{paramName}}));
{{/isExplode}}
{{/queryIsJsonMimeType}}
{{/queryParams}}
{{/hasQueryParams}}
{{#hasHeaderParams}}

{{#headerParams}}
if ({{paramName}} != null)
headerParams.add("{{baseName}}", apiClient.parameterToString({{paramName}}));{{^-last}}
if (__{{paramName}} != null)
headerParams.add("{{baseName}}", apiClient.parameterToString(__{{paramName}}));{{^-last}}
{{/-last}}
{{/headerParams}}
{{/hasHeaderParams}}
{{#hasCookieParams}}

{{#cookieParams}}
cookieParams.putAll(apiClient.parameterToMultiValueMap({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", {{paramName}}));
cookieParams.putAll(apiClient.parameterToMultiValueMap({{#collectionFormat}}ApiClient.CollectionFormat.valueOf("{{{.}}}".toUpperCase(Locale.ROOT)){{/collectionFormat}}{{^collectionFormat}}null{{/collectionFormat}}, "{{baseName}}", __{{paramName}}));
{{/cookieParams}}
{{/hasCookieParams}}
{{#hasFormParams}}

{{#formParams}}
if ({{paramName}} != null)
formParams.add{{#collectionFormat}}All{{/collectionFormat}}("{{baseName}}", {{#isFile}}{{^collectionFormat}}{{#useAbstractionForFiles}}{{paramName}}{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}new FileSystemResource({{paramName}}){{/useAbstractionForFiles}}{{/collectionFormat}}{{/isFile}}{{#isFile}}{{#collectionFormat}}{{paramName}}.stream(){{^useAbstractionForFiles}}.map(FileSystemResource::new){{/useAbstractionForFiles}}.collect(Collectors.toList()){{/collectionFormat}}{{/isFile}}{{^isFile}}{{paramName}}{{/isFile}});
if (__{{paramName}} != null)
formParams.add{{#collectionFormat}}All{{/collectionFormat}}("{{baseName}}", {{#isFile}}{{^collectionFormat}}{{#useAbstractionForFiles}}__{{paramName}}{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}new FileSystemResource(__{{paramName}}){{/useAbstractionForFiles}}{{/collectionFormat}}{{/isFile}}{{#isFile}}{{#collectionFormat}}__{{paramName}}.stream(){{^useAbstractionForFiles}}.map(FileSystemResource::new){{/useAbstractionForFiles}}.collect(Collectors.toList()){{/collectionFormat}}{{/isFile}}{{^isFile}}__{{paramName}}{{/isFile}});
{{/formParams}}
{{/hasFormParams}}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2734,7 +2734,7 @@ public void testQueryParamsExploded_whenQueryParamIsNull_restclient() {
List<File> files = new DefaultGenerator().opts(configurator.toClientOptInput()).generate();

validateJavaSourceFiles(files);
assertFileContains(output.resolve("src/main/java/xyz/abcdef/api/DepartmentApi.java"), "if (filter != null) {");
assertFileContains(output.resolve("src/main/java/xyz/abcdef/api/DepartmentApi.java"), "if (__filter != null) {");
}

@Test
Expand Down Expand Up @@ -2816,15 +2816,15 @@ public void testRestClientFormMultipart() {
// multiple files
"multipartArray(@jakarta.annotation.Nullable List<File> files)",
"formParams.addAll(\"files\","
+ " files.stream().map(FileSystemResource::new).collect(Collectors.toList()));",
+ " __files.stream().map(FileSystemResource::new).collect(Collectors.toList()));",

// mixed
"multipartMixed(@jakarta.annotation.Nonnull MultipartMixedStatus status, @jakarta.annotation.Nonnull File _file, @jakarta.annotation.Nullable MultipartMixedRequestMarker marker, @jakarta.annotation.Nullable List<MultipartMixedStatus> statusArray)",
"formParams.add(\"file\", new FileSystemResource(_file));",
"formParams.add(\"file\", new FileSystemResource(___file));",

// single file
"multipartSingle(@jakarta.annotation.Nullable File _file)",
"formParams.add(\"file\", new FileSystemResource(_file));"
"formParams.add(\"file\", new FileSystemResource(___file));"
);
}

Expand All @@ -2846,15 +2846,15 @@ public void testRestClientWithUseAbstractionForFiles() {
output.resolve("src/main/java/xyz/abcdef/api/MultipartApi.java"),
// multiple files
"multipartArray(java.util.Collection<org.springframework.core.io.Resource> files)",
"formParams.addAll(\"files\", files.stream().collect(Collectors.toList()));",
"formParams.addAll(\"files\", __files.stream().collect(Collectors.toList()));",

// mixed
"multipartMixed(@jakarta.annotation.Nonnull MultipartMixedStatus status, org.springframework.core.io.Resource _file, @jakarta.annotation.Nullable MultipartMixedRequestMarker marker, @jakarta.annotation.Nullable List<MultipartMixedStatus> statusArray)",
"formParams.add(\"file\", _file);",
"formParams.add(\"file\", ___file);",

// single file
"multipartSingle(org.springframework.core.io.Resource _file)",
"formParams.add(\"file\", _file);"
"formParams.add(\"file\", ___file);"
);
}

Expand Down Expand Up @@ -4244,16 +4244,19 @@ public void queryParameterJsonSerialization(String library) {
.setLibrary(library)
.setInputSpec("src/test/resources/3_0/echo_api.yaml")
.setOutputDir(output.toString().replace("\\", "/"));
final String prefix = library == RESTCLIENT
? "__"
: "";

new DefaultGenerator().opts(configurator.toClientOptInput()).generate();
assertFileContains(
output.resolve("src/main/java/org/openapitools/client/api/QueryApi.java"),
"queryParams.putAll(apiClient.parameterToMultiValueMapJson(null, \"json_serialized_object_ref_string_query\", jsonSerializedObjectRefStringQuery));"
"queryParams.putAll(apiClient.parameterToMultiValueMapJson(null, \"json_serialized_object_ref_string_query\", " + prefix + "jsonSerializedObjectRefStringQuery));"
);
assertFileContains(
output.resolve("src/main/java/org/openapitools/client/api/QueryApi.java"),
"queryParams.putAll(apiClient.parameterToMultiValueMapJson(ApiClient.CollectionFormat" +
".valueOf(\"csv\".toUpperCase(Locale.ROOT)), \"json_serialized_object_array_ref_string_query\", jsonSerializedObjectArrayRefStringQuery));"
".valueOf(\"csv\".toUpperCase(Locale.ROOT)), \"json_serialized_object_array_ref_string_query\", " + prefix + "jsonSerializedObjectArrayRefStringQuery));"
);
}

Expand Down
Loading
Loading