Skip to content

Commit 1a10ab2

Browse files
author
bllassit
committed
Merge branch 'master' into balassit/timespan
2 parents 9b0d50b + f1c1567 commit 1a10ab2

File tree

337 files changed

+13871
-224
lines changed

Some content is hidden

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

337 files changed

+13871
-224
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
7373
[<img src="https://openapi-generator.tech/img/companies/kong.png" width="128" height="128">](https://konghq.com/products/kong-konnect?utm_medium=referral&utm_source=github&utm_campaign=platform&utm_content=openapi-generator)
7474
[<img src="https://openapi-generator.tech/img/companies/route4me.png" width="128" height="128">](https://route4me.com/?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
7575
[<img src="https://openapi-generator.tech/img/companies/dm.png" width="128" height="128">](https://www.dotcom-monitor.com/sponsoring-open-source-projects/?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
76+
[<img src="https://openapi-generator.tech/img/companies/clickit.jpg" width="128" height="128">](https://www.clickittech.com/?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
7677

7778
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS, Checkly for sponsoring the API monitoring and Gradle for sponsoring Develocity
7879

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
generatorName: go
2+
outputDir: samples/client/others/go/oneof-discriminator-lookup
3+
inputSpec: modules/openapi-generator/src/test/resources/3_0/go/spec-with-oneof-discriminator.yaml
4+
additionalProperties:
5+
useOneOfDiscriminatorLookup: "true"
6+
hideGenerationTimestamp: "true"

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGoCodegen.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -748,7 +748,6 @@ public ModelsMap postProcessModels(ModelsMap objs) {
748748
for (ModelMap m : objs.getModels()) {
749749
boolean addedTimeImport = false;
750750
boolean addedOSImport = false;
751-
boolean addedValidator = false;
752751
CodegenModel model = m.getModel();
753752

754753
List<CodegenProperty> inheritedProperties = new ArrayList<>();
@@ -830,11 +829,6 @@ public ModelsMap postProcessModels(ModelsMap objs) {
830829
imports.add(createMapping("import", "fmt"));
831830
}
832831

833-
if (model.oneOf != null && !model.oneOf.isEmpty() && !addedValidator && generateUnmarshalJSON) {
834-
imports.add(createMapping("import", "gopkg.in/validator.v2"));
835-
addedValidator = true;
836-
}
837-
838832
// if oneOf contains "null" type
839833
if (model.oneOf != null && !model.oneOf.isEmpty() && model.oneOf.contains("nil")) {
840834
model.isNullable = true;

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJuliaCodegen.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -437,6 +437,18 @@ public String toDefaultValue(Schema schema) {
437437
return "nothing";
438438
}
439439

440+
@Override
441+
public String toEnumDefaultValue(String value, String datatype) {
442+
// we do not generate any separate enum structure in Julia
443+
return value;
444+
}
445+
446+
@Override
447+
public String toEnumVarName(String value, String datatype) {
448+
// we do not generate any separate enum structure in Julia
449+
return value;
450+
}
451+
440452
@Override
441453
public String escapeUnsafeCharacters(String input) {
442454
return input.replace("#=", "#_=").replace("=#", "=_#");

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -501,6 +501,11 @@ private String toGenericName(String name) {
501501

502502
@Override
503503
public String toModelName(String name) {
504+
505+
if (modelNameMapping.containsKey(name)) {
506+
return modelNameMapping.get(name);
507+
}
508+
504509
// memoization
505510
String origName = name;
506511
if (schemaKeyToModelNameCache.containsKey(origName)) {

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GoClientCodegen.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ public class GoClientCodegen extends AbstractGoCodegen {
5656
public static final String MODEL_FILE_FOLDER = "modelFileFolder";
5757
public static final String WITH_GO_MOD = "withGoMod";
5858
public static final String USE_DEFAULT_VALUES_FOR_REQUIRED_VARS = "useDefaultValuesForRequiredVars";
59+
public static final String IMPORT_VALIDATOR = "importValidator";
5960
@Setter protected String goImportAlias = "openapiclient";
6061
protected boolean isGoSubmodule = false;
6162
@Setter protected boolean useOneOfDiscriminatorLookup = false; // use oneOf discriminator's mapping for model lookup
@@ -494,6 +495,11 @@ public ModelsMap postProcessModels(ModelsMap objs) {
494495
if (model.oneOf != null && !model.oneOf.isEmpty()) {
495496
imports.add(createMapping("import", "fmt"));
496497
addedFmtImport = true;
498+
499+
if (generateUnmarshalJSON && !useOneOfDiscriminatorLookup) {
500+
imports.add(createMapping("import", "gopkg.in/validator.v2"));
501+
additionalProperties.put(IMPORT_VALIDATOR, true);
502+
}
497503
}
498504

499505
// anyOf

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpNextgenClientCodegen.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -211,15 +211,16 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap objs, List<Mo
211211
}
212212

213213
for (CodegenParameter param : operation.allParams) {
214+
String paramType;
214215
if (param.isArray || param.isMap) {
215-
param.vendorExtensions.putIfAbsent("x-php-param-type", "array");
216+
paramType = "array";
216217
} else {
217-
String paramType = param.dataType;
218-
if ((!param.required || param.isNullable) && !paramType.equals("mixed")) { // optional or nullable but not mixed
219-
paramType = "?" + paramType;
220-
}
221-
param.vendorExtensions.putIfAbsent("x-php-param-type", paramType);
218+
paramType = param.dataType;
219+
}
220+
if ((!param.required || param.isNullable) && !paramType.equals("mixed")) { // optional or nullable but not mixed
221+
paramType = "?" + paramType;
222222
}
223+
param.vendorExtensions.putIfAbsent("x-php-param-type", paramType);
223224
}
224225
}
225226

modules/openapi-generator/src/main/resources/csharp/libraries/generichost/JsonConverter.mustache

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151

5252
{{/-first}}
5353
if (discriminator != null && discriminator.Equals("{{name}}"))
54-
return JsonSerializer.Deserialize<{{{name}}}>(ref utf8JsonReader, jsonSerializerOptions) ?? throw new JsonException("The result was an unexpected value.");
54+
return JsonSerializer.Deserialize<{{{classname}}}>(ref utf8JsonReader, jsonSerializerOptions) ?? throw new JsonException("The result was an unexpected value.");
5555

5656
{{/children}}
5757
{{/discriminator}}
@@ -348,7 +348,7 @@
348348
{{#discriminator}}
349349
{{#children}}
350350
if ({{#lambda.paste}}{{/lambda.paste}} is {{classname}} {{#lambda.camelcase_sanitize_param}}{{classname}}{{/lambda.camelcase_sanitize_param}}){
351-
JsonSerializer.Serialize<{{{name}}}>(writer, {{#lambda.camelcase_sanitize_param}}{{classname}}{{/lambda.camelcase_sanitize_param}}, jsonSerializerOptions);
351+
JsonSerializer.Serialize<{{{classname}}}>(writer, {{#lambda.camelcase_sanitize_param}}{{classname}}{{/lambda.camelcase_sanitize_param}}, jsonSerializerOptions);
352352
return;
353353
}
354354

modules/openapi-generator/src/main/resources/go/go.mod.mustache

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,7 @@ require (
99
{{#withAWSV4Signature}}
1010
github.com/aws/aws-sdk-go v1.34.14
1111
{{/withAWSV4Signature}}
12+
{{#importValidator}}
13+
gopkg.in/validator.v2 v2.0.1
14+
{{/importValidator}}
1215
)

modules/openapi-generator/src/main/resources/go/go.sum.mustache

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,7 @@ golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJ
1313
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
1414
google.golang.org/appengine v1.4.0 h1:/wp5JvzpHIxhs/dumFmF7BXTf3Z+dd4uXta4kVyO508=
1515
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
16+
{{#importValidator}}
17+
gopkg.in/validator.v2 v2.0.1 h1:xF0KWyGWXm/LM2G1TrEjqOu4pa6coO9AlWSf3msVfDY=
18+
gopkg.in/validator.v2 v2.0.1/go.mod h1:lIUZBlB3Im4s/eYp39Ry/wkR02yOPhZ9IwIRBjuPuG8=
19+
{{/importValidator}}

0 commit comments

Comments
 (0)