Skip to content

Commit 0f38d0c

Browse files
authored
Merge branch 'master' into ts-angular-ModuleWithProviders-fx
2 parents 94aab12 + fc0e8c5 commit 0f38d0c

File tree

171 files changed

+6933
-216
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

171 files changed

+6933
-216
lines changed

pom.xml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<groupId>io.swagger.codegen.v3</groupId>
1414
<artifactId>swagger-codegen-generators</artifactId>
15-
<version>1.0.21-SNAPSHOT</version>
15+
<version>1.0.24-SNAPSHOT</version>
1616
<packaging>jar</packaging>
1717

1818
<build>
@@ -252,15 +252,15 @@
252252
</dependency>
253253
</dependencies>
254254
<properties>
255-
<swagger-codegen-version>3.0.21-SNAPSHOT</swagger-codegen-version>
256-
<swagger-parser-version>2.0.21-SNAPSHOT</swagger-parser-version>
257-
<swagger-core-version>2.1.2</swagger-core-version>
255+
<swagger-codegen-version>3.0.24-SNAPSHOT</swagger-codegen-version>
256+
<swagger-parser-version>2.0.23</swagger-parser-version>
257+
<swagger-core-version>2.1.4</swagger-core-version>
258258
<jackson-version>2.10.3</jackson-version>
259259
<scala-version>2.11.1</scala-version>
260260
<felix-version>3.3.0</felix-version>
261261
<commons-io-version>2.4</commons-io-version>
262262
<commons-cli-version>1.2</commons-cli-version>
263-
<junit-version>4.8.1</junit-version>
263+
<junit-version>4.13.1</junit-version>
264264
<maven-plugin-version>1.0.0</maven-plugin-version>
265265
<commons-lang-version>3.4</commons-lang-version>
266266
<slf4j-version>1.7.12</slf4j-version>

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

Lines changed: 72 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@
111111
import static io.swagger.codegen.v3.generators.handlebars.ExtensionHelper.getBooleanValue;
112112

113113
public abstract class DefaultCodegenConfig implements CodegenConfig {
114-
private static final Logger LOGGER = LoggerFactory.getLogger(DefaultCodegenConfig.class);
114+
protected static final Logger LOGGER = LoggerFactory.getLogger(DefaultCodegenConfig.class);
115115

116116
public static final String DEFAULT_CONTENT_TYPE = "application/json";
117117
public static final String REQUEST_BODY_NAME = "body";
@@ -358,12 +358,24 @@ public void processModelEnums(Map<String, Object> objs) {
358358
}
359359
cm.allowableValues.put("enumVars", enumVars);
360360
}
361+
updateCodegenModelEnumVars(cm);
362+
}
363+
}
361364

362-
// update codegen property enum with proper naming convention
363-
// and handling of numbers, special characters
364-
for (CodegenProperty var : cm.vars) {
365-
updateCodegenPropertyEnum(var);
366-
}
365+
public boolean isPrimivite(String datatype) {
366+
return "number".equalsIgnoreCase(datatype)
367+
|| "integer".equalsIgnoreCase(datatype)
368+
|| "boolean".equalsIgnoreCase(datatype);
369+
}
370+
371+
/**
372+
* update codegen property enum with proper naming convention
373+
* and handling of numbers, special characters
374+
* @param codegenModel
375+
*/
376+
protected void updateCodegenModelEnumVars(CodegenModel codegenModel) {
377+
for (CodegenProperty var : codegenModel.vars) {
378+
updateCodegenPropertyEnum(var);
367379
}
368380
}
369381

@@ -1327,6 +1339,8 @@ public CodegenModel fromModel(String name, Schema schema, Map<String, Schema> al
13271339
}
13281340
codegenModel.getVendorExtensions().put(CodegenConstants.IS_ALIAS_EXT_NAME, typeAliases.containsKey(name));
13291341

1342+
codegenModel.discriminator = schema.getDiscriminator();
1343+
13301344
if (schema.getXml() != null) {
13311345
codegenModel.xmlPrefix = schema.getXml().getPrefix();
13321346
codegenModel.xmlNamespace = schema.getXml().getNamespace();
@@ -1392,11 +1406,8 @@ else if (schema instanceof ComposedSchema) {
13921406
// interfaces (intermediate models)
13931407
if (allOf != null && !allOf.isEmpty()) {
13941408

1395-
if (schema.getDiscriminator() != null) {
1396-
codegenModel.discriminator = schema.getDiscriminator();
1397-
if (codegenModel.discriminator != null && codegenModel.discriminator.getPropertyName() != null) {
1398-
codegenModel.discriminator.setPropertyName(toVarName(codegenModel.discriminator.getPropertyName()));
1399-
}
1409+
if (codegenModel.discriminator != null && codegenModel.discriminator.getPropertyName() != null) {
1410+
codegenModel.discriminator.setPropertyName(toVarName(codegenModel.discriminator.getPropertyName()));
14001411
}
14011412

14021413
for (int i = 0; i < allOf.size(); i++) {
@@ -1460,6 +1471,9 @@ else if (schema instanceof ComposedSchema) {
14601471
// comment out below as allowableValues is not set in post processing model enum
14611472
codegenModel.allowableValues = new HashMap<String, Object>();
14621473
codegenModel.allowableValues.put("values", schema.getEnum());
1474+
if (codegenModel.dataType.equals("BigDecimal")) {
1475+
addImport(codegenModel, "BigDecimal");
1476+
}
14631477
}
14641478
addVars(codegenModel, schema.getProperties(), schema.getRequired());
14651479
}
@@ -1469,6 +1483,7 @@ else if (schema instanceof ComposedSchema) {
14691483
postProcessModelProperty(codegenModel, prop);
14701484
}
14711485
}
1486+
14721487
return codegenModel;
14731488
}
14741489

@@ -2290,7 +2305,26 @@ public CodegenResponse fromResponse(String responseCode, ApiResponse response) {
22902305
final Schema responseSchema = getSchemaFromResponse(response);
22912306
codegenResponse.schema = responseSchema;
22922307
codegenResponse.message = escapeText(response.getDescription());
2293-
// TODO: codegenResponse.examples = toExamples(response.getExamples());
2308+
2309+
if (response.getContent()!= null) {
2310+
Map<String, Object> examples = new HashMap<>();
2311+
for (String name : response.getContent().keySet()) {
2312+
if (response.getContent().get(name) != null) {
2313+
2314+
if (response.getContent().get(name).getExample() != null) {
2315+
examples.put(name, response.getContent().get(name).getExample());
2316+
}
2317+
if (response.getContent().get(name).getExamples() != null) {
2318+
2319+
for (String exampleName : response.getContent().get(name).getExamples().keySet()) {
2320+
examples.put(exampleName, response.getContent().get(name).getExamples().get(exampleName).getValue());
2321+
}
2322+
}
2323+
}
2324+
}
2325+
codegenResponse.examples = toExamples(examples);
2326+
}
2327+
22942328
codegenResponse.jsonSchema = Json.pretty(response);
22952329
if (response.getExtensions() != null && !response.getExtensions().isEmpty()) {
22962330
codegenResponse.vendorExtensions.putAll(response.getExtensions());
@@ -2697,7 +2731,9 @@ else if (schema instanceof ArraySchema) {
26972731
if (codegenProperty.complexType != null) {
26982732
imports.add(codegenProperty.complexType);
26992733
}
2700-
imports.add(codegenProperty.baseType);
2734+
if (codegenParameter.baseType != null) {
2735+
imports.add(codegenProperty.baseType);
2736+
}
27012737
CodegenProperty innerCp = codegenProperty;
27022738
while(innerCp != null) {
27032739
if(innerCp.complexType != null) {
@@ -2717,7 +2753,9 @@ else if (schema instanceof ArraySchema) {
27172753
setParameterNullable(codegenParameter, codegenProperty);
27182754

27192755
while (codegenProperty != null) {
2720-
imports.add(codegenProperty.baseType);
2756+
if (codegenProperty.baseType != null) {
2757+
imports.add(codegenProperty.baseType);
2758+
}
27212759
codegenProperty = codegenProperty.items;
27222760
}
27232761
}
@@ -3837,7 +3875,7 @@ public void updateCodegenPropertyEnum(CodegenProperty var) {
38373875
}
38383876

38393877
// put "enumVars" map into `allowableValues", including `name` and `value`
3840-
List<Map<String, String>> enumVars = new ArrayList<Map<String, String>>();
3878+
List<Map<String, String>> enumVars = new ArrayList<>();
38413879
String commonPrefix = findCommonPrefixOfVars(values);
38423880
int truncateIdx = commonPrefix.length();
38433881
for (Object value : values) {
@@ -3853,6 +3891,24 @@ public void updateCodegenPropertyEnum(CodegenProperty var) {
38533891
}
38543892
allowableValues.put("enumVars", enumVars);
38553893

3894+
// check repeated enum var names
3895+
if (enumVars != null & !enumVars.isEmpty()) {
3896+
for (int i = 0; i < enumVars.size(); i++) {
3897+
final Map<String, String> enumVarList = enumVars.get(i);
3898+
final String enumVarName = enumVarList.get("name");
3899+
for (int j = 0; j < enumVars.size(); j++) {
3900+
if (i == j) {
3901+
continue;
3902+
}
3903+
final Map<String, String> enumVarToCheckList = enumVars.get(j);
3904+
final String enumVarNameToCheck = enumVarToCheckList.get("name");
3905+
if (enumVarName.equals(enumVarNameToCheck)) {
3906+
enumVarToCheckList.put("name", enumVarName + "_" + j);
3907+
}
3908+
}
3909+
}
3910+
}
3911+
38563912
// handle default value for enum, e.g. available => StatusEnum.AVAILABLE
38573913
if (var.defaultValue != null) {
38583914
String enumName = null;
@@ -4313,6 +4369,7 @@ protected void addParameters(CodegenContent codegenContent, List<CodegenParamete
43134369
protected void addCodegenContentParameters(CodegenOperation codegenOperation, List<CodegenContent> codegenContents) {
43144370
for (CodegenContent content : codegenContents) {
43154371
addParameters(content, codegenOperation.bodyParams);
4372+
addParameters(content, codegenOperation.formParams);
43164373
addParameters(content, codegenOperation.headerParams);
43174374
addParameters(content, codegenOperation.queryParams);
43184375
addParameters(content, codegenOperation.pathParams);

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

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ public SchemaHandler(DefaultCodegenConfig codegenConfig) {
3333
public void processComposedSchemas(CodegenModel codegenModel, Schema schema, Map<String, CodegenModel> allModels) {
3434
if (schema instanceof ComposedSchema) {
3535
this.addComposedModel(this.processComposedSchema(codegenModel, (ComposedSchema) schema, allModels));
36-
return;
3736
}
3837
if (schema instanceof ArraySchema) {
3938
this.addComposedModel(this.processArrayItemSchema(codegenModel, (ArraySchema) schema, allModels));

0 commit comments

Comments
 (0)