Better handling of x-nullable in codegen property (#14800)

* add failed tests

* add logic to handle x-nullable in property

* update samples

* update test
This commit is contained in:
William Cheng
2023-02-24 15:24:34 +08:00
committed by GitHub
parent b527f3b816
commit d400d7fb15
17 changed files with 247 additions and 7 deletions

View File

@@ -104,6 +104,10 @@ public class DefaultValue {
@SerializedName(SERIALIZED_NAME_ARRAY_STRING_NULLABLE)
private List<String> arrayStringNullable;
public static final String SERIALIZED_NAME_ARRAY_STRING_EXTENSION_NULLABLE = "array_string_extension_nullable";
@SerializedName(SERIALIZED_NAME_ARRAY_STRING_EXTENSION_NULLABLE)
private List<String> arrayStringExtensionNullable;
public static final String SERIALIZED_NAME_STRING_NULLABLE = "string_nullable";
@SerializedName(SERIALIZED_NAME_STRING_NULLABLE)
private String stringNullable;
@@ -288,6 +292,33 @@ public class DefaultValue {
}
public DefaultValue arrayStringExtensionNullable(List<String> arrayStringExtensionNullable) {
this.arrayStringExtensionNullable = arrayStringExtensionNullable;
return this;
}
public DefaultValue addArrayStringExtensionNullableItem(String arrayStringExtensionNullableItem) {
this.arrayStringExtensionNullable.add(arrayStringExtensionNullableItem);
return this;
}
/**
* Get arrayStringExtensionNullable
* @return arrayStringExtensionNullable
**/
@javax.annotation.Nullable
public List<String> getArrayStringExtensionNullable() {
return arrayStringExtensionNullable;
}
public void setArrayStringExtensionNullable(List<String> arrayStringExtensionNullable) {
this.arrayStringExtensionNullable = arrayStringExtensionNullable;
}
public DefaultValue stringNullable(String stringNullable) {
this.stringNullable = stringNullable;
@@ -325,6 +356,7 @@ public class DefaultValue {
Objects.equals(this.arrayIntegerDefault, defaultValue.arrayIntegerDefault) &&
Objects.equals(this.arrayString, defaultValue.arrayString) &&
Objects.equals(this.arrayStringNullable, defaultValue.arrayStringNullable) &&
Objects.equals(this.arrayStringExtensionNullable, defaultValue.arrayStringExtensionNullable) &&
Objects.equals(this.stringNullable, defaultValue.stringNullable);
}
@@ -334,7 +366,7 @@ public class DefaultValue {
@Override
public int hashCode() {
return Objects.hash(arrayStringEnumRefDefault, arrayStringEnumDefault, arrayStringDefault, arrayIntegerDefault, arrayString, arrayStringNullable, stringNullable);
return Objects.hash(arrayStringEnumRefDefault, arrayStringEnumDefault, arrayStringDefault, arrayIntegerDefault, arrayString, arrayStringNullable, arrayStringExtensionNullable, stringNullable);
}
private static <T> int hashCodeNullable(JsonNullable<T> a) {
@@ -354,6 +386,7 @@ public class DefaultValue {
sb.append(" arrayIntegerDefault: ").append(toIndentedString(arrayIntegerDefault)).append("\n");
sb.append(" arrayString: ").append(toIndentedString(arrayString)).append("\n");
sb.append(" arrayStringNullable: ").append(toIndentedString(arrayStringNullable)).append("\n");
sb.append(" arrayStringExtensionNullable: ").append(toIndentedString(arrayStringExtensionNullable)).append("\n");
sb.append(" stringNullable: ").append(toIndentedString(stringNullable)).append("\n");
sb.append("}");
return sb.toString();