Skip to content

Commit

Permalink
Fix enum with validation, rel #311
Browse files Browse the repository at this point in the history
  • Loading branch information
sschnabe committed Jan 2, 2024
1 parent 3e3b4ff commit ebc31d9
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 6 deletions.
2 changes: 1 addition & 1 deletion gen/main/java/issue/_331/DefaultApi.java
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ io.micronaut.http.HttpResponse<Object> string(
java.util.Optional<java.util.List<java.lang.String>> withoutValidation,
@io.micronaut.core.annotation.NonNull
@io.micronaut.http.annotation.QueryValue
java.util.Optional<java.util.List<@javax.validation.constraints.NotNull @javax.validation.Valid StringWithEnum>> withEnum,
java.util.Optional<java.util.List<@javax.validation.constraints.NotNull StringWithEnum>> withEnum,
@io.micronaut.core.annotation.NonNull
@io.micronaut.http.annotation.QueryValue
java.util.Optional<java.util.List<java.lang.@javax.validation.constraints.NotNull @javax.validation.constraints.Email String>> withEmail,
Expand Down
2 changes: 1 addition & 1 deletion gen/main/java/issue/_331/DefaultApiClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ io.micronaut.http.HttpResponse<Object> string(
java.util.List<java.lang.String> withoutValidation,
@io.micronaut.core.annotation.Nullable
@io.micronaut.http.annotation.QueryValue(value = "withEnum")
java.util.List<@javax.validation.constraints.NotNull @javax.validation.Valid StringWithEnum> withEnum,
java.util.List<@javax.validation.constraints.NotNull StringWithEnum> withEnum,
@io.micronaut.core.annotation.Nullable
@io.micronaut.http.annotation.QueryValue(value = "withEmail")
java.util.List<java.lang.@javax.validation.constraints.NotNull @javax.validation.constraints.Email String> withEmail,
Expand Down
8 changes: 4 additions & 4 deletions gen/main/java/issue/_331/ModelString.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public class ModelString {

@com.fasterxml.jackson.annotation.JsonProperty(JSON_PROPERTY_WITH_ENUM)
@com.fasterxml.jackson.annotation.JsonInclude(com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL)
private java.util.List<@javax.validation.constraints.NotNull @javax.validation.Valid StringWithEnum> withEnum;
private java.util.List<@javax.validation.constraints.NotNull StringWithEnum> withEnum;

@com.fasterxml.jackson.annotation.JsonProperty(JSON_PROPERTY_WITH_EMAIL)
@com.fasterxml.jackson.annotation.JsonInclude(com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL)
Expand Down Expand Up @@ -102,7 +102,7 @@ public ModelString removeWithoutValidationItem(java.lang.String withoutValidatio
return this;
}

public ModelString withEnum(java.util.List<@javax.validation.constraints.NotNull @javax.validation.Valid StringWithEnum> newWithEnum) {
public ModelString withEnum(java.util.List<@javax.validation.constraints.NotNull StringWithEnum> newWithEnum) {
this.withEnum = newWithEnum;
return this;
}
Expand Down Expand Up @@ -232,11 +232,11 @@ public void setWithoutValidation(java.util.List<java.lang.String> newWithoutVali
this.withoutValidation = newWithoutValidation;
}

public java.util.List<@javax.validation.constraints.NotNull @javax.validation.Valid StringWithEnum> getWithEnum() {
public java.util.List<@javax.validation.constraints.NotNull StringWithEnum> getWithEnum() {
return withEnum;
}

public void setWithEnum(java.util.List<@javax.validation.constraints.NotNull @javax.validation.Valid StringWithEnum> newWithEnum) {
public void setWithEnum(java.util.List<@javax.validation.constraints.NotNull StringWithEnum> newWithEnum) {
this.withEnum = newWithEnum;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -501,6 +501,12 @@ public void postProcessParameter(CodegenParameter parameter) {
if (dateTimeRelaxed && (parameter.isDate || parameter.isDateTime)) {
addSupportingFile(sourceFolder, invokerPackage, "TimeTypeConverterRegistrar");
}
if (parameter.isArray
&& parameter.items.allowableValues != null
&& !parameter.items.allowableValues.isEmpty()) {
parameter.dataType = parameter.datatypeWithEnum = parameter.dataType.replace("@javax.validation.Valid ",
"");
}
parameter.vendorExtensions.put("x-datatype-without-validation", removeValidation(parameter.dataType));
}

Expand All @@ -521,6 +527,9 @@ public void postProcessModelProperty(CodegenModel model, CodegenProperty propert
if (openApiNullable && !property.required && property.isNullable) {
property.getVendorExtensions().put("x-jackson-nullable", true);
}
if (property.isArray && property.items.allowableValues != null && !property.items.allowableValues.isEmpty()) {
property.dataType = property.datatypeWithEnum = property.dataType.replace("@javax.validation.Valid ", "");
}
}

@Override
Expand Down

0 comments on commit ebc31d9

Please sign in to comment.