Skip to content

Commit 467924d

Browse files
authored
Merge branch 'master' into edengh/javascript
2 parents 63141a2 + de09b63 commit 467924d

File tree

5 files changed

+29
-10
lines changed

5 files changed

+29
-10
lines changed

src/main/java/io/swagger/codegen/v3/generators/SchemaHandler.java

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
package io.swagger.codegen.v3.generators;
22

3-
import io.swagger.codegen.v3.*;
3+
import io.swagger.codegen.v3.CodegenModel;
4+
import io.swagger.codegen.v3.CodegenModelFactory;
5+
import io.swagger.codegen.v3.CodegenModelType;
6+
import io.swagger.codegen.v3.CodegenProperty;
47
import io.swagger.codegen.v3.generators.util.OpenAPIUtil;
58
import io.swagger.v3.oas.models.media.ComposedSchema;
9+
import io.swagger.v3.oas.models.media.ObjectSchema;
610
import io.swagger.v3.oas.models.media.Schema;
711
import org.apache.commons.lang3.StringUtils;
812

@@ -28,12 +32,16 @@ public void createCodegenModel(ComposedSchema composedProperty, CodegenProperty
2832
final List<Schema> anyOf = composedProperty.getAnyOf();
2933

3034
if (oneOf != null && !oneOf.isEmpty()) {
31-
final CodegenModel oneOfModel = createFromOneOfSchemas(oneOf);
32-
codegenProperty.vendorExtensions.put("oneOf-model", oneOfModel);
35+
if (!hasNonObjectSchema(oneOf)) {
36+
final CodegenModel oneOfModel = createFromOneOfSchemas(oneOf);
37+
codegenProperty.vendorExtensions.put("oneOf-model", oneOfModel);
38+
}
3339
}
3440
if (anyOf != null && !anyOf.isEmpty()) {
35-
final CodegenModel anyOfModel = createFromOneOfSchemas(anyOf);
36-
codegenProperty.vendorExtensions.put("anyOf-model", anyOfModel);
41+
if (!hasNonObjectSchema(anyOf)) {
42+
final CodegenModel anyOfModel = createFromOneOfSchemas(anyOf);
43+
codegenProperty.vendorExtensions.put("anyOf-model", anyOfModel);
44+
}
3745
}
3846

3947
}
@@ -173,4 +181,14 @@ private void configureModel(CodegenModel codegenModel, String name) {
173181
codegenModel.classFilename = codegenConfig.toModelFilename(name);
174182
codegenModel.vendorExtensions.put("x-is-composed-model", Boolean.TRUE);
175183
}
184+
185+
private boolean hasNonObjectSchema(List<Schema> schemas) {
186+
for (Schema schema : schemas) {
187+
boolean hasNonObjectSchema = (!(schema instanceof ObjectSchema)) || (schema.getProperties() != null && !schema.getProperties().isEmpty());
188+
if (hasNonObjectSchema) {
189+
return true;
190+
}
191+
}
192+
return false;
193+
}
176194
}

src/main/resources/handlebars/JavaJaxRS/cxf/pojo.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#interfa
7878
return {{name}};
7979
}{{/is}}{{/is}}{{#is this 'enum'}}{{#is this 'map-container'}}public {{{datatypeWithEnum}}} {{#is this 'boolean'}}is{{/is}}{{getter}}() {
8080
return {{name}};
81-
}{{/is}}{{/is}}{{#isNot this 'enum'}}public {{{datatypeWithEnum}}} {{#is this 'boolean'}}is{{/is}}{{getter}}() {
81+
}{{/is}}{{/is}}{{#isNot this 'enum'}}public {{{datatypeWithEnum}}} {{getter}}() {
8282
return {{name}};
8383
}{{/isNot}}
8484

src/main/resources/handlebars/JavaSpring/libraries/spring-boot/pom.mustache

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@
99
<java.version>{{#java8}}1.8{{/java8}}{{^java8}}1.7{{/java8}}</java.version>
1010
<maven.compiler.source>${java.version}</maven.compiler.source>
1111
<maven.compiler.target>${java.version}</maven.compiler.target>
12-
<springfox-version>2.7.0</springfox-version>
12+
<springfox-version>2.9.2</springfox-version>
1313
</properties>
1414
<parent>
1515
<groupId>org.springframework.boot</groupId>
1616
<artifactId>spring-boot-starter-parent</artifactId>
17-
<version>1.5.9.RELEASE</version>
17+
<version>1.5.22.RELEASE</version>
1818
</parent>
1919
<build>
2020
<sourceDirectory>src/main/java</sourceDirectory>

src/main/resources/mustache/JavaSpring/libraries/spring-boot/pom.mustache

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@
99
<java.version>{{#java8}}1.8{{/java8}}{{^java8}}1.7{{/java8}}</java.version>
1010
<maven.compiler.source>${java.version}</maven.compiler.source>
1111
<maven.compiler.target>${java.version}</maven.compiler.target>
12-
<springfox-version>2.7.0</springfox-version>
12+
<springfox-version>2.9.2</springfox-version>
1313
</properties>
1414
<parent>
1515
<groupId>org.springframework.boot</groupId>
1616
<artifactId>spring-boot-starter-parent</artifactId>
17-
<version>1.5.9.RELEASE</version>
17+
<version>1.5.22.RELEASE</version>
1818
</parent>
1919
<build>
2020
<sourceDirectory>src/main/java</sourceDirectory>

src/test/java/io/swagger/codegen/v3/generators/java/JavaModelTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1032,4 +1032,5 @@ public void generateModel() throws Exception {
10321032
Assert.assertTrue(orderFile.exists());
10331033
folder.delete();
10341034
}
1035+
10351036
}

0 commit comments

Comments
 (0)