From 69e72203aeca023cb2f3bd392d3c080af6e2a0fe Mon Sep 17 00:00:00 2001 From: Sergey Vladimirov Date: Thu, 11 Jan 2024 11:37:16 +0100 Subject: [PATCH] Fix flattenPath() in InlineModelResolver: use List instead of Map (#17579) * Fix flattenPath() in InlineModelResolver: use List instead of Map Fix for https://github.com/OpenAPITools/openapi-generator/issues/17578 * Update InlineModelResolver.java --- .../java/org/openapitools/codegen/InlineModelResolver.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/InlineModelResolver.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/InlineModelResolver.java index 45c883722b7..91cfe4f3482 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/InlineModelResolver.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/InlineModelResolver.java @@ -120,7 +120,7 @@ public class InlineModelResolver { for (Map.Entry pathsEntry : paths.entrySet()) { PathItem path = pathsEntry.getValue(); - Map operationsMap = new LinkedHashMap<>(path.readOperationsMap()); + List> toFlatten = new ArrayList<>(path.readOperationsMap().entrySet()); // use path name (e.g. /foo/bar) and HTTP verb to come up with a name // in case operationId is not defined later in other methods @@ -135,13 +135,13 @@ public class InlineModelResolver { Callback callback = callbackEntry.getValue(); for (Map.Entry pathItemEntry : callback.entrySet()) { PathItem pathItem = pathItemEntry.getValue(); - operationsMap.putAll(pathItem.readOperationsMap()); + toFlatten.addAll(pathItem.readOperationsMap().entrySet()); } } } } - for (Map.Entry operationEntry : operationsMap.entrySet()) { + for (Map.Entry operationEntry : toFlatten) { Operation operation = operationEntry.getValue(); String inlineSchemaName = this.getInlineSchemaName(operationEntry.getKey(), pathname); flattenRequestBody(inlineSchemaName, operation);