Skip to content

Commit

Permalink
[Java][native] Fix: empty deepObject can produce invalid query [fix #…
Browse files Browse the repository at this point in the history
…18736] (#18737)

* fix empty query parameter string

* update samples
  • Loading branch information
marcel-huber-ptv authored May 26, 2024
1 parent 77365c3 commit 728abaf
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,10 @@ public class {{classname}} {
}
{{/isArray}}
{{^isArray}}
localVarQueryStringJoiner.add({{paramName}}.toUrlQueryString("{{baseName}}"));
String queryString = {{paramName}}.toUrlQueryString("{{baseName}}");
if (!queryString.isBlank()) {
localVarQueryStringJoiner.add(queryString);
}
{{/isArray}}
}
{{/isDeepObject}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,6 @@ public void deepObject() throws IOException {

assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/api/DefaultApi.java"),
"options.toUrlQueryString(\"options\")",
"inputOptions.toUrlQueryString(\"inputOptions\"))");
"inputOptions.toUrlQueryString(\"inputOptions\")");
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -453,7 +453,10 @@ private HttpRequest.Builder testQueryStyleDeepObjectExplodeTrueObjectRequestBuil
String localVarQueryParameterBaseName;
localVarQueryParameterBaseName = "query_object";
if (queryObject != null) {
localVarQueryStringJoiner.add(queryObject.toUrlQueryString("query_object"));
String queryString = queryObject.toUrlQueryString("query_object");
if (!queryString.isBlank()) {
localVarQueryStringJoiner.add(queryString);
}
}

if (!localVarQueryParams.isEmpty() || localVarQueryStringJoiner.length() != 0) {
Expand Down Expand Up @@ -546,7 +549,10 @@ private HttpRequest.Builder testQueryStyleDeepObjectExplodeTrueObjectAllOfReques
String localVarQueryParameterBaseName;
localVarQueryParameterBaseName = "query_object";
if (queryObject != null) {
localVarQueryStringJoiner.add(queryObject.toUrlQueryString("query_object"));
String queryString = queryObject.toUrlQueryString("query_object");
if (!queryString.isBlank()) {
localVarQueryStringJoiner.add(queryString);
}
}

if (!localVarQueryParams.isEmpty() || localVarQueryStringJoiner.length() != 0) {
Expand Down

0 comments on commit 728abaf

Please sign in to comment.