From e22d079bb0aa7dcbd5720eabf0d1acf041fa73de Mon Sep 17 00:00:00 2001 From: martin-mfg <2026226+martin-mfg@users.noreply.github.com> Date: Sun, 4 May 2025 18:49:01 +0200 Subject: [PATCH] ensure correct value for hasParams (#21209) * turn hasParams into getter * restore hasRequiredParams --- .../openapitools/codegen/CodegenOperation.java | 15 +++++++++++---- .../org/openapitools/codegen/DefaultCodegen.java | 4 ---- .../codegen/languages/AbstractJavaCodegen.java | 1 - .../codegen/languages/ElixirClientCodegen.java | 1 - .../codegen/languages/ErlangClientCodegen.java | 1 - .../codegen/languages/ErlangProperCodegen.java | 1 - .../languages/TypeScriptFetchClientCodegen.java | 1 - .../languages/TypeScriptRxjsClientCodegen.java | 1 - 8 files changed, 11 insertions(+), 14 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java index 3c0ff1155ba..87b6c8841fd 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java @@ -24,7 +24,7 @@ import java.util.*; public class CodegenOperation { public final List responseHeaders = new ArrayList(); - public boolean hasAuthMethods, hasConsumes, hasProduces, hasParams, hasOptionalParams, hasRequiredParams, + public boolean hasAuthMethods, hasConsumes, hasProduces, hasOptionalParams, hasRequiredParams, returnTypeIsPrimitive, returnSimpleType, subresourceOperation, isMap, isArray, isMultipart, isVoid = false, hasVersionHeaders = false, hasVersionQueryParams = false, @@ -81,6 +81,15 @@ public class CodegenOperation { return params != null && !params.isEmpty(); } + /** + * Check if there's at least one parameter + * + * @return true if parameter exists, false otherwise + */ + public boolean getHasParams() { + return nonEmpty(allParams); + } + /** * Check if there's at least one body parameter * @@ -362,7 +371,6 @@ public class CodegenOperation { sb.append(", hasAuthMethods=").append(hasAuthMethods); sb.append(", hasConsumes=").append(hasConsumes); sb.append(", hasProduces=").append(hasProduces); - sb.append(", hasParams=").append(hasParams); sb.append(", hasOptionalParams=").append(hasOptionalParams); sb.append(", hasRequiredParams=").append(hasRequiredParams); sb.append(", returnTypeIsPrimitive=").append(returnTypeIsPrimitive); @@ -445,7 +453,6 @@ public class CodegenOperation { return hasAuthMethods == that.hasAuthMethods && hasConsumes == that.hasConsumes && hasProduces == that.hasProduces && - hasParams == that.hasParams && hasOptionalParams == that.hasOptionalParams && hasRequiredParams == that.hasRequiredParams && returnTypeIsPrimitive == that.returnTypeIsPrimitive && @@ -522,7 +529,7 @@ public class CodegenOperation { @Override public int hashCode() { - return Objects.hash(responseHeaders, hasAuthMethods, hasConsumes, hasProduces, hasParams, hasOptionalParams, + return Objects.hash(responseHeaders, hasAuthMethods, hasConsumes, hasProduces, hasOptionalParams, hasRequiredParams, returnTypeIsPrimitive, returnSimpleType, subresourceOperation, isMap, isArray, isMultipart, isVoid, isResponseBinary, isResponseFile, isResponseOptional, hasReference, hasDefaultResponse, hasOnlyDefaultResponse, isRestfulIndex, isRestfulShow, isRestfulCreate, isRestfulUpdate, isRestfulDestroy, diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index 97a047e82ff..5d3061134ca 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -4834,9 +4834,6 @@ public class DefaultCodegen implements CodegenConfig { // legacy support op.nickname = op.operationId; - if (op.allParams.size() > 0) { - op.hasParams = true; - } op.hasRequiredParams = op.requiredParams.size() > 0; // check if the operation has only a single parameter @@ -8678,6 +8675,5 @@ public class DefaultCodegen implements CodegenConfig { operation.allParams.add(p); } } - operation.hasParams = !operation.allParams.isEmpty(); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java index f339e332c93..8a624b0bbf8 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java @@ -2386,7 +2386,6 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code operation.allParams.add(p); } } - operation.hasParams = !operation.allParams.isEmpty(); } private boolean shouldBeImplicitHeader(CodegenParameter parameter) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java index 8842eb33031..eaae3ab643b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java @@ -712,7 +712,6 @@ public class ElixirClientCodegen extends DefaultCodegen { this.hasAuthMethods = o.hasAuthMethods; this.hasConsumes = o.hasConsumes; this.hasProduces = o.hasProduces; - this.hasParams = o.hasParams; this.hasOptionalParams = o.hasOptionalParams; this.returnTypeIsPrimitive = o.returnTypeIsPrimitive; this.returnSimpleType = o.returnSimpleType; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangClientCodegen.java index c294665e310..4149454422b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangClientCodegen.java @@ -417,7 +417,6 @@ public class ErlangClientCodegen extends DefaultCodegen implements CodegenConfig this.hasAuthMethods = o.hasAuthMethods; this.hasConsumes = o.hasConsumes; this.hasProduces = o.hasProduces; - this.hasParams = o.hasParams; this.hasOptionalParams = o.hasOptionalParams; this.returnTypeIsPrimitive = o.returnTypeIsPrimitive; this.returnSimpleType = o.returnSimpleType; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java index 80d9f7667b1..52166375da5 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java @@ -507,7 +507,6 @@ public class ErlangProperCodegen extends DefaultCodegen implements CodegenConfig this.hasAuthMethods = o.hasAuthMethods; this.hasConsumes = o.hasConsumes; this.hasProduces = o.hasProduces; - this.hasParams = o.hasParams; this.hasOptionalParams = o.hasOptionalParams; this.returnTypeIsPrimitive = o.returnTypeIsPrimitive; this.returnSimpleType = o.returnSimpleType; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java index 0d3668e6703..50d84e6b0cb 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java @@ -1379,7 +1379,6 @@ public class TypeScriptFetchClientCodegen extends AbstractTypeScriptClientCodege this.hasAuthMethods = o.hasAuthMethods; this.hasConsumes = o.hasConsumes; this.hasProduces = o.hasProduces; - this.hasParams = o.hasParams; this.hasOptionalParams = o.hasOptionalParams; this.hasRequiredParams = o.hasRequiredParams; this.returnTypeIsPrimitive = o.returnTypeIsPrimitive; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptRxjsClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptRxjsClientCodegen.java index b06ca5e10ca..037738bcae4 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptRxjsClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptRxjsClientCodegen.java @@ -348,7 +348,6 @@ public class TypeScriptRxjsClientCodegen extends AbstractTypeScriptClientCodegen this.hasAuthMethods = o.hasAuthMethods; this.hasConsumes = o.hasConsumes; this.hasProduces = o.hasProduces; - this.hasParams = o.hasParams; this.hasOptionalParams = o.hasOptionalParams; this.hasRequiredParams = o.hasRequiredParams; this.returnTypeIsPrimitive = o.returnTypeIsPrimitive;