From 4de99949777a30a7f0c0e0d395b288bcab0b7fff Mon Sep 17 00:00:00 2001 From: Bernie Schelberg Date: Tue, 25 Oct 2022 20:35:40 +1000 Subject: [PATCH 01/10] fix #13150 Do not add schema / class name mapping where custom mapping exists --- .../openapitools/codegen/DefaultCodegen.java | 19 +++--- .../codegen/DefaultCodegenTest.java | 5 -- .../java/spring/SpringCodegenTest.java | 38 ++++++++++++ .../codegen/ruby/RubyClientCodegenTest.java | 2 - .../src/test/resources/bugs/issue_13150.yaml | 60 +++++++++++++++++++ 5 files changed, 108 insertions(+), 16 deletions(-) create mode 100644 modules/openapi-generator/src/test/resources/bugs/issue_13150.yaml 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 758ea86e33e0..2c505b00652e 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 @@ -3455,15 +3455,15 @@ protected List getAllOfDescendants(String thisSchemaName, OpenAPI o break; } currentSchemaName = queue.remove(0); - MappedModel mm = new MappedModel(currentSchemaName, toModelName(currentSchemaName)); - descendentSchemas.add(mm); Schema cs = schemas.get(currentSchemaName); Map vendorExtensions = cs.getExtensions(); - if (vendorExtensions != null && !vendorExtensions.isEmpty() && vendorExtensions.containsKey("x-discriminator-value")) { - String xDiscriminatorValue = (String) vendorExtensions.get("x-discriminator-value"); - mm = new MappedModel(xDiscriminatorValue, toModelName(currentSchemaName)); - descendentSchemas.add(mm); - } + String mappingName = + Optional.ofNullable(vendorExtensions) + .map(ve -> ve.get("x-discriminator-value")) + .map(discriminatorValue -> (String) discriminatorValue) + .orElse(currentSchemaName); + MappedModel mm = new MappedModel(mappingName, toModelName(currentSchemaName)); + descendentSchemas.add(mm); } return descendentSchemas; } @@ -3513,10 +3513,11 @@ protected CodegenDiscriminator createDiscriminator(String schemaName, Schema sch // for schemas that allOf inherit from this schema, add those descendants to this discriminator map List otherDescendants = getAllOfDescendants(schemaName, openAPI); for (MappedModel otherDescendant : otherDescendants) { - // add only if the mapping names are not the same + // add only if the mapping names are not the same and the model names are not the same boolean matched = false; for (MappedModel uniqueDescendant : uniqueDescendants) { - if (uniqueDescendant.getMappingName().equals(otherDescendant.getMappingName())) { + if (uniqueDescendant.getMappingName().equals(otherDescendant.getMappingName()) + || (uniqueDescendant.getModelName().equals(otherDescendant.getModelName()))) { matched = true; break; } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java index 107fd4e72c40..515e7f52081a 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java @@ -1101,7 +1101,6 @@ public void testComposedSchemaAllOfDiscriminatorMap() { cm = codegen.fromModel(modelName, sc); hs.clear(); hs.add(new CodegenDiscriminator.MappedModel("b", codegen.toModelName("B"))); - hs.add(new CodegenDiscriminator.MappedModel("B", codegen.toModelName("B"))); hs.add(new CodegenDiscriminator.MappedModel("C", codegen.toModelName("C"))); Assert.assertEquals(cm.getHasDiscriminatorWithNonEmptyMapping(), true); Assert.assertEquals(cm.discriminator.getMappedModels(), hs); @@ -1585,8 +1584,6 @@ public void verifyXDiscriminatorValue() { discriminator.setPropertyBaseName(prop); discriminator.setMapping(null); discriminator.setMappedModels(new HashSet() {{ - add(new CodegenDiscriminator.MappedModel("DailySubObj", "DailySubObj")); - add(new CodegenDiscriminator.MappedModel("SubObj", "SubObj")); add(new CodegenDiscriminator.MappedModel("daily", "DailySubObj")); add(new CodegenDiscriminator.MappedModel("sub-obj", "SubObj")); }}); @@ -1984,8 +1981,6 @@ private void verifyPersonDiscriminator(CodegenDiscriminator discriminator) { test.getMapping().put("c", "Child"); test.getMappedModels().add(new CodegenDiscriminator.MappedModel("a", "Adult")); test.getMappedModels().add(new CodegenDiscriminator.MappedModel("c", "Child")); - test.getMappedModels().add(new CodegenDiscriminator.MappedModel("Adult", "Adult")); - test.getMappedModels().add(new CodegenDiscriminator.MappedModel("Child", "Child")); Assert.assertEquals(discriminator, test); } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java index c5ffa3965816..331c22ed0459 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java @@ -2144,4 +2144,42 @@ private Map generateFromContract(String url, String library, Map mappedModels = new LinkedHashSet(); mappedModels.add(new CodegenDiscriminator.MappedModel("a", "Adult")); mappedModels.add(new CodegenDiscriminator.MappedModel("c", "Child")); - mappedModels.add(new CodegenDiscriminator.MappedModel("Adult", "Adult")); - mappedModels.add(new CodegenDiscriminator.MappedModel("Child", "Child")); Assert.assertEquals(codegenDiscriminator.getMappedModels(), mappedModels); } diff --git a/modules/openapi-generator/src/test/resources/bugs/issue_13150.yaml b/modules/openapi-generator/src/test/resources/bugs/issue_13150.yaml new file mode 100644 index 000000000000..07ee407b37e7 --- /dev/null +++ b/modules/openapi-generator/src/test/resources/bugs/issue_13150.yaml @@ -0,0 +1,60 @@ +openapi: '3.0.0' +info: + version: '1.0.0' + title: 'FooService' +paths: + /parent: + put: + summary: put parent + operationId: putParent + parameters: + - name: name + in: path + required: true + description: Name of the account being updated. + schema: + type: string + requestBody: + description: The updated account definition to save. + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Parent' + responses: + '200': + $ref: '#/components/responses/Parent' +components: + schemas: + Parent: + type: object + description: Defines an account by name. + properties: + name: + type: string + description: The account name. + type: + type: string + description: The account type discriminator. + required: + - name + - type + discriminator: + propertyName: type + mapping: + foo: '#/components/schemas/Foo' + + Foo: + allOf: + - $ref: "#/components/schemas/Parent" + - type: object + properties: + fooType: + type: string + responses: + Parent: + description: The saved account definition. + content: + application/json: + schema: + $ref: '#/components/schemas/Parent' \ No newline at end of file From af687042792474ed3d257f8df62bf757f2df9c61 Mon Sep 17 00:00:00 2001 From: William Cheng Date: Fri, 17 Mar 2023 16:15:38 +0800 Subject: [PATCH 02/10] update test spec --- ...e-with-fake-endpoints-models-for-testing.yaml | 3 +++ .../java/org/openapitools/client/model/Cat.java | 2 ++ .../java/org/openapitools/client/model/Dog.java | 2 ++ .../java/org/openapitools/client/model/Cat.java | 2 ++ .../java/org/openapitools/client/model/Dog.java | 2 ++ .../java/apache-httpclient/api/openapi.yaml | 3 +++ .../org/openapitools/client/model/Animal.java | 4 ++-- .../java/org/openapitools/client/model/Cat.java | 6 ++++++ .../java/org/openapitools/client/model/Dog.java | 6 ++++++ .../client/petstore/java/feign/api/openapi.yaml | 3 +++ .../org/openapitools/client/model/Animal.java | 4 ++-- .../java/org/openapitools/client/model/Cat.java | 6 ++++++ .../java/org/openapitools/client/model/Dog.java | 6 ++++++ .../java/webclient-jakarta/api/openapi.yaml | 3 +++ .../org/openapitools/client/model/Animal.java | 4 ++-- .../java/org/openapitools/client/model/Cat.java | 6 ++++++ .../java/org/openapitools/client/model/Dog.java | 6 ++++++ .../petstore/java/webclient/api/openapi.yaml | 3 +++ .../org/openapitools/client/model/Animal.java | 4 ++-- .../java/org/openapitools/client/model/Cat.java | 6 ++++++ .../java/org/openapitools/client/model/Dog.java | 6 ++++++ .../builds/default-v3.0/models/Animal.ts | 4 ++-- .../lib/src/model/animal.dart | 16 ++++++++-------- .../lib/src/model/cat.dart | 2 ++ .../lib/src/model/dog.dart | 2 ++ .../java/org/openapitools/server/model/Cat.java | 2 ++ .../java/org/openapitools/server/model/Dog.java | 2 ++ .../mp/src/main/resources/META-INF/openapi.yml | 3 +++ .../java/org/openapitools/server/model/Cat.java | 2 ++ .../java/org/openapitools/server/model/Dog.java | 2 ++ .../se/src/main/resources/META-INF/openapi.yml | 3 +++ .../gen/java/org/openapitools/model/Animal.java | 4 ++-- 32 files changed, 109 insertions(+), 20 deletions(-) diff --git a/modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml b/modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml index 6ec5b66e0e65..fe954df8e429 100644 --- a/modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml +++ b/modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml @@ -1484,6 +1484,9 @@ components: type: object discriminator: propertyName: className + mapping: + DOG: '#/components/schemas/Dog' + CAT: '#/components/schemas/Cat' required: - className properties: diff --git a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Cat.java index be9c69545616..d7e6bc70bf91 100644 --- a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Cat.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Dog.java index 069dab8392d5..b4cd5a234a92 100644 --- a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Dog.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Cat.java index be9c69545616..d7e6bc70bf91 100644 --- a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Cat.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Dog.java index 069dab8392d5..b4cd5a234a92 100644 --- a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Dog.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java/apache-httpclient/api/openapi.yaml b/samples/client/petstore/java/apache-httpclient/api/openapi.yaml index 2828944e5542..97b8e4c677a7 100644 --- a/samples/client/petstore/java/apache-httpclient/api/openapi.yaml +++ b/samples/client/petstore/java/apache-httpclient/api/openapi.yaml @@ -1507,6 +1507,9 @@ components: - $ref: '#/components/schemas/Cat_allOf' Animal: discriminator: + mapping: + DOG: '#/components/schemas/Dog' + CAT: '#/components/schemas/Cat' propertyName: className properties: className: diff --git a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Animal.java index 1d37baf0f8c4..356963fb37b9 100644 --- a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Animal.java @@ -45,8 +45,8 @@ ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) @JsonSubTypes({ - @JsonSubTypes.Type(value = Cat.class, name = "Cat"), - @JsonSubTypes.Type(value = Dog.class, name = "Dog"), + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), }) public class Animal { diff --git a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Cat.java index b3ab6517bc0e..eccde8a632a2 100644 --- a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Cat.java @@ -24,6 +24,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import java.io.UnsupportedEncodingException; @@ -42,6 +44,10 @@ allowSetters = true // allows the className to be set during deserialization ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) +@JsonSubTypes({ + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), +}) public class Cat extends Animal { public static final String JSON_PROPERTY_DECLAWED = "declawed"; diff --git a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Dog.java index 055a293ec286..115faf719e83 100644 --- a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Dog.java @@ -24,6 +24,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import java.io.UnsupportedEncodingException; @@ -42,6 +44,10 @@ allowSetters = true // allows the className to be set during deserialization ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) +@JsonSubTypes({ + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), +}) public class Dog extends Animal { public static final String JSON_PROPERTY_BREED = "breed"; diff --git a/samples/client/petstore/java/feign/api/openapi.yaml b/samples/client/petstore/java/feign/api/openapi.yaml index 2828944e5542..97b8e4c677a7 100644 --- a/samples/client/petstore/java/feign/api/openapi.yaml +++ b/samples/client/petstore/java/feign/api/openapi.yaml @@ -1507,6 +1507,9 @@ components: - $ref: '#/components/schemas/Cat_allOf' Animal: discriminator: + mapping: + DOG: '#/components/schemas/Dog' + CAT: '#/components/schemas/Cat' propertyName: className properties: className: diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Animal.java index 31932c6e6815..f1ffa626bd41 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Animal.java @@ -42,8 +42,8 @@ ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) @JsonSubTypes({ - @JsonSubTypes.Type(value = Cat.class, name = "Cat"), - @JsonSubTypes.Type(value = Dog.class, name = "Dog"), + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), }) public class Animal { diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Cat.java index 98b53f1e4fd5..dd048f361099 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Cat.java @@ -24,6 +24,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; @@ -39,6 +41,10 @@ allowSetters = true // allows the className to be set during deserialization ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) +@JsonSubTypes({ + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), +}) public class Cat extends Animal { public static final String JSON_PROPERTY_DECLAWED = "declawed"; diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Dog.java index 5de0e902a040..df5050f1159e 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Dog.java @@ -24,6 +24,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; @@ -39,6 +41,10 @@ allowSetters = true // allows the className to be set during deserialization ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) +@JsonSubTypes({ + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), +}) public class Dog extends Animal { public static final String JSON_PROPERTY_BREED = "breed"; diff --git a/samples/client/petstore/java/webclient-jakarta/api/openapi.yaml b/samples/client/petstore/java/webclient-jakarta/api/openapi.yaml index 2828944e5542..97b8e4c677a7 100644 --- a/samples/client/petstore/java/webclient-jakarta/api/openapi.yaml +++ b/samples/client/petstore/java/webclient-jakarta/api/openapi.yaml @@ -1507,6 +1507,9 @@ components: - $ref: '#/components/schemas/Cat_allOf' Animal: discriminator: + mapping: + DOG: '#/components/schemas/Dog' + CAT: '#/components/schemas/Cat' propertyName: className properties: className: diff --git a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Animal.java index 217f89650372..000a0dc18787 100644 --- a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Animal.java @@ -42,8 +42,8 @@ ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) @JsonSubTypes({ - @JsonSubTypes.Type(value = Cat.class, name = "Cat"), - @JsonSubTypes.Type(value = Dog.class, name = "Dog"), + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), }) public class Animal { diff --git a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Cat.java index 762c68f3b8b4..b727e7fc2910 100644 --- a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Cat.java @@ -24,6 +24,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; @@ -39,6 +41,10 @@ allowSetters = true // allows the className to be set during deserialization ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) +@JsonSubTypes({ + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), +}) public class Cat extends Animal { public static final String JSON_PROPERTY_DECLAWED = "declawed"; diff --git a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Dog.java index e2d0287243f0..508939745e86 100644 --- a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Dog.java @@ -24,6 +24,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; @@ -39,6 +41,10 @@ allowSetters = true // allows the className to be set during deserialization ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) +@JsonSubTypes({ + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), +}) public class Dog extends Animal { public static final String JSON_PROPERTY_BREED = "breed"; diff --git a/samples/client/petstore/java/webclient/api/openapi.yaml b/samples/client/petstore/java/webclient/api/openapi.yaml index 2828944e5542..97b8e4c677a7 100644 --- a/samples/client/petstore/java/webclient/api/openapi.yaml +++ b/samples/client/petstore/java/webclient/api/openapi.yaml @@ -1507,6 +1507,9 @@ components: - $ref: '#/components/schemas/Cat_allOf' Animal: discriminator: + mapping: + DOG: '#/components/schemas/Dog' + CAT: '#/components/schemas/Cat' propertyName: className properties: className: diff --git a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Animal.java index 31932c6e6815..f1ffa626bd41 100644 --- a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Animal.java @@ -42,8 +42,8 @@ ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) @JsonSubTypes({ - @JsonSubTypes.Type(value = Cat.class, name = "Cat"), - @JsonSubTypes.Type(value = Dog.class, name = "Dog"), + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), }) public class Animal { diff --git a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Cat.java index e14f5458acbf..70094f593443 100644 --- a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Cat.java @@ -24,6 +24,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; @@ -39,6 +41,10 @@ allowSetters = true // allows the className to be set during deserialization ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) +@JsonSubTypes({ + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), +}) public class Cat extends Animal { public static final String JSON_PROPERTY_DECLAWED = "declawed"; diff --git a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Dog.java index 5de0e902a040..df5050f1159e 100644 --- a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Dog.java @@ -24,6 +24,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; +import org.openapitools.client.model.Cat; +import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; @@ -39,6 +41,10 @@ allowSetters = true // allows the className to be set during deserialization ) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) +@JsonSubTypes({ + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), +}) public class Dog extends Animal { public static final String JSON_PROPERTY_BREED = "breed"; diff --git a/samples/client/petstore/typescript-fetch/builds/default-v3.0/models/Animal.ts b/samples/client/petstore/typescript-fetch/builds/default-v3.0/models/Animal.ts index 7c611d3f08e9..3aba7c739e46 100644 --- a/samples/client/petstore/typescript-fetch/builds/default-v3.0/models/Animal.ts +++ b/samples/client/petstore/typescript-fetch/builds/default-v3.0/models/Animal.ts @@ -57,10 +57,10 @@ export function AnimalFromJSONTyped(json: any, ignoreDiscriminator: boolean): An return json; } if (!ignoreDiscriminator) { - if (json['className'] === 'Cat') { + if (json['className'] === 'CAT') { return CatFromJSONTyped(json, true); } - if (json['className'] === 'Dog') { + if (json['className'] === 'DOG') { return DogFromJSONTyped(json, true); } } diff --git a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart index 01a52a6a1707..20b3f9f50b71 100644 --- a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart +++ b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart @@ -26,8 +26,8 @@ abstract class Animal { static const String discriminatorFieldName = r'className'; static const Map discriminatorMapping = { - r'Cat': Cat, - r'Dog': Dog, + r'CAT': Cat, + r'DOG': Dog, }; @BuiltValueSerializer(custom: true) @@ -37,10 +37,10 @@ abstract class Animal { extension AnimalDiscriminatorExt on Animal { String? get discriminatorValue { if (this is Cat) { - return r'Cat'; + return r'CAT'; } if (this is Dog) { - return r'Dog'; + return r'DOG'; } return null; } @@ -48,10 +48,10 @@ extension AnimalDiscriminatorExt on Animal { extension AnimalBuilderDiscriminatorExt on AnimalBuilder { String? get discriminatorValue { if (this is CatBuilder) { - return r'Cat'; + return r'CAT'; } if (this is DogBuilder) { - return r'Dog'; + return r'DOG'; } return null; } @@ -108,9 +108,9 @@ class _$AnimalSerializer implements PrimitiveSerializer { final discIndex = serializedList.indexOf(Animal.discriminatorFieldName) + 1; final discValue = serializers.deserialize(serializedList[discIndex], specifiedType: FullType(String)) as String; switch (discValue) { - case r'Cat': + case r'CAT': return serializers.deserialize(serialized, specifiedType: FullType(Cat)) as Cat; - case r'Dog': + case r'DOG': return serializers.deserialize(serialized, specifiedType: FullType(Dog)) as Dog; default: return serializers.deserialize(serialized, specifiedType: FullType($Animal)) as $Animal; diff --git a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/cat.dart b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/cat.dart index 23d19b38b05a..b42db58b3804 100644 --- a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/cat.dart +++ b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/cat.dart @@ -3,6 +3,8 @@ // // ignore_for_file: unused_element +import 'package:openapi/src/model/dog.dart'; +import 'package:openapi/src/model/cat.dart'; import 'package:openapi/src/model/animal.dart'; import 'package:openapi/src/model/cat_all_of.dart'; import 'package:built_value/built_value.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/dog.dart b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/dog.dart index 4d9974f25b1d..a003dfa3d4a8 100644 --- a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/dog.dart +++ b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/dog.dart @@ -3,6 +3,8 @@ // // ignore_for_file: unused_element +import 'package:openapi/src/model/dog.dart'; +import 'package:openapi/src/model/cat.dart'; import 'package:openapi/src/model/dog_all_of.dart'; import 'package:openapi/src/model/animal.dart'; import 'package:built_value/built_value.dart'; diff --git a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Cat.java b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Cat.java index 78534303e0ff..50d915d430f1 100644 --- a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Cat.java +++ b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Cat.java @@ -16,6 +16,8 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.server.model.Animal; +import org.openapitools.server.model.Cat; +import org.openapitools.server.model.Dog; import jakarta.validation.constraints.*; import jakarta.validation.Valid; diff --git a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Dog.java b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Dog.java index e0f8e5a79b42..2808795623a5 100644 --- a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Dog.java +++ b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Dog.java @@ -16,6 +16,8 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.server.model.Animal; +import org.openapitools.server.model.Cat; +import org.openapitools.server.model.Dog; import jakarta.validation.constraints.*; import jakarta.validation.Valid; diff --git a/samples/server/petstore/java-helidon-server/mp/src/main/resources/META-INF/openapi.yml b/samples/server/petstore/java-helidon-server/mp/src/main/resources/META-INF/openapi.yml index 6667e32d34cb..5c0bc517dac5 100644 --- a/samples/server/petstore/java-helidon-server/mp/src/main/resources/META-INF/openapi.yml +++ b/samples/server/petstore/java-helidon-server/mp/src/main/resources/META-INF/openapi.yml @@ -1507,6 +1507,9 @@ components: - $ref: '#/components/schemas/Cat_allOf' Animal: discriminator: + mapping: + DOG: '#/components/schemas/Dog' + CAT: '#/components/schemas/Cat' propertyName: className properties: className: diff --git a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Cat.java b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Cat.java index 663f2a85183a..fcb4901aac11 100644 --- a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Cat.java +++ b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Cat.java @@ -4,6 +4,8 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.server.model.Animal; +import org.openapitools.server.model.Cat; +import org.openapitools.server.model.Dog; diff --git a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Dog.java b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Dog.java index 2c904956ac4c..9f9d5b0317e7 100644 --- a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Dog.java +++ b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Dog.java @@ -4,6 +4,8 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.server.model.Animal; +import org.openapitools.server.model.Cat; +import org.openapitools.server.model.Dog; diff --git a/samples/server/petstore/java-helidon-server/se/src/main/resources/META-INF/openapi.yml b/samples/server/petstore/java-helidon-server/se/src/main/resources/META-INF/openapi.yml index 6667e32d34cb..5c0bc517dac5 100644 --- a/samples/server/petstore/java-helidon-server/se/src/main/resources/META-INF/openapi.yml +++ b/samples/server/petstore/java-helidon-server/se/src/main/resources/META-INF/openapi.yml @@ -1507,6 +1507,9 @@ components: - $ref: '#/components/schemas/Cat_allOf' Animal: discriminator: + mapping: + DOG: '#/components/schemas/Dog' + CAT: '#/components/schemas/Cat' propertyName: className properties: className: diff --git a/samples/server/petstore/jaxrs-jersey/src/gen/java/org/openapitools/model/Animal.java b/samples/server/petstore/jaxrs-jersey/src/gen/java/org/openapitools/model/Animal.java index a5eae51787ce..fe6a3f7e6942 100644 --- a/samples/server/petstore/jaxrs-jersey/src/gen/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/jaxrs-jersey/src/gen/java/org/openapitools/model/Animal.java @@ -34,8 +34,8 @@ }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaJerseyServerCodegen")@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "className", visible = true) @JsonSubTypes({ - @JsonSubTypes.Type(value = Cat.class, name = "Cat"), - @JsonSubTypes.Type(value = Dog.class, name = "Dog"), + @JsonSubTypes.Type(value = Cat.class, name = "CAT"), + @JsonSubTypes.Type(value = Dog.class, name = "DOG"), }) public class Animal { From df827e1e21775970b0f79f8151bcf15c4ebd7071 Mon Sep 17 00:00:00 2001 From: William Cheng Date: Sun, 19 Mar 2023 22:05:25 +0800 Subject: [PATCH 03/10] improve import --- .../java/org/openapitools/codegen/CodegenModel.java | 6 ++++++ .../java/org/openapitools/client/model/Animal.java | 2 -- .../java/org/openapitools/client/model/Cat.java | 2 -- .../java/org/openapitools/client/model/Dog.java | 2 -- .../java/org/openapitools/client/model/Animal.java | 2 -- .../java/org/openapitools/client/model/Cat.java | 2 -- .../java/org/openapitools/client/model/Dog.java | 2 -- .../java/org/openapitools/client/model/Animal.java | 2 -- .../java/org/openapitools/client/model/Cat.java | 2 -- .../java/org/openapitools/client/model/Dog.java | 2 -- .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 2 -- .../java/org/openapitools/client/model/Cat.java | 2 -- .../java/org/openapitools/client/model/Dog.java | 2 -- .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 2 -- .../client/model/GrandparentAnimal.java | 2 -- .../org/openapitools/client/model/ParentPet.java | 1 - .../java/org/openapitools/client/model/Animal.java | 2 -- .../client/model/GrandparentAnimal.java | 2 -- .../org/openapitools/client/model/ParentPet.java | 1 - .../java/org/openapitools/client/model/Animal.java | 2 -- .../client/model/GrandparentAnimal.java | 2 -- .../org/openapitools/client/model/ParentPet.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 2 -- .../client/model/GrandparentAnimal.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 3 --- .../java/org/openapitools/client/model/Cat.java | 1 - .../java/org/openapitools/client/model/Animal.java | 2 -- .../java/org/openapitools/client/model/Cat.java | 2 -- .../java/org/openapitools/client/model/Dog.java | 2 -- .../java/org/openapitools/client/model/Animal.java | 2 -- .../java/org/openapitools/client/model/Cat.java | 2 -- .../java/org/openapitools/client/model/Dog.java | 2 -- .../python-prior/petstore_api/model/animal.py | 9 --------- .../petstore_api/model/grandparent_animal.py | 13 ------------- .../python-prior/petstore_api/model/parent_pet.py | 6 ------ .../petstore_api/model/animal.py | 8 -------- .../petstore_api/model/grandparent_animal.py | 12 ------------ .../petstore_api/model/parent_pet.py | 6 ------ .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/AnimalDto.java | 3 --- .../main/java/org/openapitools/model/CatDto.java | 1 - .../lib/src/model/entity.dart | 6 ------ .../lib/src/model/entity_ref.dart | 2 -- .../lib/src/model/pizza.dart | 1 - .../lib/src/model/animal.dart | 2 -- .../petstore_client_lib_fake/lib/src/model/cat.dart | 2 -- .../petstore_client_lib_fake/lib/src/model/dog.dart | 2 -- .../java/org/openapitools/client/model/Parent.java | 2 -- .../java/org/openapitools/client/model/Animal.java | 2 -- .../client/model/GrandparentAnimal.java | 2 -- .../org/openapitools/client/model/ParentPet.java | 1 - .../python-prior/petstore_api/model/animal.py | 9 --------- .../petstore_api/model/grandparent_animal.py | 9 --------- .../python-prior/petstore_api/model/parent_pet.py | 2 -- .../petstore/python/petstore_api/model/animal.py | 3 --- .../petstore/python/petstore_api/model/animal.pyi | 3 --- .../python/petstore_api/model/grandparent_animal.py | 3 --- .../petstore_api/model/grandparent_animal.pyi | 3 --- .../python/petstore_api/model/parent_pet.py | 1 - .../python/petstore_api/model/parent_pet.pyi | 1 - .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/Entity.java | 6 ------ .../main/java/org/openapitools/model/EntityRef.java | 2 -- .../src/main/java/org/openapitools/model/Pizza.java | 1 - .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../java/org/openapitools/server/model/Animal.java | 2 -- .../java/org/openapitools/server/model/Cat.java | 2 -- .../java/org/openapitools/server/model/Dog.java | 2 -- .../java/org/openapitools/server/model/Animal.java | 2 -- .../java/org/openapitools/server/model/Cat.java | 2 -- .../java/org/openapitools/server/model/Dog.java | 2 -- .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../main/java/org/openapitools/model/Animal.java | 2 -- .../main/java/org/openapitools/model/Animal.java | 2 -- .../main/java/org/openapitools/model/Animal.java | 2 -- .../main/java/org/openapitools/model/Animal.java | 2 -- .../main/java/org/openapitools/model/Animal.java | 3 --- .../src/main/java/org/openapitools/model/Cat.java | 1 - .../org/openapitools/virtualan/model/Animal.java | 3 --- .../java/org/openapitools/virtualan/model/Cat.java | 1 - .../main/java/org/openapitools/model/AnimalDto.java | 3 --- .../main/java/org/openapitools/model/CatDto.java | 1 - 134 files changed, 6 insertions(+), 325 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java index 46790a8cad09..dccecfd1626b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java @@ -1213,6 +1213,12 @@ public void addDiscriminatorMappedModelsImports() { if (discriminator == null || discriminator.getMappedModels() == null) { return; } + + if (!this.hasChildren) {// no child + return; + } + + // import child schemas for (CodegenDiscriminator.MappedModel mm : discriminator.getMappedModels()) { if (!"".equals(mm.getModelName())) { imports.add(mm.getModelName()); diff --git a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Animal.java index 36ecf9c54f65..52742a478bb8 100644 --- a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Animal.java @@ -20,8 +20,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Cat.java index d7e6bc70bf91..be9c69545616 100644 --- a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Cat.java @@ -21,8 +21,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Dog.java index b4cd5a234a92..069dab8392d5 100644 --- a/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java-helidon-client/mp/src/main/java/org/openapitools/client/model/Dog.java @@ -21,8 +21,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Animal.java index 36ecf9c54f65..52742a478bb8 100644 --- a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Animal.java @@ -20,8 +20,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Cat.java index d7e6bc70bf91..be9c69545616 100644 --- a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Cat.java @@ -21,8 +21,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Dog.java index b4cd5a234a92..069dab8392d5 100644 --- a/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java-helidon-client/se/src/main/java/org/openapitools/client/model/Dog.java @@ -21,8 +21,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; diff --git a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Animal.java index 356963fb37b9..0cf61b82d267 100644 --- a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Animal.java @@ -23,8 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import java.io.UnsupportedEncodingException; diff --git a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Cat.java index eccde8a632a2..0e132276f63d 100644 --- a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Cat.java @@ -24,8 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import java.io.UnsupportedEncodingException; diff --git a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Dog.java index 115faf719e83..3d832a5c9bf7 100644 --- a/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java/apache-httpclient/src/main/java/org/openapitools/client/model/Dog.java @@ -24,8 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import java.io.UnsupportedEncodingException; diff --git a/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/model/Animal.java index d7839c78fb14..4e7596ec935e 100644 --- a/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/model/Cat.java index e4bd0696ec03..60df5483e03a 100644 --- a/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Animal.java index f1ffa626bd41..2a5cd4ada193 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Animal.java @@ -23,8 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Cat.java index dd048f361099..e9799d2ec6c8 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Cat.java @@ -24,8 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Dog.java index df5050f1159e..d9244323abd9 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Dog.java @@ -24,8 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Animal.java index 6c603bf62cf7..ac8206976187 100644 --- a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Cat.java index 97ffcf45b25d..e6407e848487 100644 --- a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Animal.java index 6c603bf62cf7..ac8206976187 100644 --- a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Cat.java index 97ffcf45b25d..e6407e848487 100644 --- a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/jersey2-java8-localdatetime/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/jersey2-java8-localdatetime/src/main/java/org/openapitools/client/model/Animal.java index c63b11c5d3d0..9ace6d0d824c 100644 --- a/samples/client/petstore/java/jersey2-java8-localdatetime/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/jersey2-java8-localdatetime/src/main/java/org/openapitools/client/model/Animal.java @@ -25,9 +25,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/client/petstore/java/jersey2-java8-localdatetime/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/jersey2-java8-localdatetime/src/main/java/org/openapitools/client/model/Cat.java index fa1875cb67ba..56b9877dcc5e 100644 --- a/samples/client/petstore/java/jersey2-java8-localdatetime/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/jersey2-java8-localdatetime/src/main/java/org/openapitools/client/model/Cat.java @@ -26,7 +26,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Animal.java index c63b11c5d3d0..9ace6d0d824c 100644 --- a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Animal.java @@ -25,9 +25,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Cat.java index fa1875cb67ba..56b9877dcc5e 100644 --- a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Cat.java @@ -26,7 +26,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/Animal.java index b07ca3393730..d81363597cda 100644 --- a/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/Animal.java @@ -25,8 +25,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/GrandparentAnimal.java b/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/GrandparentAnimal.java index 5eacdbf4c7ff..c0bf159da9b2 100644 --- a/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/GrandparentAnimal.java +++ b/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/GrandparentAnimal.java @@ -25,8 +25,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.ChildCat; -import org.openapitools.client.model.ParentPet; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/ParentPet.java b/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/ParentPet.java index c4188603a1b9..ec0d6794fbf7 100644 --- a/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/ParentPet.java +++ b/samples/client/petstore/java/jersey3/src/main/java/org/openapitools/client/model/ParentPet.java @@ -29,7 +29,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.ChildCat; import org.openapitools.client.model.GrandparentAnimal; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/Animal.java index cffa1c6286ac..c61c6475cadf 100644 --- a/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/Animal.java @@ -28,8 +28,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; diff --git a/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/GrandparentAnimal.java b/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/GrandparentAnimal.java index 53cf95c9c15e..329bd4ae97a6 100644 --- a/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/GrandparentAnimal.java +++ b/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/GrandparentAnimal.java @@ -28,8 +28,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.ChildCat; -import org.openapitools.client.model.ParentPet; import com.fasterxml.jackson.annotation.JsonPropertyOrder; diff --git a/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/ParentPet.java b/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/ParentPet.java index 54215bdc6790..1ea01ee0938c 100644 --- a/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/ParentPet.java +++ b/samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/model/ParentPet.java @@ -28,7 +28,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.ChildCat; import org.openapitools.client.model.GrandparentAnimal; import com.fasterxml.jackson.annotation.JsonPropertyOrder; diff --git a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/Animal.java index cffa1c6286ac..c61c6475cadf 100644 --- a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/Animal.java @@ -28,8 +28,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; diff --git a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/GrandparentAnimal.java b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/GrandparentAnimal.java index 53cf95c9c15e..329bd4ae97a6 100644 --- a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/GrandparentAnimal.java +++ b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/GrandparentAnimal.java @@ -28,8 +28,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.ChildCat; -import org.openapitools.client.model.ParentPet; import com.fasterxml.jackson.annotation.JsonPropertyOrder; diff --git a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/ParentPet.java b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/ParentPet.java index 54215bdc6790..1ea01ee0938c 100644 --- a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/ParentPet.java +++ b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/ParentPet.java @@ -28,7 +28,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.ChildCat; import org.openapitools.client.model.GrandparentAnimal; import com.fasterxml.jackson.annotation.JsonPropertyOrder; diff --git a/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/model/Animal.java index 96bba4a3d3ea..fdb1f6b6877a 100644 --- a/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/model/Animal.java @@ -21,9 +21,6 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.google.gson.Gson; import com.google.gson.GsonBuilder; diff --git a/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/model/Cat.java index c09f326d7c08..d726c5945f66 100644 --- a/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/model/Cat.java @@ -22,7 +22,6 @@ import com.google.gson.stream.JsonWriter; import java.io.IOException; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.google.gson.Gson; import com.google.gson.GsonBuilder; diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Animal.java index 8c8cd3d89be4..a4f0db63b702 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Animal.java @@ -21,9 +21,6 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import android.os.Parcelable; import android.os.Parcel; diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Cat.java index 5d0950cc0c1f..7561af20ef65 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Cat.java @@ -22,7 +22,6 @@ import com.google.gson.stream.JsonWriter; import java.io.IOException; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import android.os.Parcelable; import android.os.Parcel; diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/Animal.java index d4912377fb95..9f53acf471e4 100644 --- a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/Animal.java @@ -21,8 +21,6 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.google.gson.Gson; import com.google.gson.GsonBuilder; diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/GrandparentAnimal.java b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/GrandparentAnimal.java index 647a67915604..391839188516 100644 --- a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/GrandparentAnimal.java +++ b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/GrandparentAnimal.java @@ -21,7 +21,6 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import org.openapitools.client.model.ParentPet; import com.google.gson.Gson; import com.google.gson.GsonBuilder; diff --git a/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Animal.java index a45e467b7af7..f386e3dde824 100644 --- a/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import javax.validation.constraints.*; diff --git a/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Cat.java index bde591fc50b9..abc0d07df3f9 100644 --- a/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import javax.validation.constraints.*; diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Animal.java index ba4d7e40f948..52424c0439cc 100644 --- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Animal.java @@ -21,9 +21,6 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import javax.validation.constraints.*; import javax.validation.Valid; import org.hibernate.validator.constraints.*; diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Cat.java index 3063c81fa0b9..ebb5bdd59a73 100644 --- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Cat.java @@ -22,7 +22,6 @@ import com.google.gson.stream.JsonWriter; import java.io.IOException; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import javax.validation.constraints.*; import javax.validation.Valid; import org.hibernate.validator.constraints.*; diff --git a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Animal.java index 6c603bf62cf7..ac8206976187 100644 --- a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Cat.java index 97ffcf45b25d..e6407e848487 100644 --- a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Animal.java index 6304aa13cce7..9a39e4e20129 100644 --- a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.dataformat.xml.annotation.*; diff --git a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Cat.java index 24eb8295dd39..dba355c3a423 100644 --- a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.dataformat.xml.annotation.*; diff --git a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Animal.java index 6c603bf62cf7..ac8206976187 100644 --- a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Cat.java index 97ffcf45b25d..e6407e848487 100644 --- a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Animal.java index 8958b1c84972..91cb0d6b432f 100644 --- a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import javax.validation.constraints.*; diff --git a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Cat.java index 0037a4863681..469dd4a5547b 100644 --- a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; import javax.validation.constraints.*; diff --git a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Animal.java index 14e0f6107e6d..805245b56366 100644 --- a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Animal.java @@ -21,9 +21,6 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; /** * Animal diff --git a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Cat.java index 4196be52de5e..8c0cb47f5238 100644 --- a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Cat.java @@ -22,7 +22,6 @@ import com.google.gson.stream.JsonWriter; import java.io.IOException; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; /** * Cat diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Animal.java index 14e0f6107e6d..805245b56366 100644 --- a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Animal.java @@ -21,9 +21,6 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; /** * Animal diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Cat.java index 4196be52de5e..8c0cb47f5238 100644 --- a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Cat.java @@ -22,7 +22,6 @@ import com.google.gson.stream.JsonWriter; import java.io.IOException; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; /** * Cat diff --git a/samples/client/petstore/java/retrofit2rx3/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/retrofit2rx3/src/main/java/org/openapitools/client/model/Animal.java index 14e0f6107e6d..805245b56366 100644 --- a/samples/client/petstore/java/retrofit2rx3/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/retrofit2rx3/src/main/java/org/openapitools/client/model/Animal.java @@ -21,9 +21,6 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; /** * Animal diff --git a/samples/client/petstore/java/retrofit2rx3/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/retrofit2rx3/src/main/java/org/openapitools/client/model/Cat.java index 4196be52de5e..8c0cb47f5238 100644 --- a/samples/client/petstore/java/retrofit2rx3/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/retrofit2rx3/src/main/java/org/openapitools/client/model/Cat.java @@ -22,7 +22,6 @@ import com.google.gson.stream.JsonWriter; import java.io.IOException; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; /** * Cat diff --git a/samples/client/petstore/java/vertx-no-nullable/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/vertx-no-nullable/src/main/java/org/openapitools/client/model/Animal.java index 6c603bf62cf7..ac8206976187 100644 --- a/samples/client/petstore/java/vertx-no-nullable/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/vertx-no-nullable/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/vertx-no-nullable/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/vertx-no-nullable/src/main/java/org/openapitools/client/model/Cat.java index 97ffcf45b25d..e6407e848487 100644 --- a/samples/client/petstore/java/vertx-no-nullable/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/vertx-no-nullable/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Animal.java index 6c603bf62cf7..ac8206976187 100644 --- a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Animal.java @@ -23,9 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.BigCat; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Cat.java index 97ffcf45b25d..e6407e848487 100644 --- a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Cat.java @@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.BigCat; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Animal.java index 000a0dc18787..59b3b92ad835 100644 --- a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Animal.java @@ -23,8 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Cat.java index b727e7fc2910..bf6438723cab 100644 --- a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Cat.java @@ -24,8 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Dog.java index 508939745e86..f401087ba04b 100644 --- a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/model/Dog.java @@ -24,8 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Animal.java b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Animal.java index f1ffa626bd41..2a5cd4ada193 100644 --- a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Animal.java @@ -23,8 +23,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Cat.java b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Cat.java index 70094f593443..eedcd03d800f 100644 --- a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Cat.java +++ b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Cat.java @@ -24,8 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Dog.java b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Dog.java index df5050f1159e..d9244323abd9 100644 --- a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Dog.java +++ b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Dog.java @@ -24,8 +24,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import org.openapitools.client.model.Animal; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonTypeName; diff --git a/samples/client/petstore/python-prior/petstore_api/model/animal.py b/samples/client/petstore/python-prior/petstore_api/model/animal.py index cc35f796ed49..1eb4256da8da 100644 --- a/samples/client/petstore/python-prior/petstore_api/model/animal.py +++ b/samples/client/petstore/python-prior/petstore_api/model/animal.py @@ -29,12 +29,6 @@ from petstore_api.exceptions import ApiAttributeError -def lazy_import(): - from petstore_api.model.cat import Cat - from petstore_api.model.dog import Dog - globals()['Cat'] = Cat - globals()['Dog'] = Dog - class Animal(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. @@ -72,7 +66,6 @@ def additional_properties_type(): This must be a method because a model may have properties that are of type self, this must run after the class is loaded """ - lazy_import() return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -87,7 +80,6 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ - lazy_import() return { 'class_name': (str,), # noqa: E501 'color': (str,), # noqa: E501 @@ -95,7 +87,6 @@ def openapi_types(): @cached_property def discriminator(): - lazy_import() val = { 'Cat': Cat, 'Dog': Dog, diff --git a/samples/client/petstore/python-prior/petstore_api/model/grandparent_animal.py b/samples/client/petstore/python-prior/petstore_api/model/grandparent_animal.py index fa467e99b34c..ad6103668e06 100644 --- a/samples/client/petstore/python-prior/petstore_api/model/grandparent_animal.py +++ b/samples/client/petstore/python-prior/petstore_api/model/grandparent_animal.py @@ -29,16 +29,6 @@ from petstore_api.exceptions import ApiAttributeError -def lazy_import(): - from petstore_api.model.child_cat import ChildCat - from petstore_api.model.child_dog import ChildDog - from petstore_api.model.child_lizard import ChildLizard - from petstore_api.model.parent_pet import ParentPet - globals()['ChildCat'] = ChildCat - globals()['ChildDog'] = ChildDog - globals()['ChildLizard'] = ChildLizard - globals()['ParentPet'] = ParentPet - class GrandparentAnimal(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. @@ -76,7 +66,6 @@ def additional_properties_type(): This must be a method because a model may have properties that are of type self, this must run after the class is loaded """ - lazy_import() return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -91,14 +80,12 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ - lazy_import() return { 'pet_type': (str,), # noqa: E501 } @cached_property def discriminator(): - lazy_import() val = { 'ChildCat': ChildCat, 'ChildDog': ChildDog, diff --git a/samples/client/petstore/python-prior/petstore_api/model/parent_pet.py b/samples/client/petstore/python-prior/petstore_api/model/parent_pet.py index 9889f4c7a5be..8bd340859b16 100644 --- a/samples/client/petstore/python-prior/petstore_api/model/parent_pet.py +++ b/samples/client/petstore/python-prior/petstore_api/model/parent_pet.py @@ -30,13 +30,7 @@ def lazy_import(): - from petstore_api.model.child_cat import ChildCat - from petstore_api.model.child_dog import ChildDog - from petstore_api.model.child_lizard import ChildLizard from petstore_api.model.grandparent_animal import GrandparentAnimal - globals()['ChildCat'] = ChildCat - globals()['ChildDog'] = ChildDog - globals()['ChildLizard'] = ChildLizard globals()['GrandparentAnimal'] = GrandparentAnimal diff --git a/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/animal.py b/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/animal.py index 8304f57dbfc8..7ba3e8875ef1 100644 --- a/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/animal.py +++ b/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/animal.py @@ -29,12 +29,6 @@ from petstore_api.exceptions import ApiAttributeError -def lazy_import(): - from petstore_api.model.cat import Cat - from petstore_api.model.dog import Dog - globals()['Cat'] = Cat - globals()['Dog'] = Dog - class Animal(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. @@ -80,7 +74,6 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ - lazy_import() return { 'class_name': (str,), # noqa: E501 'color': (str,), # noqa: E501 @@ -88,7 +81,6 @@ def openapi_types(): @cached_property def discriminator(): - lazy_import() val = { 'Cat': Cat, 'Dog': Dog, diff --git a/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/grandparent_animal.py b/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/grandparent_animal.py index c70dd5a668d6..d8dabaf877da 100644 --- a/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/grandparent_animal.py +++ b/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/grandparent_animal.py @@ -29,16 +29,6 @@ from petstore_api.exceptions import ApiAttributeError -def lazy_import(): - from petstore_api.model.child_cat import ChildCat - from petstore_api.model.child_dog import ChildDog - from petstore_api.model.child_lizard import ChildLizard - from petstore_api.model.parent_pet import ParentPet - globals()['ChildCat'] = ChildCat - globals()['ChildDog'] = ChildDog - globals()['ChildLizard'] = ChildLizard - globals()['ParentPet'] = ParentPet - class GrandparentAnimal(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. @@ -84,14 +74,12 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ - lazy_import() return { 'pet_type': (str,), # noqa: E501 } @cached_property def discriminator(): - lazy_import() val = { 'ChildCat': ChildCat, 'ChildDog': ChildDog, diff --git a/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/parent_pet.py b/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/parent_pet.py index d29d3b27adbd..8b58c68b5ad4 100644 --- a/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/parent_pet.py +++ b/samples/client/petstore/python-prior_disallowAdditionalPropertiesIfNotPresent/petstore_api/model/parent_pet.py @@ -30,13 +30,7 @@ def lazy_import(): - from petstore_api.model.child_cat import ChildCat - from petstore_api.model.child_dog import ChildDog - from petstore_api.model.child_lizard import ChildLizard from petstore_api.model.grandparent_animal import GrandparentAnimal - globals()['ChildCat'] = ChildCat - globals()['ChildDog'] = ChildDog - globals()['ChildLizard'] = ChildLizard globals()['GrandparentAnimal'] = GrandparentAnimal diff --git a/samples/client/petstore/spring-http-interface-reactive/src/main/java/org/openapitools/model/Animal.java b/samples/client/petstore/spring-http-interface-reactive/src/main/java/org/openapitools/model/Animal.java index babc11283a29..2dac294169ce 100644 --- a/samples/client/petstore/spring-http-interface-reactive/src/main/java/org/openapitools/model/Animal.java +++ b/samples/client/petstore/spring-http-interface-reactive/src/main/java/org/openapitools/model/Animal.java @@ -7,9 +7,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import jakarta.validation.constraints.NotNull; diff --git a/samples/client/petstore/spring-http-interface-reactive/src/main/java/org/openapitools/model/Cat.java b/samples/client/petstore/spring-http-interface-reactive/src/main/java/org/openapitools/model/Cat.java index 3e54e9eb2588..455b0f5fc5c5 100644 --- a/samples/client/petstore/spring-http-interface-reactive/src/main/java/org/openapitools/model/Cat.java +++ b/samples/client/petstore/spring-http-interface-reactive/src/main/java/org/openapitools/model/Cat.java @@ -8,7 +8,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import jakarta.validation.constraints.NotNull; diff --git a/samples/client/petstore/spring-http-interface/src/main/java/org/openapitools/model/AnimalDto.java b/samples/client/petstore/spring-http-interface/src/main/java/org/openapitools/model/AnimalDto.java index c17b0385407e..dbb2ecce3d3d 100644 --- a/samples/client/petstore/spring-http-interface/src/main/java/org/openapitools/model/AnimalDto.java +++ b/samples/client/petstore/spring-http-interface/src/main/java/org/openapitools/model/AnimalDto.java @@ -8,9 +8,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; -import org.openapitools.model.BigCatDto; -import org.openapitools.model.CatDto; -import org.openapitools.model.DogDto; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import jakarta.validation.constraints.NotNull; diff --git a/samples/client/petstore/spring-http-interface/src/main/java/org/openapitools/model/CatDto.java b/samples/client/petstore/spring-http-interface/src/main/java/org/openapitools/model/CatDto.java index 61f8bc958e63..c78e05ed6ef0 100644 --- a/samples/client/petstore/spring-http-interface/src/main/java/org/openapitools/model/CatDto.java +++ b/samples/client/petstore/spring-http-interface/src/main/java/org/openapitools/model/CatDto.java @@ -9,7 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import org.openapitools.model.AnimalDto; -import org.openapitools.model.BigCatDto; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import jakarta.validation.constraints.NotNull; diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity.dart b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity.dart index 7e27fab47387..7a6881fe3dc9 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity.dart @@ -4,13 +4,7 @@ // ignore_for_file: unused_element import 'package:openapi/src/model/extensible.dart'; -import 'package:openapi/src/model/pizza_speziale.dart'; -import 'package:openapi/src/model/foo.dart'; -import 'package:openapi/src/model/pizza.dart'; import 'package:openapi/src/model/addressable.dart'; -import 'package:openapi/src/model/pasta.dart'; -import 'package:openapi/src/model/bar_create.dart'; -import 'package:openapi/src/model/bar.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity_ref.dart b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity_ref.dart index 7502c94dd7f3..093b987cf517 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity_ref.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity_ref.dart @@ -4,9 +4,7 @@ // ignore_for_file: unused_element import 'package:openapi/src/model/extensible.dart'; -import 'package:openapi/src/model/bar_ref.dart'; import 'package:openapi/src/model/addressable.dart'; -import 'package:openapi/src/model/foo_ref.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/pizza.dart b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/pizza.dart index 14c06db06d7e..23bd902f0dea 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/pizza.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/pizza.dart @@ -3,7 +3,6 @@ // // ignore_for_file: unused_element -import 'package:openapi/src/model/pizza_speziale.dart'; import 'package:openapi/src/model/entity.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart index 20b3f9f50b71..4c387698367d 100644 --- a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart +++ b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart @@ -3,8 +3,6 @@ // // ignore_for_file: unused_element -import 'package:openapi/src/model/dog.dart'; -import 'package:openapi/src/model/cat.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/cat.dart b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/cat.dart index b42db58b3804..23d19b38b05a 100644 --- a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/cat.dart +++ b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/cat.dart @@ -3,8 +3,6 @@ // // ignore_for_file: unused_element -import 'package:openapi/src/model/dog.dart'; -import 'package:openapi/src/model/cat.dart'; import 'package:openapi/src/model/animal.dart'; import 'package:openapi/src/model/cat_all_of.dart'; import 'package:built_value/built_value.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/dog.dart b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/dog.dart index a003dfa3d4a8..4d9974f25b1d 100644 --- a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/dog.dart +++ b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/dog.dart @@ -3,8 +3,6 @@ // // ignore_for_file: unused_element -import 'package:openapi/src/model/dog.dart'; -import 'package:openapi/src/model/cat.dart'; import 'package:openapi/src/model/dog_all_of.dart'; import 'package:openapi/src/model/animal.dart'; import 'package:built_value/built_value.dart'; diff --git a/samples/openapi3/client/petstore/java/jersey2-java8-special-characters/src/main/java/org/openapitools/client/model/Parent.java b/samples/openapi3/client/petstore/java/jersey2-java8-special-characters/src/main/java/org/openapitools/client/model/Parent.java index 67758eceb021..e701fbb68119 100644 --- a/samples/openapi3/client/petstore/java/jersey2-java8-special-characters/src/main/java/org/openapitools/client/model/Parent.java +++ b/samples/openapi3/client/petstore/java/jersey2-java8-special-characters/src/main/java/org/openapitools/client/model/Parent.java @@ -25,8 +25,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.ChildSchema; -import org.openapitools.client.model.MySchemaNameCharacters; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Animal.java b/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Animal.java index 3aa72ab11121..c7f448408194 100644 --- a/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Animal.java +++ b/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Animal.java @@ -25,8 +25,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.Cat; -import org.openapitools.client.model.Dog; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/GrandparentAnimal.java b/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/GrandparentAnimal.java index 240416e4b9e6..efc411bee635 100644 --- a/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/GrandparentAnimal.java +++ b/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/GrandparentAnimal.java @@ -25,8 +25,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.ChildCat; -import org.openapitools.client.model.ParentPet; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/ParentPet.java b/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/ParentPet.java index 9aad3fd3d862..fe10e19e1726 100644 --- a/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/ParentPet.java +++ b/samples/openapi3/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/ParentPet.java @@ -29,7 +29,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import org.openapitools.client.model.ChildCat; import org.openapitools.client.model.GrandparentAnimal; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import org.openapitools.client.JSON; diff --git a/samples/openapi3/client/petstore/python-prior/petstore_api/model/animal.py b/samples/openapi3/client/petstore/python-prior/petstore_api/model/animal.py index b93180ea0559..e93f4479897d 100644 --- a/samples/openapi3/client/petstore/python-prior/petstore_api/model/animal.py +++ b/samples/openapi3/client/petstore/python-prior/petstore_api/model/animal.py @@ -29,12 +29,6 @@ from petstore_api.exceptions import ApiAttributeError -def lazy_import(): - from petstore_api.model.cat import Cat - from petstore_api.model.dog import Dog - globals()['Cat'] = Cat - globals()['Dog'] = Dog - class Animal(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. @@ -72,7 +66,6 @@ def additional_properties_type(): This must be a method because a model may have properties that are of type self, this must run after the class is loaded """ - lazy_import() return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -87,7 +80,6 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ - lazy_import() return { 'class_name': (str,), # noqa: E501 'color': (str,), # noqa: E501 @@ -96,7 +88,6 @@ def openapi_types(): @cached_property def discriminator(): - lazy_import() val = { 'Cat': Cat, 'Dog': Dog, diff --git a/samples/openapi3/client/petstore/python-prior/petstore_api/model/grandparent_animal.py b/samples/openapi3/client/petstore/python-prior/petstore_api/model/grandparent_animal.py index f6d1b0bb2043..68a4f90c5f8a 100644 --- a/samples/openapi3/client/petstore/python-prior/petstore_api/model/grandparent_animal.py +++ b/samples/openapi3/client/petstore/python-prior/petstore_api/model/grandparent_animal.py @@ -29,12 +29,6 @@ from petstore_api.exceptions import ApiAttributeError -def lazy_import(): - from petstore_api.model.child_cat import ChildCat - from petstore_api.model.parent_pet import ParentPet - globals()['ChildCat'] = ChildCat - globals()['ParentPet'] = ParentPet - class GrandparentAnimal(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. @@ -72,7 +66,6 @@ def additional_properties_type(): This must be a method because a model may have properties that are of type self, this must run after the class is loaded """ - lazy_import() return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 _nullable = False @@ -87,14 +80,12 @@ def openapi_types(): openapi_types (dict): The key is attribute name and the value is attribute type. """ - lazy_import() return { 'pet_type': (str,), # noqa: E501 } @cached_property def discriminator(): - lazy_import() val = { 'ChildCat': ChildCat, 'ParentPet': ParentPet, diff --git a/samples/openapi3/client/petstore/python-prior/petstore_api/model/parent_pet.py b/samples/openapi3/client/petstore/python-prior/petstore_api/model/parent_pet.py index 8d94006f1591..ad1d2c0bac4a 100644 --- a/samples/openapi3/client/petstore/python-prior/petstore_api/model/parent_pet.py +++ b/samples/openapi3/client/petstore/python-prior/petstore_api/model/parent_pet.py @@ -30,9 +30,7 @@ def lazy_import(): - from petstore_api.model.child_cat import ChildCat from petstore_api.model.grandparent_animal import GrandparentAnimal - globals()['ChildCat'] = ChildCat globals()['GrandparentAnimal'] = GrandparentAnimal diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/animal.py b/samples/openapi3/client/petstore/python/petstore_api/model/animal.py index 10cc8231ca0b..8598aa4aa25a 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/animal.py +++ b/samples/openapi3/client/petstore/python/petstore_api/model/animal.py @@ -100,6 +100,3 @@ def __new__( _configuration=_configuration, **kwargs, ) - -from petstore_api.model.cat import Cat -from petstore_api.model.dog import Dog diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/animal.pyi b/samples/openapi3/client/petstore/python/petstore_api/model/animal.pyi index 10cc8231ca0b..8598aa4aa25a 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/animal.pyi +++ b/samples/openapi3/client/petstore/python/petstore_api/model/animal.pyi @@ -100,6 +100,3 @@ class Animal( _configuration=_configuration, **kwargs, ) - -from petstore_api.model.cat import Cat -from petstore_api.model.dog import Dog diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.py b/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.py index 08f64735dc15..36cf71d8561f 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.py +++ b/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.py @@ -90,6 +90,3 @@ def __new__( _configuration=_configuration, **kwargs, ) - -from petstore_api.model.child_cat import ChildCat -from petstore_api.model.parent_pet import ParentPet diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.pyi b/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.pyi index 08f64735dc15..36cf71d8561f 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.pyi +++ b/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.pyi @@ -90,6 +90,3 @@ class GrandparentAnimal( _configuration=_configuration, **kwargs, ) - -from petstore_api.model.child_cat import ChildCat -from petstore_api.model.parent_pet import ParentPet diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.py b/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.py index 6988fb92ef7e..621430733f92 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.py +++ b/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.py @@ -72,5 +72,4 @@ def __new__( **kwargs, ) -from petstore_api.model.child_cat import ChildCat from petstore_api.model.grandparent_animal import GrandparentAnimal diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.pyi b/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.pyi index 6988fb92ef7e..621430733f92 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.pyi +++ b/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.pyi @@ -72,5 +72,4 @@ class ParentPet( **kwargs, ) -from petstore_api.model.child_cat import ChildCat from petstore_api.model.grandparent_animal import GrandparentAnimal diff --git a/samples/openapi3/client/petstore/spring-cloud-oas3-fakeapi/src/main/java/org/openapitools/model/Animal.java b/samples/openapi3/client/petstore/spring-cloud-oas3-fakeapi/src/main/java/org/openapitools/model/Animal.java index 079192f597a2..a7cc4474452f 100644 --- a/samples/openapi3/client/petstore/spring-cloud-oas3-fakeapi/src/main/java/org/openapitools/model/Animal.java +++ b/samples/openapi3/client/petstore/spring-cloud-oas3-fakeapi/src/main/java/org/openapitools/model/Animal.java @@ -7,9 +7,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/openapi3/client/petstore/spring-cloud-oas3-fakeapi/src/main/java/org/openapitools/model/Cat.java b/samples/openapi3/client/petstore/spring-cloud-oas3-fakeapi/src/main/java/org/openapitools/model/Cat.java index 41d9863046f1..453a5dee40ad 100644 --- a/samples/openapi3/client/petstore/spring-cloud-oas3-fakeapi/src/main/java/org/openapitools/model/Cat.java +++ b/samples/openapi3/client/petstore/spring-cloud-oas3-fakeapi/src/main/java/org/openapitools/model/Cat.java @@ -8,7 +8,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/Entity.java b/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/Entity.java index f562753ad8ae..d17fd48b8428 100644 --- a/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/Entity.java +++ b/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/Entity.java @@ -7,12 +7,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.model.Bar; -import org.openapitools.model.BarCreate; -import org.openapitools.model.Foo; -import org.openapitools.model.Pasta; -import org.openapitools.model.Pizza; -import org.openapitools.model.PizzaSpeziale; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/EntityRef.java b/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/EntityRef.java index aa5d638da283..cd900a0bc392 100644 --- a/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/EntityRef.java +++ b/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/EntityRef.java @@ -7,8 +7,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.model.BarRef; -import org.openapitools.model.FooRef; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/Pizza.java b/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/Pizza.java index a87109514066..3de889ffbb75 100644 --- a/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/Pizza.java +++ b/samples/openapi3/server/petstore/spring-boot-oneof/src/main/java/org/openapitools/model/Pizza.java @@ -9,7 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import java.math.BigDecimal; import org.openapitools.model.Entity; -import org.openapitools.model.PizzaSpeziale; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/openapi3/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Animal.java b/samples/openapi3/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Animal.java index 1ecf10efc5c1..2043b838b09e 100644 --- a/samples/openapi3/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Animal.java +++ b/samples/openapi3/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Animal.java @@ -7,9 +7,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/openapi3/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Cat.java b/samples/openapi3/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Cat.java index a2feece8de89..5935adbddb26 100644 --- a/samples/openapi3/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Cat.java +++ b/samples/openapi3/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Cat.java @@ -8,7 +8,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/openapi3/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Animal.java b/samples/openapi3/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Animal.java index 1ecf10efc5c1..2043b838b09e 100644 --- a/samples/openapi3/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Animal.java +++ b/samples/openapi3/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Animal.java @@ -7,9 +7,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/openapi3/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Cat.java b/samples/openapi3/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Cat.java index a2feece8de89..5935adbddb26 100644 --- a/samples/openapi3/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Cat.java +++ b/samples/openapi3/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Cat.java @@ -8,7 +8,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Animal.java b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Animal.java index da9c02ed0c39..3a90afbad85e 100644 --- a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Animal.java +++ b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Animal.java @@ -15,8 +15,6 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.server.model.Cat; -import org.openapitools.server.model.Dog; import jakarta.validation.constraints.*; import jakarta.validation.Valid; diff --git a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Cat.java b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Cat.java index 50d915d430f1..78534303e0ff 100644 --- a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Cat.java +++ b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Cat.java @@ -16,8 +16,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.server.model.Animal; -import org.openapitools.server.model.Cat; -import org.openapitools.server.model.Dog; import jakarta.validation.constraints.*; import jakarta.validation.Valid; diff --git a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Dog.java b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Dog.java index 2808795623a5..e0f8e5a79b42 100644 --- a/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Dog.java +++ b/samples/server/petstore/java-helidon-server/mp/src/main/java/org/openapitools/server/model/Dog.java @@ -16,8 +16,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.server.model.Animal; -import org.openapitools.server.model.Cat; -import org.openapitools.server.model.Dog; import jakarta.validation.constraints.*; import jakarta.validation.Valid; diff --git a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Animal.java b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Animal.java index 72fd34477f82..1aa44d002043 100644 --- a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Animal.java +++ b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Animal.java @@ -3,8 +3,6 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.server.model.Cat; -import org.openapitools.server.model.Dog; diff --git a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Cat.java b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Cat.java index fcb4901aac11..663f2a85183a 100644 --- a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Cat.java +++ b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Cat.java @@ -4,8 +4,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.server.model.Animal; -import org.openapitools.server.model.Cat; -import org.openapitools.server.model.Dog; diff --git a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Dog.java b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Dog.java index 9f9d5b0317e7..2c904956ac4c 100644 --- a/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Dog.java +++ b/samples/server/petstore/java-helidon-server/se/src/main/java/org/openapitools/server/model/Dog.java @@ -4,8 +4,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.server.model.Animal; -import org.openapitools.server.model.Cat; -import org.openapitools.server.model.Dog; diff --git a/samples/server/petstore/spring-boot-defaultInterface-unhandledException/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/spring-boot-defaultInterface-unhandledException/src/main/java/org/openapitools/model/Animal.java index 1ecf10efc5c1..2043b838b09e 100644 --- a/samples/server/petstore/spring-boot-defaultInterface-unhandledException/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/spring-boot-defaultInterface-unhandledException/src/main/java/org/openapitools/model/Animal.java @@ -7,9 +7,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/spring-boot-defaultInterface-unhandledException/src/main/java/org/openapitools/model/Cat.java b/samples/server/petstore/spring-boot-defaultInterface-unhandledException/src/main/java/org/openapitools/model/Cat.java index a2feece8de89..5935adbddb26 100644 --- a/samples/server/petstore/spring-boot-defaultInterface-unhandledException/src/main/java/org/openapitools/model/Cat.java +++ b/samples/server/petstore/spring-boot-defaultInterface-unhandledException/src/main/java/org/openapitools/model/Cat.java @@ -8,7 +8,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-beanvalidation-no-nullable/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-beanvalidation-no-nullable/src/main/java/org/openapitools/model/Animal.java index c914c2141a75..2fba86bfb810 100644 --- a/samples/server/petstore/springboot-beanvalidation-no-nullable/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-beanvalidation-no-nullable/src/main/java/org/openapitools/model/Animal.java @@ -9,9 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import java.time.OffsetDateTime; import javax.validation.Valid; import javax.validation.constraints.*; diff --git a/samples/server/petstore/springboot-beanvalidation-no-nullable/src/main/java/org/openapitools/model/Cat.java b/samples/server/petstore/springboot-beanvalidation-no-nullable/src/main/java/org/openapitools/model/Cat.java index aeb4370edc37..d89c65a2b8e1 100644 --- a/samples/server/petstore/springboot-beanvalidation-no-nullable/src/main/java/org/openapitools/model/Cat.java +++ b/samples/server/petstore/springboot-beanvalidation-no-nullable/src/main/java/org/openapitools/model/Cat.java @@ -10,7 +10,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import java.time.OffsetDateTime; import javax.validation.Valid; import javax.validation.constraints.*; diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Animal.java index d91e6d2ef40a..a44fd92f4fd6 100644 --- a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Animal.java @@ -9,9 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Cat.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Cat.java index ebd1416c5bd5..e1bbc4a11640 100644 --- a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Cat.java +++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Cat.java @@ -10,7 +10,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Animal.java index d91e6d2ef40a..a44fd92f4fd6 100644 --- a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Animal.java @@ -9,9 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Cat.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Cat.java index ebd1416c5bd5..e1bbc4a11640 100644 --- a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Cat.java +++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Cat.java @@ -10,7 +10,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Animal.java index d91e6d2ef40a..a44fd92f4fd6 100644 --- a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Animal.java @@ -9,9 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Cat.java b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Cat.java index ebd1416c5bd5..e1bbc4a11640 100644 --- a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Cat.java +++ b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Cat.java @@ -10,7 +10,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Animal.java index d91e6d2ef40a..a44fd92f4fd6 100644 --- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Animal.java @@ -9,9 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Cat.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Cat.java index ebd1416c5bd5..e1bbc4a11640 100644 --- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Cat.java +++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Cat.java @@ -10,7 +10,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Animal.java index d91e6d2ef40a..a44fd92f4fd6 100644 --- a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Animal.java @@ -9,9 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Cat.java b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Cat.java index ebd1416c5bd5..e1bbc4a11640 100644 --- a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Cat.java +++ b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Cat.java @@ -10,7 +10,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-spring-pageable-delegatePattern-without-j8/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-spring-pageable-delegatePattern-without-j8/src/main/java/org/openapitools/model/Animal.java index aa84943bc684..4c613b7c9660 100644 --- a/samples/server/petstore/springboot-spring-pageable-delegatePattern-without-j8/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-spring-pageable-delegatePattern-without-j8/src/main/java/org/openapitools/model/Animal.java @@ -9,8 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-spring-pageable-delegatePattern/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-spring-pageable-delegatePattern/src/main/java/org/openapitools/model/Animal.java index aa84943bc684..4c613b7c9660 100644 --- a/samples/server/petstore/springboot-spring-pageable-delegatePattern/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-spring-pageable-delegatePattern/src/main/java/org/openapitools/model/Animal.java @@ -9,8 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-spring-pageable-without-j8/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-spring-pageable-without-j8/src/main/java/org/openapitools/model/Animal.java index aa84943bc684..4c613b7c9660 100644 --- a/samples/server/petstore/springboot-spring-pageable-without-j8/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-spring-pageable-without-j8/src/main/java/org/openapitools/model/Animal.java @@ -9,8 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-spring-pageable/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-spring-pageable/src/main/java/org/openapitools/model/Animal.java index aa84943bc684..4c613b7c9660 100644 --- a/samples/server/petstore/springboot-spring-pageable/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-spring-pageable/src/main/java/org/openapitools/model/Animal.java @@ -9,8 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Animal.java b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Animal.java index d91e6d2ef40a..a44fd92f4fd6 100644 --- a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Animal.java +++ b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Animal.java @@ -9,9 +9,6 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.BigCat; -import org.openapitools.model.Cat; -import org.openapitools.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Cat.java b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Cat.java index ebd1416c5bd5..e1bbc4a11640 100644 --- a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Cat.java +++ b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Cat.java @@ -10,7 +10,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import org.openapitools.model.Animal; -import org.openapitools.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Animal.java b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Animal.java index e28dd10f0a7e..01f135da409d 100644 --- a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Animal.java +++ b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Animal.java @@ -7,9 +7,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import org.openapitools.virtualan.model.BigCat; -import org.openapitools.virtualan.model.Cat; -import org.openapitools.virtualan.model.Dog; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Cat.java b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Cat.java index 163822a26564..16b9999d8635 100644 --- a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Cat.java +++ b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Cat.java @@ -8,7 +8,6 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import org.openapitools.virtualan.model.Animal; -import org.openapitools.virtualan.model.BigCat; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot/src/main/java/org/openapitools/model/AnimalDto.java b/samples/server/petstore/springboot/src/main/java/org/openapitools/model/AnimalDto.java index ac989cfb9c37..0220a6a20f94 100644 --- a/samples/server/petstore/springboot/src/main/java/org/openapitools/model/AnimalDto.java +++ b/samples/server/petstore/springboot/src/main/java/org/openapitools/model/AnimalDto.java @@ -10,9 +10,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import org.openapitools.model.BigCatDto; -import org.openapitools.model.CatDto; -import org.openapitools.model.DogDto; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; diff --git a/samples/server/petstore/springboot/src/main/java/org/openapitools/model/CatDto.java b/samples/server/petstore/springboot/src/main/java/org/openapitools/model/CatDto.java index a990352b6073..f54ce49a24d0 100644 --- a/samples/server/petstore/springboot/src/main/java/org/openapitools/model/CatDto.java +++ b/samples/server/petstore/springboot/src/main/java/org/openapitools/model/CatDto.java @@ -11,7 +11,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import org.openapitools.model.AnimalDto; -import org.openapitools.model.BigCatDto; import org.openapitools.jackson.nullable.JsonNullable; import java.time.OffsetDateTime; import javax.validation.Valid; From cd3fc566206096c37fd0685b8996a972a5995d1b Mon Sep 17 00:00:00 2001 From: William Cheng Date: Mon, 20 Mar 2023 00:34:08 +0800 Subject: [PATCH 04/10] fix import for mapped models --- .../openapitools/codegen/CodegenModel.java | 8 +++-- .../openapitools/codegen/DefaultCodegen.java | 30 +++++++++++++------ .../languages/PythonClientCodegen.java | 11 ++++++- .../org/openapitools/client/model/Cat.java | 4 --- .../org/openapitools/client/model/Dog.java | 4 --- .../org/openapitools/client/model/Cat.java | 4 --- .../org/openapitools/client/model/Dog.java | 4 --- .../org/openapitools/client/model/Cat.java | 4 --- .../org/openapitools/client/model/Dog.java | 4 --- .../org/openapitools/client/model/Cat.java | 4 --- .../org/openapitools/client/model/Dog.java | 4 --- .../python-prior/petstore_api/model/animal.py | 9 ++++++ .../petstore_api/model/grandparent_animal.py | 13 ++++++++ .../petstore_api/model/parent_pet.py | 6 ++++ .../petstore_api/model/animal.py | 8 +++++ .../petstore_api/model/grandparent_animal.py | 12 ++++++++ .../petstore_api/model/parent_pet.py | 6 ++++ .../lib/src/model/bar_ref_or_value.dart | 2 ++ .../lib/src/model/entity.dart | 6 ++++ .../lib/src/model/entity_ref.dart | 2 ++ .../lib/src/model/foo_ref_or_value.dart | 2 ++ .../lib/src/model/pizza.dart | 1 + .../lib/src/model/animal.dart | 2 ++ .../python-prior/petstore_api/model/animal.py | 9 ++++++ .../petstore_api/model/grandparent_animal.py | 9 ++++++ .../petstore_api/model/parent_pet.py | 2 ++ 26 files changed, 126 insertions(+), 44 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java index dccecfd1626b..5a4571ca2d51 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java @@ -1214,11 +1214,15 @@ public void addDiscriminatorMappedModelsImports() { return; } - if (!this.hasChildren) {// no child + if (!this.hasChildren && // no child + (this.oneOf == null || this.oneOf.isEmpty()) && // not oneOf + (this.anyOf == null || this.anyOf.isEmpty())) { // not anyOf + //clear the mapping + discriminator.setMappedModels(null); return; } - // import child schemas + // import child schemas defined in mapped models for (CodegenDiscriminator.MappedModel mm : discriminator.getMappedModels()) { if (!"".equals(mm.getModelName())) { imports.add(mm.getModelName()); 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 2c505b00652e..fec517e95ab1 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 @@ -50,6 +50,7 @@ import org.openapitools.codegen.api.TemplatingEngineAdapter; import org.openapitools.codegen.config.GlobalSettings; import org.openapitools.codegen.examples.ExampleGenerator; +import org.openapitools.codegen.languages.PythonClientCodegen; import org.openapitools.codegen.languages.RustServerCodegen; import org.openapitools.codegen.meta.FeatureSet; import org.openapitools.codegen.meta.GeneratorMetadata; @@ -611,6 +612,7 @@ public Map getAllModels(Map objs) { /** * Loop through all models to update different flags (e.g. isSelfReference), children models, etc + * and update mapped models for import. * * @param objs Map of models * @return maps of models with various updates @@ -661,10 +663,16 @@ public Map updateAllModels(Map objs) { } // loop through properties of each model to detect self-reference + // and update mapped models for import for (ModelsMap entry : objs.values()) { for (ModelMap mo : entry.getModels()) { CodegenModel cm = mo.getModel(); removeSelfReferenceImports(cm); + + // python client generator uses its own logic + if (!this.getLegacyDiscriminatorBehavior() && !(this instanceof PythonClientCodegen)) { + cm.addDiscriminatorMappedModelsImports(); + } } } setCircularReferences(allModels); @@ -2655,9 +2663,6 @@ protected void updateModelForComposedSchema(CodegenModel m, Schema schema, Map(); addOneOfInterfaces.add(cm); + +// if (!this.getLegacyDiscriminatorBehavior()) { +// cm.addDiscriminatorMappedModelsImports(); +// } } public void addImportsToOneOfInterface(List> imports) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java index 3eecc392a80e..d11847146681 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java @@ -2438,8 +2438,17 @@ protected void updateModelForComposedSchema(CodegenModel m, Schema schema, Map Date: Mon, 20 Mar 2023 01:12:48 +0800 Subject: [PATCH 05/10] fix python --- .../src/main/java/org/openapitools/codegen/CodegenModel.java | 4 ++-- .../main/java/org/openapitools/codegen/DefaultCodegen.java | 5 ++--- .../client/petstore/python/petstore_api/model/animal.py | 3 +++ .../client/petstore/python/petstore_api/model/animal.pyi | 3 +++ .../petstore/python/petstore_api/model/grandparent_animal.py | 3 +++ .../python/petstore_api/model/grandparent_animal.pyi | 3 +++ .../client/petstore/python/petstore_api/model/parent_pet.py | 1 + .../client/petstore/python/petstore_api/model/parent_pet.pyi | 1 + 8 files changed, 18 insertions(+), 5 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java index 5a4571ca2d51..2615cf9f1d41 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java @@ -1209,12 +1209,12 @@ public String toString() { return sb.toString(); } - public void addDiscriminatorMappedModelsImports() { + public void addDiscriminatorMappedModelsImports(boolean cleanUpMappedModels) { if (discriminator == null || discriminator.getMappedModels() == null) { return; } - if (!this.hasChildren && // no child + if (cleanUpMappedModels && !this.hasChildren && // no child (this.oneOf == null || this.oneOf.isEmpty()) && // not oneOf (this.anyOf == null || this.anyOf.isEmpty())) { // not anyOf //clear the mapping 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 fec517e95ab1..345a80158e80 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 @@ -669,9 +669,8 @@ public Map updateAllModels(Map objs) { CodegenModel cm = mo.getModel(); removeSelfReferenceImports(cm); - // python client generator uses its own logic - if (!this.getLegacyDiscriminatorBehavior() && !(this instanceof PythonClientCodegen)) { - cm.addDiscriminatorMappedModelsImports(); + if (!this.getLegacyDiscriminatorBehavior()) { + cm.addDiscriminatorMappedModelsImports(!(this instanceof PythonClientCodegen)); } } } diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/animal.py b/samples/openapi3/client/petstore/python/petstore_api/model/animal.py index 8598aa4aa25a..10cc8231ca0b 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/animal.py +++ b/samples/openapi3/client/petstore/python/petstore_api/model/animal.py @@ -100,3 +100,6 @@ def __new__( _configuration=_configuration, **kwargs, ) + +from petstore_api.model.cat import Cat +from petstore_api.model.dog import Dog diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/animal.pyi b/samples/openapi3/client/petstore/python/petstore_api/model/animal.pyi index 8598aa4aa25a..10cc8231ca0b 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/animal.pyi +++ b/samples/openapi3/client/petstore/python/petstore_api/model/animal.pyi @@ -100,3 +100,6 @@ class Animal( _configuration=_configuration, **kwargs, ) + +from petstore_api.model.cat import Cat +from petstore_api.model.dog import Dog diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.py b/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.py index 36cf71d8561f..08f64735dc15 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.py +++ b/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.py @@ -90,3 +90,6 @@ def __new__( _configuration=_configuration, **kwargs, ) + +from petstore_api.model.child_cat import ChildCat +from petstore_api.model.parent_pet import ParentPet diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.pyi b/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.pyi index 36cf71d8561f..08f64735dc15 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.pyi +++ b/samples/openapi3/client/petstore/python/petstore_api/model/grandparent_animal.pyi @@ -90,3 +90,6 @@ class GrandparentAnimal( _configuration=_configuration, **kwargs, ) + +from petstore_api.model.child_cat import ChildCat +from petstore_api.model.parent_pet import ParentPet diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.py b/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.py index 621430733f92..6988fb92ef7e 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.py +++ b/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.py @@ -72,4 +72,5 @@ def __new__( **kwargs, ) +from petstore_api.model.child_cat import ChildCat from petstore_api.model.grandparent_animal import GrandparentAnimal diff --git a/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.pyi b/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.pyi index 621430733f92..6988fb92ef7e 100644 --- a/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.pyi +++ b/samples/openapi3/client/petstore/python/petstore_api/model/parent_pet.pyi @@ -72,4 +72,5 @@ class ParentPet( **kwargs, ) +from petstore_api.model.child_cat import ChildCat from petstore_api.model.grandparent_animal import GrandparentAnimal From 67bd3cc46e00e4357b493b782b9793d8f763f115 Mon Sep 17 00:00:00 2001 From: William Cheng Date: Mon, 20 Mar 2023 01:27:51 +0800 Subject: [PATCH 06/10] code clean up --- .../java/org/openapitools/codegen/CodegenModel.java | 5 +++++ .../org/openapitools/codegen/DefaultCodegen.java | 13 ++----------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java index 2615cf9f1d41..988a7eb03671 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java @@ -1209,6 +1209,11 @@ public String toString() { return sb.toString(); } + /* + * To clean up mapped models if needed and add mapped models to imports + * + * @param cleanUpMappedModels Clean up mapped models if set to true + */ public void addDiscriminatorMappedModelsImports(boolean cleanUpMappedModels) { if (discriminator == null || discriminator.getMappedModels() == null) { return; 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 345a80158e80..258fd45d9cce 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 @@ -670,6 +670,8 @@ public Map updateAllModels(Map objs) { removeSelfReferenceImports(cm); if (!this.getLegacyDiscriminatorBehavior()) { + // skip cleaning up mapped models for python client generator + // which uses its own logic cm.addDiscriminatorMappedModelsImports(!(this instanceof PythonClientCodegen)); } } @@ -2817,9 +2819,6 @@ protected void updateModelForComposedSchema(CodegenModel m, Schema schema, Map(); addOneOfInterfaces.add(cm); - -// if (!this.getLegacyDiscriminatorBehavior()) { -// cm.addDiscriminatorMappedModelsImports(); -// } } public void addImportsToOneOfInterface(List> imports) { From 5c9671e6ec222bd545cba384f2ccef357af0980c Mon Sep 17 00:00:00 2001 From: William Cheng Date: Mon, 20 Mar 2023 21:31:35 +0800 Subject: [PATCH 07/10] fix dart client import --- .../languages/DartDioClientCodegen.java | 18 ++++++++++++------ .../lib/src/model/bar_ref_or_value.dart | 2 -- .../lib/src/model/entity.dart | 12 ++++++------ .../lib/src/model/entity_ref.dart | 4 ++-- .../lib/src/model/foo_ref_or_value.dart | 2 -- .../lib/src/model/pizza.dart | 2 +- .../oneof_primitive/lib/src/model/example.dart | 2 +- .../lib/src/model/animal.dart | 4 ++-- 8 files changed, 24 insertions(+), 22 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java index 4cc8fddad64a..a5cd0e32ddf3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java @@ -337,12 +337,6 @@ public ModelsMap postProcessModels(ModelsMap objs) { objs = super.postProcessModels(objs); List models = objs.getModels(); ProcessUtils.addIndexToProperties(models, 1); - - for (ModelMap mo : models) { - CodegenModel cm = mo.getModel(); - cm.imports = rewriteImports(cm.imports, true); - cm.vendorExtensions.put("x-has-vars", !cm.vars.isEmpty()); - } return objs; } @@ -583,6 +577,16 @@ public Map postProcessAllModels(Map objs) adaptToDartInheritance(objs); syncRootTypesWithInnerVars(objs); } + + // loop through models to update the imports + for (ModelsMap entry : objs.values()) { + for (ModelMap mo : entry.getModels()) { + CodegenModel cm = mo.getModel(); + cm.imports = rewriteImports(cm.imports, true); + cm.vendorExtensions.put("x-has-vars", !cm.vars.isEmpty()); + } + } + return objs; } @@ -730,6 +734,8 @@ private Set rewriteImports(Set originalImports, boolean isModel) resultImports.add(i); } else if (importMapping().containsKey(modelImport)) { resultImports.add(importMapping().get(modelImport)); + } else if (modelImport.startsWith("package:")) { + resultImports.add(modelImport); } else { resultImports.add("package:" + pubName + "/" + sourceFolder + "/" + modelPackage() + "/" + underscore(modelImport) + ".dart"); } diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/bar_ref_or_value.dart b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/bar_ref_or_value.dart index cff553b394e1..4af61384ab76 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/bar_ref_or_value.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/bar_ref_or_value.dart @@ -3,9 +3,7 @@ // // ignore_for_file: unused_element -import 'Bar'; import 'package:openapi/src/model/bar_ref.dart'; -import 'BarRef'; import 'package:openapi/src/model/bar.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity.dart b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity.dart index e846b6d9d721..7e27fab47387 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity.dart @@ -3,14 +3,14 @@ // // ignore_for_file: unused_element -import 'Pizza'; -import 'Bar'; import 'package:openapi/src/model/extensible.dart'; -import 'Foo'; -import 'BarCreate'; -import 'Pasta'; +import 'package:openapi/src/model/pizza_speziale.dart'; +import 'package:openapi/src/model/foo.dart'; +import 'package:openapi/src/model/pizza.dart'; import 'package:openapi/src/model/addressable.dart'; -import 'PizzaSpeziale'; +import 'package:openapi/src/model/pasta.dart'; +import 'package:openapi/src/model/bar_create.dart'; +import 'package:openapi/src/model/bar.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity_ref.dart b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity_ref.dart index 4d064d188971..7502c94dd7f3 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity_ref.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/entity_ref.dart @@ -4,9 +4,9 @@ // ignore_for_file: unused_element import 'package:openapi/src/model/extensible.dart'; +import 'package:openapi/src/model/bar_ref.dart'; import 'package:openapi/src/model/addressable.dart'; -import 'BarRef'; -import 'FooRef'; +import 'package:openapi/src/model/foo_ref.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/foo_ref_or_value.dart b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/foo_ref_or_value.dart index 62ba3d36b303..af3e4875d9d6 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/foo_ref_or_value.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/foo_ref_or_value.dart @@ -4,8 +4,6 @@ // ignore_for_file: unused_element import 'package:openapi/src/model/foo.dart'; -import 'Foo'; -import 'FooRef'; import 'package:openapi/src/model/foo_ref.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/pizza.dart b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/pizza.dart index 0a0d2e8d9b50..14c06db06d7e 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/pizza.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/lib/src/model/pizza.dart @@ -3,7 +3,7 @@ // // ignore_for_file: unused_element -import 'PizzaSpeziale'; +import 'package:openapi/src/model/pizza_speziale.dart'; import 'package:openapi/src/model/entity.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_primitive/lib/src/model/example.dart b/samples/openapi3/client/petstore/dart-dio/oneof_primitive/lib/src/model/example.dart index 799b77e4e178..0008476737e1 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_primitive/lib/src/model/example.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_primitive/lib/src/model/example.dart @@ -4,7 +4,7 @@ // ignore_for_file: unused_element import 'package:openapi/src/model/child.dart'; -import 'dart:core'; +import 'package:openapi/src/model/dart:core.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; import 'package:one_of/one_of.dart'; diff --git a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart index 6af9cdad7354..20b3f9f50b71 100644 --- a/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart +++ b/samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/lib/src/model/animal.dart @@ -3,8 +3,8 @@ // // ignore_for_file: unused_element -import 'Cat'; -import 'Dog'; +import 'package:openapi/src/model/dog.dart'; +import 'package:openapi/src/model/cat.dart'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; From 045476dfb2d4eb6972c320e5efc5418dca593dc5 Mon Sep 17 00:00:00 2001 From: William Cheng Date: Mon, 20 Mar 2023 21:45:14 +0800 Subject: [PATCH 08/10] fix dart:core import --- .../openapitools/codegen/languages/DartDioClientCodegen.java | 4 +++- .../dart-dio/oneof_primitive/lib/src/model/example.dart | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java index a5cd0e32ddf3..c311ec1b2561 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java @@ -734,7 +734,9 @@ private Set rewriteImports(Set originalImports, boolean isModel) resultImports.add(i); } else if (importMapping().containsKey(modelImport)) { resultImports.add(importMapping().get(modelImport)); - } else if (modelImport.startsWith("package:")) { + } else if ("dart:core".equals(modelImport)) { // import dart:core directly + resultImports.add(modelImport); + } else if (modelImport.startsWith("package:")) { // e.g. package:openapi/src/model/child.dart resultImports.add(modelImport); } else { resultImports.add("package:" + pubName + "/" + sourceFolder + "/" + modelPackage() + "/" + underscore(modelImport) + ".dart"); diff --git a/samples/openapi3/client/petstore/dart-dio/oneof_primitive/lib/src/model/example.dart b/samples/openapi3/client/petstore/dart-dio/oneof_primitive/lib/src/model/example.dart index 0008476737e1..799b77e4e178 100644 --- a/samples/openapi3/client/petstore/dart-dio/oneof_primitive/lib/src/model/example.dart +++ b/samples/openapi3/client/petstore/dart-dio/oneof_primitive/lib/src/model/example.dart @@ -4,7 +4,7 @@ // ignore_for_file: unused_element import 'package:openapi/src/model/child.dart'; -import 'package:openapi/src/model/dart:core.dart'; +import 'dart:core'; import 'package:built_value/built_value.dart'; import 'package:built_value/serializer.dart'; import 'package:one_of/one_of.dart'; From 7027fa9f39b1de90406ff3bd103fce121c73efcd Mon Sep 17 00:00:00 2001 From: William Cheng Date: Wed, 22 Mar 2023 11:47:12 +0800 Subject: [PATCH 09/10] better import --- .../openapitools/codegen/languages/DartDioClientCodegen.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java index c311ec1b2561..6d127c990f54 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioClientCodegen.java @@ -734,7 +734,7 @@ private Set rewriteImports(Set originalImports, boolean isModel) resultImports.add(i); } else if (importMapping().containsKey(modelImport)) { resultImports.add(importMapping().get(modelImport)); - } else if ("dart:core".equals(modelImport)) { // import dart:core directly + } else if (modelImport.startsWith("dart:")) { // import dart:* directly resultImports.add(modelImport); } else if (modelImport.startsWith("package:")) { // e.g. package:openapi/src/model/child.dart resultImports.add(modelImport); From 31ad3e361e8e1bb0d419aac6148d3ad40a20bd58 Mon Sep 17 00:00:00 2001 From: William Cheng Date: Wed, 22 Mar 2023 19:49:21 +0800 Subject: [PATCH 10/10] add tests --- .../codegen/java/JavaClientCodegenTest.java | 184 ++++++++++++------ .../src/test/resources/bugs/issue_14917.yaml | 66 +++++++ 2 files changed, 195 insertions(+), 55 deletions(-) create mode 100644 modules/openapi-generator/src/test/resources/bugs/issue_14917.yaml diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/JavaClientCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/JavaClientCodegenTest.java index 847eb43b2635..d6fa2caebaa7 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/JavaClientCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/JavaClientCodegenTest.java @@ -903,7 +903,7 @@ public void testAnyType() { /** * See https://github.com/OpenAPITools/openapi-generator/issues/4803 - * + *

* UPDATE: the following test has been ignored due to https://github.com/OpenAPITools/openapi-generator/pull/11081/ * We will contact the contributor of the following test to see if the fix will break their use cases and * how we can fix it accordingly. @@ -951,7 +951,7 @@ public void testRestTemplateFormMultipart() throws IOException { /** * See https://github.com/OpenAPITools/openapi-generator/issues/4803 - * + *

* UPDATE: the following test has been ignored due to https://github.com/OpenAPITools/openapi-generator/pull/11081/ * We will contact the contributor of the following test to see if the fix will break their use cases and * how we can fix it accordingly. @@ -1007,23 +1007,23 @@ public void shouldGenerateBlockingAndNoBlockingOperationsForWebClient() throws I output.deleteOnExit(); final CodegenConfigurator configurator = new CodegenConfigurator() - .setGeneratorName("java") - .setLibrary(JavaClientCodegen.WEBCLIENT) - .setAdditionalProperties(properties) - .setInputSpec("src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml") - .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + .setGeneratorName("java") + .setLibrary(JavaClientCodegen.WEBCLIENT) + .setAdditionalProperties(properties) + .setInputSpec("src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml") + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); DefaultGenerator generator = new DefaultGenerator(); Map files = generator.opts(configurator.toClientOptInput()).generate().stream() - .collect(Collectors.toMap(File::getName, Function.identity())); + .collect(Collectors.toMap(File::getName, Function.identity())); JavaFileAssert.assertThat(files.get("StoreApi.java")) - .assertMethod("getInventory").hasReturnType("Mono>") //explicit 'x-webclient-blocking: false' which overrides global config - .toFileAssert() - .assertMethod("placeOrder").hasReturnType("Order"); // use global config + .assertMethod("getInventory").hasReturnType("Mono>") //explicit 'x-webclient-blocking: false' which overrides global config + .toFileAssert() + .assertMethod("placeOrder").hasReturnType("Order"); // use global config JavaFileAssert.assertThat(files.get("PetApi.java")) - .assertMethod("findPetsByStatus").hasReturnType("List"); // explicit 'x-webclient-blocking: true' which overrides global config + .assertMethod("findPetsByStatus").hasReturnType("List"); // explicit 'x-webclient-blocking: true' which overrides global config } @Test @@ -1057,7 +1057,7 @@ public void testAllowModelWithNoProperties() throws Exception { /** * See https://github.com/OpenAPITools/openapi-generator/issues/6715 - * + *

* UPDATE: the following test has been ignored due to https://github.com/OpenAPITools/openapi-generator/pull/11081/ * We will contact the contributor of the following test to see if the fix will break their use cases and * how we can fix it accordingly. @@ -1151,7 +1151,7 @@ private CodegenOperation getByOperationId(List codegenOperatio .orElseThrow(() -> new IllegalStateException(String.format(Locale.ROOT, "Operation with id [%s] does not exist", operationId))); } - private Optional getByCriteria(List codegenOperations, Predicate filter){ + private Optional getByCriteria(List codegenOperations, Predicate filter) { return codegenOperations.stream() .filter(filter) .findFirst(); @@ -1190,7 +1190,7 @@ public void testCustomMethodParamsAreCamelizedWhenUsingFeign() throws IOExceptio /** * See https://github.com/OpenAPITools/openapi-generator/issues/6715 - * + *

* UPDATE: the following test has been ignored due to https://github.com/OpenAPITools/openapi-generator/pull/11081/ * We will contact the contributor of the following test to see if the fix will break their use cases and * how we can fix it accordingly. @@ -1554,24 +1554,24 @@ public void testMicroprofileGenerateCorrectJsonbCreator_issue12622() throws Exce output.deleteOnExit(); final CodegenConfigurator configurator = new CodegenConfigurator() - .setAdditionalProperties(properties) - .setGeneratorName("java") - .setLibrary(JavaClientCodegen.MICROPROFILE) - .setInputSpec("src/test/resources/bugs/issue_12622.json") - .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + .setAdditionalProperties(properties) + .setGeneratorName("java") + .setLibrary(JavaClientCodegen.MICROPROFILE) + .setInputSpec("src/test/resources/bugs/issue_12622.json") + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); final ClientOptInput clientOptInput = configurator.toClientOptInput(); DefaultGenerator generator = new DefaultGenerator(); Map files = generator.opts(clientOptInput).generate().stream() - .collect(Collectors.toMap(File::getName, Function.identity())); + .collect(Collectors.toMap(File::getName, Function.identity())); JavaFileAssert.assertThat(files.get("Foo.java")) - .assertConstructor("String", "Integer") - .hasParameter("b") + .assertConstructor("String", "Integer") + .hasParameter("b") .assertParameterAnnotations() .containsWithNameAndAttributes("JsonbProperty", ImmutableMap.of("value", "\"b\"", "nillable", "true")) - .toParameter().toConstructor() - .hasParameter("c") + .toParameter().toConstructor() + .hasParameter("c") .assertParameterAnnotations() .containsWithNameAndAttributes("JsonbProperty", ImmutableMap.of("value", "\"c\"")); } @@ -1585,24 +1585,24 @@ public void testWebClientJsonCreatorWithNullable_issue12790() throws Exception { output.deleteOnExit(); final CodegenConfigurator configurator = new CodegenConfigurator() - .setAdditionalProperties(properties) - .setGeneratorName("java") - .setLibrary(JavaClientCodegen.WEBCLIENT) - .setInputSpec("src/test/resources/bugs/issue_12790.yaml") - .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + .setAdditionalProperties(properties) + .setGeneratorName("java") + .setLibrary(JavaClientCodegen.WEBCLIENT) + .setInputSpec("src/test/resources/bugs/issue_12790.yaml") + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); final ClientOptInput clientOptInput = configurator.toClientOptInput(); DefaultGenerator generator = new DefaultGenerator(); Map files = generator.opts(clientOptInput).generate().stream() - .collect(Collectors.toMap(File::getName, Function.identity())); + .collect(Collectors.toMap(File::getName, Function.identity())); JavaFileAssert.assertThat(files.get("TestObject.java")) - .printFileContent() - .assertConstructor("String", "String") - .bodyContainsLines( - "this.nullableProperty = nullableProperty == null ? JsonNullable.undefined() : JsonNullable.of(nullableProperty);", - "this.notNullableProperty = notNullableProperty;" - ); + .printFileContent() + .assertConstructor("String", "String") + .bodyContainsLines( + "this.nullableProperty = nullableProperty == null ? JsonNullable.undefined() : JsonNullable.of(nullableProperty);", + "this.notNullableProperty = notNullableProperty;" + ); } @Test @@ -1631,9 +1631,9 @@ public void testRestTemplateResponseTypeWithUseAbstractionForFiles() throws IOEx Path defaultApi = Paths.get(output + "/src/main/java/xyz/abcdef/api/ResourceApi.java"); TestUtils.assertFileContains(defaultApi, - "org.springframework.core.io.Resource resourceInResponse()", - "ResponseEntity resourceInResponseWithHttpInfo()", - "ParameterizedTypeReference localReturnType = new ParameterizedTypeReference()" + "org.springframework.core.io.Resource resourceInResponse()", + "ResponseEntity resourceInResponseWithHttpInfo()", + "ParameterizedTypeReference localReturnType = new ParameterizedTypeReference()" ); } @@ -1689,13 +1689,13 @@ public void testReferencedHeader2() throws Exception { JavaFileAssert.assertThat(files.get("DefaultApi.java")) .assertMethod("operationWithHttpInfo") - .hasParameter("requestBody") - .assertParameterAnnotations() - .containsWithName("NotNull") + .hasParameter("requestBody") + .assertParameterAnnotations() + .containsWithName("NotNull") .toParameter().toMethod() - .hasParameter("xNonNullHeaderParameter") - .assertParameterAnnotations() - .containsWithName("NotNull"); + .hasParameter("xNonNullHeaderParameter") + .assertParameterAnnotations() + .containsWithName("NotNull"); } @Test @@ -1707,18 +1707,18 @@ public void testNativeClientExplodedQueryParamWithArrayProperty() throws IOExcep output.deleteOnExit(); final CodegenConfigurator configurator = new CodegenConfigurator() - .setGeneratorName("java") - .setLibrary(JavaClientCodegen.NATIVE) - .setAdditionalProperties(properties) - .setInputSpec("src/test/resources/3_0/exploded-query-param-array.yaml") - .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + .setGeneratorName("java") + .setLibrary(JavaClientCodegen.NATIVE) + .setAdditionalProperties(properties) + .setInputSpec("src/test/resources/3_0/exploded-query-param-array.yaml") + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); final ClientOptInput clientOptInput = configurator.toClientOptInput(); DefaultGenerator generator = new DefaultGenerator(); generator.opts(clientOptInput).generate(); TestUtils.assertFileContains(Paths.get(output + "/src/main/java/xyz/abcdef/api/DefaultApi.java"), - "localVarQueryParams.addAll(ApiClient.parameterToPairs(\"multi\", \"values\", queryObject.getValues()));" + "localVarQueryParams.addAll(ApiClient.parameterToPairs(\"multi\", \"values\", queryObject.getValues()));" ); } @@ -1763,7 +1763,7 @@ public void testDiscriminatorWithMappingIssue14731() throws IOException { output.deleteOnExit(); String outputPath = output.getAbsolutePath().replace('\\', '/'); OpenAPI openAPI = new OpenAPIParser() - .readLocation("src/test/resources/bugs/issue_14731.yaml", null, new ParseOptions()).getOpenAPI(); + .readLocation("src/test/resources/bugs/issue_14731.yaml", null, new ParseOptions()).getOpenAPI(); JavaClientCodegen codegen = new JavaClientCodegen(); codegen.setOutputDir(output.getAbsolutePath()); @@ -1801,7 +1801,7 @@ public void testDiscriminatorWithoutMappingIssue14731() throws IOException { output.deleteOnExit(); String outputPath = output.getAbsolutePath().replace('\\', '/'); OpenAPI openAPI = new OpenAPIParser() - .readLocation("src/test/resources/bugs/issue_14731.yaml", null, new ParseOptions()).getOpenAPI(); + .readLocation("src/test/resources/bugs/issue_14731.yaml", null, new ParseOptions()).getOpenAPI(); JavaClientCodegen codegen = new JavaClientCodegen(); codegen.setOutputDir(output.getAbsolutePath()); @@ -1834,4 +1834,78 @@ public void testDiscriminatorWithoutMappingIssue14731() throws IOException { assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/ChildWithoutMappingADTO.java"), "@JsonTypeName"); assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/ChildWithoutMappingBDTO.java"), "@JsonTypeName"); } -} + + @Test + public void testForJavaNativeJsonSubtype() throws IOException { + File output = Files.createTempDirectory("test").toFile().getCanonicalFile(); + output.deleteOnExit(); + String outputPath = output.getAbsolutePath().replace('\\', '/'); + OpenAPI openAPI = new OpenAPIParser() + .readLocation("src/test/resources/bugs/issue_14917.yaml", null, new ParseOptions()).getOpenAPI(); + + JavaClientCodegen codegen = new JavaClientCodegen(); + codegen.setOutputDir(output.getAbsolutePath()); + + ClientOptInput input = new ClientOptInput(); + input.openAPI(openAPI); + input.config(codegen); + + DefaultGenerator generator = new DefaultGenerator(); + codegen.setLibrary(JavaClientCodegen.NATIVE); + + generator.opts(input).generate(); + + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "mappings.put(\"Cat\", Cat.class)"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "@JsonSubTypes"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "mappings.put(\"cat\", Cat.class);"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "mappings.put(\"dog\", Dog.class);"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "mappings.put(\"lizard\", Lizard.class);"); + + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Cat.class, name = \"cat\")"); + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Dog.class, name = \"dog\")"); + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Lizard.class, name = \"lizard\")"); + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "mappings.put(\"cat\", Cat.class)"); + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "mappings.put(\"dog\", Dog.class)"); + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "mappings.put(\"lizard\", Lizard.class)"); + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "mappings.put(\"Pet\", Pet.class)"); + + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Cat.class, name = \"Cat\")"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Dog.class, name = \"Dog\")"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Lizard.class, name = \"Lizard\")"); + } + + @Test + public void testForJavaApacheHttpClientJsonSubtype() throws IOException { + File output = Files.createTempDirectory("test").toFile().getCanonicalFile(); + output.deleteOnExit(); + String outputPath = output.getAbsolutePath().replace('\\', '/'); + OpenAPI openAPI = new OpenAPIParser() + .readLocation("src/test/resources/bugs/issue_14917.yaml", null, new ParseOptions()).getOpenAPI(); + + JavaClientCodegen codegen = new JavaClientCodegen(); + codegen.setOutputDir(output.getAbsolutePath()); + + ClientOptInput input = new ClientOptInput(); + input.openAPI(openAPI); + input.config(codegen); + + DefaultGenerator generator = new DefaultGenerator(); + codegen.setLibrary(JavaClientCodegen.APACHE); + + generator.opts(input).generate(); + + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = \"petType\", visible = true)"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "mappings.put"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "@JsonSubTypes.Type(value = Cat.class, name = \"cat\")"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "@JsonSubTypes.Type(value = Dog.class, name = \"dog\")"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Cat.java"), "@JsonSubTypes.Type(value = Lizard.class, name = \"lizard\")"); + + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = \"petType\", visible = true)"); + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Cat.class, name = \"cat\")"); + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Dog.class, name = \"dog\")"); + assertFileContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Lizard.class, name = \"lizard\")"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Cat.class, name = \"Cat\")"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Dog.class, name = \"Dog\")"); + assertFileNotContains(Paths.get(outputPath + "/src/main/java/org/openapitools/client/model/Pet.java"), "@JsonSubTypes.Type(value = Lizard.class, name = \"Lizard\")"); + } +} \ No newline at end of file diff --git a/modules/openapi-generator/src/test/resources/bugs/issue_14917.yaml b/modules/openapi-generator/src/test/resources/bugs/issue_14917.yaml new file mode 100644 index 000000000000..97ea40cac495 --- /dev/null +++ b/modules/openapi-generator/src/test/resources/bugs/issue_14917.yaml @@ -0,0 +1,66 @@ +openapi: 3.0.0 +info: + title: test + description: >- + test schema + version: 1.0.0 +servers: + - url: 'http://test.com' + description: stage +paths: + /demo: + get: + summary: placeholder summary + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' +components: + schemas: + AllPets: + type: object + properties: + pets: + type: array + items: + $ref: '#/components/schemas/Pet' + Pet: + type: object + required: + - petType + properties: + petType: + type: string + discriminator: + propertyName: petType + mapping: + cat: '#/components/schemas/Cat' + dog: '#/components/schemas/Dog' + lizard: '#/components/schemas/Lizard' + Cat: + allOf: + - $ref: '#/components/schemas/Pet' + - type: object + # all other properties specific to a `Cat` + properties: + name: + type: string + Dog: + allOf: + - $ref: '#/components/schemas/Pet' + - type: object + # all other properties specific to a `Dog` + properties: + bark: + type: string + Lizard: + allOf: + - $ref: '#/components/schemas/Pet' + - type: object + # all other properties specific to a `Lizard` + properties: + lovesRocks: + type: boolean