forked from loafle/openapi-generator-original
fix kotlin-spring generator does not add @Valid annotation to nested classes (#8037)
This commit is contained in:
parent
351377ca29
commit
0cbf064d2b
4
modules/openapi-generator/src/main/resources/kotlin-spring/beanValidation.mustache
vendored
Normal file
4
modules/openapi-generator/src/main/resources/kotlin-spring/beanValidation.mustache
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{{#isContainer}}{{^isPrimitiveType}}{{^isEnum}}
|
||||||
|
@field:Valid{{/isEnum}}{{/isPrimitiveType}}{{/isContainer}}{{!
|
||||||
|
}}{{^isContainer}}{{^isPrimitiveType}}{{^isNumber}}{{^isUuid}}{{^isDateTime}}
|
||||||
|
@field:Valid{{/isDateTime}}{{/isUuid}}{{/isNumber}}{{/isPrimitiveType}}{{/isContainer}}
|
@ -1,20 +1,33 @@
|
|||||||
{{#pattern}}@get:Pattern(regexp="{{{pattern}}}") {{/pattern}}{{!
|
{{#pattern}}
|
||||||
|
@get:Pattern(regexp="{{{pattern}}}"){{/pattern}}{{!
|
||||||
minLength && maxLength set
|
minLength && maxLength set
|
||||||
}}{{#minLength}}{{#maxLength}}@get:Size(min={{minLength}},max={{maxLength}}) {{/maxLength}}{{/minLength}}{{!
|
}}{{#minLength}}{{#maxLength}}
|
||||||
|
@get:Size(min={{minLength}},max={{maxLength}}){{/maxLength}}{{/minLength}}{{!
|
||||||
minLength set, maxLength not
|
minLength set, maxLength not
|
||||||
}}{{#minLength}}{{^maxLength}}@get:Size(min={{minLength}}) {{/maxLength}}{{/minLength}}{{!
|
}}{{#minLength}}{{^maxLength}}
|
||||||
|
@get:Size(min={{minLength}}){{/maxLength}}{{/minLength}}{{!
|
||||||
minLength not set, maxLength set
|
minLength not set, maxLength set
|
||||||
}}{{^minLength}}{{#maxLength}}@get:Size(max={{maxLength}}) {{/maxLength}}{{/minLength}}{{!
|
}}{{^minLength}}{{#maxLength}}
|
||||||
|
@get:Size(max={{maxLength}}){{/maxLength}}{{/minLength}}{{!
|
||||||
@Size: minItems && maxItems set
|
@Size: minItems && maxItems set
|
||||||
}}{{#minItems}}{{#maxItems}}@get:Size(min={{minItems}},max={{maxItems}}) {{/maxItems}}{{/minItems}}{{!
|
}}{{#minItems}}{{#maxItems}}
|
||||||
|
@get:Size(min={{minItems}},max={{maxItems}}) {{/maxItems}}{{/minItems}}{{!
|
||||||
@Size: minItems set, maxItems not
|
@Size: minItems set, maxItems not
|
||||||
}}{{#minItems}}{{^maxItems}}@get:Size(min={{minItems}}) {{/maxItems}}{{/minItems}}{{!
|
}}{{#minItems}}{{^maxItems}}
|
||||||
|
@get:Size(min={{minItems}}){{/maxItems}}{{/minItems}}{{!
|
||||||
@Size: minItems not set && maxItems set
|
@Size: minItems not set && maxItems set
|
||||||
}}{{^minItems}}{{#maxItems}}@get:Size(max={{maxItems}}) {{/maxItems}}{{/minItems}}{{!
|
}}{{^minItems}}{{#maxItems}}
|
||||||
|
@get:Size(max={{maxItems}}){{/maxItems}}{{/minItems}}{{!
|
||||||
check for integer or long / all others=decimal type with @Decimal*
|
check for integer or long / all others=decimal type with @Decimal*
|
||||||
isInteger set
|
isInteger set
|
||||||
}}{{#isInteger}}{{#minimum}}@get:Min({{minimum}}){{/minimum}}{{#maximum}} @get:Max({{maximum}}) {{/maximum}}{{/isInteger}}{{!
|
}}{{#isInteger}}{{#minimum}}
|
||||||
|
@get:Min({{minimum}}){{/minimum}}{{#maximum}}
|
||||||
|
@get:Max({{maximum}}){{/maximum}}{{/isInteger}}{{!
|
||||||
isLong set
|
isLong set
|
||||||
}}{{#isLong}}{{#minimum}}@get:Min({{minimum}}L){{/minimum}}{{#maximum}} @get:Max({{maximum}}L) {{/maximum}}{{/isLong}}{{!
|
}}{{#isLong}}{{#minimum}}
|
||||||
|
@get:Min({{minimum}}L){{/minimum}}{{#maximum}}
|
||||||
|
@get:Max({{maximum}}L){{/maximum}}{{/isLong}}{{!
|
||||||
Not Integer, not Long => we have a decimal value!
|
Not Integer, not Long => we have a decimal value!
|
||||||
}}{{^isInteger}}{{^isLong}}{{#minimum}}@get:DecimalMin("{{minimum}}"){{/minimum}}{{#maximum}} @get:DecimalMax("{{maximum}}") {{/maximum}}{{/isLong}}{{/isInteger}}
|
}}{{^isInteger}}{{^isLong}}{{#minimum}}
|
||||||
|
@get:DecimalMin("{{minimum}}"){{/minimum}}{{#maximum}}
|
||||||
|
@get:DecimalMax("{{maximum}}"){{/maximum}}{{/isLong}}{{/isInteger}}
|
@ -1,5 +1,5 @@
|
|||||||
{{#useBeanValidation}}{{#required}}
|
{{#useBeanValidation}}{{#required}}{{^isReadOnly}}
|
||||||
{{^isReadOnly}}@get:NotNull{{/isReadOnly}} {{/required}}{{>beanValidationModel}}{{/useBeanValidation}}{{#swaggerAnnotations}}
|
@get:NotNull{{/isReadOnly}}{{/required}}{{>beanValidation}}{{>beanValidationModel}}{{/useBeanValidation}}{{#swaggerAnnotations}}
|
||||||
@ApiModelProperty({{#example}}example = "{{{example}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swaggerAnnotations}}{{#deprecated}}
|
@ApiModelProperty({{#example}}example = "{{{example}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swaggerAnnotations}}{{#deprecated}}
|
||||||
@Deprecated(message = ""){{/deprecated}}
|
@Deprecated(message = ""){{/deprecated}}
|
||||||
@field:JsonProperty("{{{baseName}}}"){{#isInherited}} override{{/isInherited}} {{>modelMutable}} {{{name}}}: {{#isEnum}}{{#isArray}}{{baseType}}<{{/isArray}}{{classname}}.{{nameInCamelCase}}{{#isArray}}>{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}? = {{#defaultvalue}}{{defaultvalue}}{{/defaultvalue}}{{^defaultvalue}}null{{/defaultvalue}}
|
@field:JsonProperty("{{{baseName}}}"){{#isInherited}} override{{/isInherited}} {{>modelMutable}} {{{name}}}: {{#isEnum}}{{#isArray}}{{baseType}}<{{/isArray}}{{classname}}.{{nameInCamelCase}}{{#isArray}}>{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}? = {{#defaultvalue}}{{defaultvalue}}{{/defaultvalue}}{{^defaultvalue}}null{{/defaultvalue}}
|
@ -1,4 +1,4 @@
|
|||||||
{{#useBeanValidation}}{{#required}}
|
{{#useBeanValidation}}{{#required}}{{^isReadOnly}}
|
||||||
{{^isReadOnly}}@get:NotNull{{/isReadOnly}} {{/required}}{{>beanValidationModel}}{{/useBeanValidation}}{{#swaggerAnnotations}}
|
@get:NotNull {{/isReadOnly}}{{/required}}{{>beanValidation}}{{>beanValidationModel}}{{/useBeanValidation}}{{#swaggerAnnotations}}
|
||||||
@ApiModelProperty({{#example}}example = "{{{example}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swaggerAnnotations}}
|
@ApiModelProperty({{#example}}example = "{{{example}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swaggerAnnotations}}
|
||||||
@field:JsonProperty("{{{baseName}}}"){{#isInherited}} override{{/isInherited}} {{>modelMutable}} {{{name}}}: {{#isEnum}}{{#isArray}}{{baseType}}<{{/isArray}}{{classname}}.{{nameInCamelCase}}{{#isArray}}>{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{#isReadOnly}}? = {{#defaultvalue}}{{defaultvalue}}{{/defaultvalue}}{{^defaultvalue}}null{{/defaultvalue}}{{/isReadOnly}}
|
@field:JsonProperty("{{{baseName}}}"){{#isInherited}} override{{/isInherited}} {{>modelMutable}} {{{name}}}: {{#isEnum}}{{#isArray}}{{baseType}}<{{/isArray}}{{classname}}.{{nameInCamelCase}}{{#isArray}}>{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{#isReadOnly}}? = {{#defaultvalue}}{{defaultvalue}}{{/defaultvalue}}{{^defaultvalue}}null{{/defaultvalue}}{{/isReadOnly}}
|
@ -11,6 +11,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
{{/useBeanValidation}}
|
{{/useBeanValidation}}
|
||||||
{{#swaggerAnnotations}}
|
{{#swaggerAnnotations}}
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
@ -9,6 +9,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -9,6 +9,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -10,6 +10,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -12,6 +12,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -36,9 +37,11 @@ data class Pet(
|
|||||||
@ApiModelProperty(example = "null", value = "")
|
@ApiModelProperty(example = "null", value = "")
|
||||||
@field:JsonProperty("id") val id: kotlin.Long? = null,
|
@field:JsonProperty("id") val id: kotlin.Long? = null,
|
||||||
|
|
||||||
|
@field:Valid
|
||||||
@ApiModelProperty(example = "null", value = "")
|
@ApiModelProperty(example = "null", value = "")
|
||||||
@field:JsonProperty("category") val category: Category? = null,
|
@field:JsonProperty("category") val category: Category? = null,
|
||||||
|
|
||||||
|
@field:Valid
|
||||||
@ApiModelProperty(example = "null", value = "")
|
@ApiModelProperty(example = "null", value = "")
|
||||||
@field:JsonProperty("tags") val tags: kotlin.collections.List<Tag>? = null,
|
@field:JsonProperty("tags") val tags: kotlin.collections.List<Tag>? = null,
|
||||||
|
|
||||||
|
@ -9,6 +9,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -9,6 +9,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -9,6 +9,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -9,6 +9,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -10,6 +10,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -12,6 +12,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -36,9 +37,11 @@ data class Pet(
|
|||||||
@ApiModelProperty(example = "null", value = "")
|
@ApiModelProperty(example = "null", value = "")
|
||||||
@field:JsonProperty("id") val id: kotlin.Long? = null,
|
@field:JsonProperty("id") val id: kotlin.Long? = null,
|
||||||
|
|
||||||
|
@field:Valid
|
||||||
@ApiModelProperty(example = "null", value = "")
|
@ApiModelProperty(example = "null", value = "")
|
||||||
@field:JsonProperty("category") val category: Category? = null,
|
@field:JsonProperty("category") val category: Category? = null,
|
||||||
|
|
||||||
|
@field:Valid
|
||||||
@ApiModelProperty(example = "null", value = "")
|
@ApiModelProperty(example = "null", value = "")
|
||||||
@field:JsonProperty("tags") val tags: kotlin.collections.List<Tag>? = null,
|
@field:JsonProperty("tags") val tags: kotlin.collections.List<Tag>? = null,
|
||||||
|
|
||||||
|
@ -9,6 +9,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -9,6 +9,7 @@ import javax.validation.constraints.Min
|
|||||||
import javax.validation.constraints.NotNull
|
import javax.validation.constraints.NotNull
|
||||||
import javax.validation.constraints.Pattern
|
import javax.validation.constraints.Pattern
|
||||||
import javax.validation.constraints.Size
|
import javax.validation.constraints.Size
|
||||||
|
import javax.validation.Valid
|
||||||
import io.swagger.annotations.ApiModelProperty
|
import io.swagger.annotations.ApiModelProperty
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user