Skip to content

Commit 96998ac

Browse files
authored
Merge pull request #2349 from altro3/fix-user-parameter-mode-for-kotlin
Minor fixes
2 parents f82eb98 + 93c7552 commit 96998ac

File tree

11 files changed

+136
-176
lines changed

11 files changed

+136
-176
lines changed

openapi-generator/src/main/java/io/micronaut/openapi/generator/KotlinMicronautServerCodegen.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -372,7 +372,7 @@ public void setAot(boolean aot) {
372372

373373
public void setUserParameterMode(String userParameterMode) {
374374
if (userParameterMode == null) {
375-
this.userParameterMode = null;
375+
this.userParameterMode = UserParameterMode.NONE;
376376
return;
377377
}
378378
try {
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
@Generated({{^hideGenerationTimestamp}}value = {{/hideGenerationTimestamp}}"{{generatorClass}}"{{^hideGenerationTimestamp}}, date = "{{generatedDate}}"{{/hideGenerationTimestamp}})
1+
@Generated({{^hideGenerationTimestamp}}value = {{/hideGenerationTimestamp}}"{{generatorClass}}"{{^hideGenerationTimestamp}}, date = "{{generatedDate}}"{{/hideGenerationTimestamp}})
Lines changed: 57 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -1,90 +1,84 @@
1-
{{!
2-
If this is map and items are nullable, make sure that nulls are included.
3-
To determine what JsonInclude.Include method to use, consider the following:
4-
* If the field is required, always include it, even if it is null.
5-
* Else use custom behaviour, IOW use whatever is defined on the object mapper
6-
}}
71
@JsonProperty(JSON_PROPERTY_{{nameInSnakeCase}})
8-
{{#isMap}}
9-
{{#items.isNullable}}
2+
{{#isMap}}
3+
{{#items.isNullable}}
104
@JsonInclude(content = JsonInclude.Include.ALWAYS{{^required}}, value = JsonInclude.Include.USE_DEFAULTS{{/required}})
11-
{{/items.isNullable}}
12-
{{^items.isNullable}}
13-
{{^required}}
5+
{{/items.isNullable}}
6+
{{^items.isNullable}}
7+
{{^required}}
148
@JsonInclude(JsonInclude.Include.USE_DEFAULTS)
15-
{{/required}}
16-
{{/items.isNullable}}
17-
{{/isMap}}
18-
{{^isMap}}
19-
{{#required}}
20-
{{#isReadOnly}}
9+
{{/required}}
10+
{{/items.isNullable}}
11+
{{/isMap}}
12+
{{^isMap}}
13+
{{#required}}
14+
{{#isReadOnly}}
2115
@JsonInclude(JsonInclude.Include.USE_DEFAULTS)
22-
{{/isReadOnly}}
23-
{{^isReadOnly}}
24-
{{#jsonIncludeAlwaysForRequiredFields}}
16+
{{/isReadOnly}}
17+
{{^isReadOnly}}
18+
{{#jsonIncludeAlwaysForRequiredFields}}
2519
@JsonInclude(JsonInclude.Include.ALWAYS)
26-
{{/jsonIncludeAlwaysForRequiredFields}}
27-
{{/isReadOnly}}
28-
{{/required}}
29-
{{^required}}
20+
{{/jsonIncludeAlwaysForRequiredFields}}
21+
{{/isReadOnly}}
22+
{{/required}}
23+
{{^required}}
3024
@JsonInclude(JsonInclude.Include.USE_DEFAULTS)
31-
{{/required}}
32-
{{/isMap}}
33-
{{#withXml}}
34-
{{^isContainer}}
25+
{{/required}}
26+
{{/isMap}}
27+
{{#withXml}}
28+
{{^isContainer}}
3529
@JacksonXmlProperty({{#isXmlAttribute}}isAttribute = true, {{/isXmlAttribute}}{{#xmlNamespace}}namespace = "{{xmlNamespace}}", {{/xmlNamespace}}localName = "{{#xmlName}}{{xmlName}}{{/xmlName}}{{^xmlName}}{{baseName}}{{/xmlName}}")
3630
@JacksonXmlProperty({{#isXmlAttribute}}isAttribute = true, {{/isXmlAttribute}}{{#xmlNamespace}}namespace = "{{xmlNamespace}}", {{/xmlNamespace}}localName = "{{#xmlName}}{{xmlName}}{{/xmlName}}{{^xmlName}}{{baseName}}{{/xmlName}}")
37-
{{/isContainer}}
38-
{{#isContainer}}
39-
{{#isXmlWrapped}}
31+
{{/isContainer}}
32+
{{#isContainer}}
33+
{{#isXmlWrapped}}
4034
// items.xmlName={{items.xmlName}}
4135
@JacksonXmlElementWrapper(useWrapping = {{isXmlWrapped}}, {{#xmlNamespace}}namespace = "{{xmlNamespace}}", {{/xmlNamespace}}localName = "{{#items.xmlName}}{{items.xmlName}}{{/items.xmlName}}{{^items.xmlName}}{{items.baseName}}{{/items.xmlName}}")
42-
{{/isXmlWrapped}}
43-
{{/isContainer}}
44-
{{/withXml}}
45-
{{#jackson}}
46-
{{^micronaut_serde_jackson}}
47-
{{#isDateTime}}
48-
{{#vendorExtensions.formatPattern}}
49-
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "{{{vendorExtensions.formatPattern}}}")
50-
{{/vendorExtensions.formatPattern}}
51-
{{^vendorExtensions.formatPattern}}
52-
{{#dateTimeFormat}}
53-
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "{{{dateTimeFormat}}}")
54-
{{/dateTimeFormat}}
55-
{{/vendorExtensions.formatPattern}}
56-
{{/isDateTime}}
57-
{{#isDate}}
58-
{{#vendorExtensions.formatPattern}}
59-
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "{{{vendorExtensions.formatPattern}}}")
60-
{{/vendorExtensions.formatPattern}}
61-
{{^vendorExtensions.formatPattern}}
62-
{{#dateFormat}}
63-
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "{{{dateFormat}}}")
64-
{{/dateFormat}}
65-
{{/vendorExtensions.formatPattern}}
66-
{{/isDate}}
67-
{{/micronaut_serde_jackson}}
68-
{{/jackson}}
69-
{{#micronaut_serde_jackson}}
36+
{{/isXmlWrapped}}
37+
{{/isContainer}}
38+
{{/withXml}}
39+
{{#jackson}}
40+
{{^micronaut_serde_jackson}}
7041
{{#isDateTime}}
7142
{{#vendorExtensions.formatPattern}}
72-
@JsonFormat(pattern = "{{{vendorExtensions.formatPattern}}}")
43+
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "{{{vendorExtensions.formatPattern}}}")
7344
{{/vendorExtensions.formatPattern}}
7445
{{^vendorExtensions.formatPattern}}
7546
{{#dateTimeFormat}}
76-
@JsonFormat(pattern = "{{{dateTimeFormat}}}")
47+
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "{{{dateTimeFormat}}}")
7748
{{/dateTimeFormat}}
7849
{{/vendorExtensions.formatPattern}}
7950
{{/isDateTime}}
8051
{{#isDate}}
8152
{{#vendorExtensions.formatPattern}}
82-
@JsonFormat(pattern = "{{{vendorExtensions.formatPattern}}}")
53+
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "{{{vendorExtensions.formatPattern}}}")
8354
{{/vendorExtensions.formatPattern}}
8455
{{^vendorExtensions.formatPattern}}
8556
{{#dateFormat}}
86-
@JsonFormat(pattern = "{{{dateFormat}}}")
57+
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "{{{dateFormat}}}")
8758
{{/dateFormat}}
8859
{{/vendorExtensions.formatPattern}}
8960
{{/isDate}}
9061
{{/micronaut_serde_jackson}}
62+
{{/jackson}}
63+
{{#micronaut_serde_jackson}}
64+
{{#isDateTime}}
65+
{{#vendorExtensions.formatPattern}}
66+
@JsonFormat(pattern = "{{{vendorExtensions.formatPattern}}}")
67+
{{/vendorExtensions.formatPattern}}
68+
{{^vendorExtensions.formatPattern}}
69+
{{#dateTimeFormat}}
70+
@JsonFormat(pattern = "{{{dateTimeFormat}}}")
71+
{{/dateTimeFormat}}
72+
{{/vendorExtensions.formatPattern}}
73+
{{/isDateTime}}
74+
{{#isDate}}
75+
{{#vendorExtensions.formatPattern}}
76+
@JsonFormat(pattern = "{{{vendorExtensions.formatPattern}}}")
77+
{{/vendorExtensions.formatPattern}}
78+
{{^vendorExtensions.formatPattern}}
79+
{{#dateFormat}}
80+
@JsonFormat(pattern = "{{{dateFormat}}}")
81+
{{/dateFormat}}
82+
{{/vendorExtensions.formatPattern}}
83+
{{/isDate}}
84+
{{/micronaut_serde_jackson}}

openapi-generator/src/main/resources/templates/java-micronaut/common/params/validation.mustache

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
{{^vendorExtensions.isPrimitiveArray}}
22
{{^vendorExtensions.withoutNullable}}
33
{{#isNullable}}
4-
{{#generateHardNullable}}
4+
{{#generateHardNullable}}
55
@Nullable(inherited = true)
6-
{{/generateHardNullable}}
7-
{{^generateHardNullable}}
6+
{{/generateHardNullable}}
7+
{{^generateHardNullable}}
88
@Nullable
9-
{{/generateHardNullable}}
9+
{{/generateHardNullable}}
1010
{{/isNullable}}
1111
{{^isNullable}}
1212
{{#required}}
@@ -35,7 +35,6 @@
3535
{{/isNullable}}
3636
{{/vendorExtensions.withoutNullable}}
3737
{{/vendorExtensions.isPrimitiveArray}}
38-
{{!All the validation}}
3938
{{#useBeanValidation}}
4039
{{^vendorExtensions.isPrimitiveArray}}
4140
{{^isNullable}}
@@ -48,20 +47,17 @@
4847
{{/required}}
4948
{{/isNullable}}
5049
{{/vendorExtensions.isPrimitiveArray}}
51-
{{!Validate all pojos and enums}}
5250
{{^isUuid}}
5351
{{^isContainer}}
5452
{{#isModel}}
5553
@Valid
5654
{{/isModel}}
5755
{{/isContainer}}
58-
{{!Pattern}}
5956
{{#pattern}}
6057
{{^isByteArray}}{{^isDate}}{{^isDateTime}}{{^isEmail}}
6158
@Pattern(regexp = "{{{pattern}}}"{{#vendorExtensions.x-pattern-message}}, message = "{{{.}}}"{{/vendorExtensions.x-pattern-message}})
6259
{{/isEmail}}{{/isDateTime}}{{/isDate}}{{/isByteArray}}
6360
{{/pattern}}
64-
{{!Min length && max length}}
6561
{{#minLength}}
6662
{{#maxLength}}
6763
@Size(min = {{minLength}}, max = {{maxLength}}{{#vendorExtensions.x-size-message}}, message = "{{{.}}}"{{/vendorExtensions.x-size-message}})
@@ -73,7 +69,6 @@
7369
{{^minLength}}{{#maxLength}}
7470
@Size(max = {{maxLength}}{{#vendorExtensions.x-size-message}}, message = "{{{.}}}"{{/vendorExtensions.x-size-message}})
7571
{{/maxLength}}{{/minLength}}
76-
{{!Size}}
7772
{{#minItems}}{{#maxItems}}
7873
@Size(min = {{minItems}}, max = {{maxItems}}{{#vendorExtensions.x-size-message}}, message = "{{{.}}}"{{/vendorExtensions.x-size-message}})
7974
{{/maxItems}}{{/minItems}}
@@ -83,11 +78,9 @@
8378
{{^minItems}}{{#maxItems}}
8479
@Size(max = {{maxItems}}{{#vendorExtensions.x-size-message}}, message = "{{{.}}}"{{/vendorExtensions.x-size-message}})
8580
{{/maxItems}}{{/minItems}}
86-
{{!Email}}
8781
{{#isEmail}}
8882
@Email{{#pattern}}(regexp = "{{{pattern}}}"{{#vendorExtensions.x-pattern-message}}, message = "{{{.}}}"{{/vendorExtensions.x-pattern-message}}){{/pattern}}{{^pattern}}{{#vendorExtensions.x-pattern-message}}(message = "{{{.}}}"){{/vendorExtensions.x-pattern-message}}{{/pattern}}
8983
{{/isEmail}}
90-
{{!check for integer or long / all others=decimal type with @Decimal isInteger set}}
9184
{{#isInteger}}
9285
{{#minimum}}
9386
@Min({{#vendorExtensions.x-minimum-message}}value = {{/vendorExtensions.x-minimum-message}}{{{.}}}{{#vendorExtensions.x-minimum-message}}, message = "{{{.}}}"{{/vendorExtensions.x-minimum-message}})
@@ -96,7 +89,6 @@
9689
@Max({{#vendorExtensions.x-maximum-message}}value = {{/vendorExtensions.x-maximum-message}}{{{.}}}{{#vendorExtensions.x-maximum-message}}, message = "{{{.}}}"{{/vendorExtensions.x-maximum-message}})
9790
{{/maximum}}
9891
{{/isInteger}}
99-
{{!isLong set}}
10092
{{#isLong}}
10193
{{#minimum}}
10294
@Min({{#vendorExtensions.x-minimum-message}}value = {{/vendorExtensions.x-minimum-message}}{{{.}}}L{{#vendorExtensions.x-minimum-message}}, message = "{{{.}}}"{{/vendorExtensions.x-minimum-message}})
@@ -105,13 +97,11 @@
10597
@Max({{#vendorExtensions.x-maximum-message}}value = {{/vendorExtensions.x-maximum-message}}{{{.}}}L{{#vendorExtensions.x-maximum-message}}, message = "{{{.}}}"{{/vendorExtensions.x-maximum-message}})
10698
{{/maximum}}
10799
{{/isLong}}
108-
{{!Not Integer, not Long => we have a decimal value!}}
109100
{{^isInteger}}
110-
{{^isLong}}{{!minimum for decimal value}}
101+
{{^isLong}}
111102
{{#minimum}}
112103
@DecimalMin({{#exclusiveMinimum}}value = {{/exclusiveMinimum}}{{^exclusiveMinimum}}{{#vendorExtensions.x-minimum-message}}value = {{/vendorExtensions.x-minimum-message}}{{/exclusiveMinimum}}"{{minimum}}"{{#exclusiveMinimum}}, inclusive = false{{/exclusiveMinimum}}{{#vendorExtensions.x-minimum-message}}, message = "{{{.}}}"{{/vendorExtensions.x-minimum-message}})
113104
{{/minimum}}
114-
{{!maximal for decimal value}}
115105
{{#maximum}}
116106
@DecimalMax({{#exclusiveMaximum}}value = {{/exclusiveMaximum}}{{^exclusiveMaximum}}{{#vendorExtensions.x-maximum-message}}value = {{/vendorExtensions.x-maximum-message}}{{/exclusiveMaximum}}"{{maximum}}"{{#exclusiveMaximum}}, inclusive = false{{/exclusiveMaximum}}{{#vendorExtensions.x-maximum-message}}, message = "{{{.}}}"{{/vendorExtensions.x-maximum-message}})
117107
{{/maximum}}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
@Generated("{{generatorClass}}"{{^hideGenerationTimestamp}}, date = "{{generatedDate}}"{{/hideGenerationTimestamp}})
1+
@Generated("{{generatorClass}}"{{^hideGenerationTimestamp}}, date = "{{generatedDate}}"{{/hideGenerationTimestamp}})

openapi-generator/src/main/resources/templates/kotlin-micronaut/common/model/field_annotations.mustache

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{{#deprecated}}
2-
@Deprecated("{{#vendorExtensions.x-deprecated-message}}{{{.}}}{{/vendorExtensions.x-deprecated-message}}")
2+
@Deprecated("{{#vendorExtensions.x-deprecated-message}}{{{.}}}{{/vendorExtensions.x-deprecated-message}}")
33
{{/deprecated}}
4-
{{>common/params/validation_field}}
4+
{{>common/params/validation_field}}
55
{{#withXml}}
66
{{#isXmlAttribute}}
77
@{{{vendorExtensions.fieldAnnPrefix}}}XmlAttribute(name = "{{#xmlName}}{{xmlName}}{{/xmlName}}{{^xmlName}}{{baseName}}{{/xmlName}}"

0 commit comments

Comments
 (0)