From b59ce49e3be5c2b5c71d1d8e40c15f722bfff7ef Mon Sep 17 00:00:00 2001 From: Michael Clarke Date: Wed, 13 Mar 2019 09:58:40 +0000 Subject: [PATCH] Fixed issue across API when generating JSON. Previously, if an attribute was not set, and thus an enum had a value of null (which is likely, as not all fields are required for all requests), a Bad Request: UNKNOWN_ATTRIBUTE response was thrown by the server. --- pom.xml | 15 ++++++++++ .../upcloud/client/models/AddressFamily.java | 6 +++- .../com/upcloud/client/models/BackupRule.java | 6 +++- .../com/upcloud/client/models/ErrorCode.java | 6 +++- .../upcloud/client/models/ErrorStatus.java | 6 +++- .../upcloud/client/models/FirewallRule.java | 20 ++++++++++--- .../com/upcloud/client/models/IpAddress.java | 18 +++++++++-- .../upcloud/client/models/RestartServer.java | 12 ++++++-- .../com/upcloud/client/models/Server.java | 30 +++++++++++++++---- .../upcloud/client/models/ServerState.java | 6 +++- .../client/models/StopServerRequest.java | 6 +++- .../client/models/StorageAccessType.java | 6 +++- .../upcloud/client/models/StorageDevice.java | 6 +++- .../upcloud/client/models/StorageState.java | 6 +++- .../upcloud/client/models/StorageTier.java | 6 +++- .../upcloud/client/models/StorageType.java | 6 +++- 16 files changed, 136 insertions(+), 25 deletions(-) diff --git a/pom.xml b/pom.xml index e4ed373..cb9bbc2 100644 --- a/pom.xml +++ b/pom.xml @@ -242,6 +242,21 @@ ${junit.vintage.version} test + + org.apache.tomcat.embed + tomcat-embed-core + 8.0.30 + + + org.apache.tomcat.embed + tomcat-embed-core + 8.0.30 + + + org.apache.tomcat.embed + tomcat-embed-core + 8.0.30 + 1.8 diff --git a/src/main/java/com/upcloud/client/models/AddressFamily.java b/src/main/java/com/upcloud/client/models/AddressFamily.java index 3744eaa..2ef9478 100644 --- a/src/main/java/com/upcloud/client/models/AddressFamily.java +++ b/src/main/java/com/upcloud/client/models/AddressFamily.java @@ -55,7 +55,11 @@ public static AddressFamily fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final AddressFamily enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/BackupRule.java b/src/main/java/com/upcloud/client/models/BackupRule.java index de74750..ca3cac8 100644 --- a/src/main/java/com/upcloud/client/models/BackupRule.java +++ b/src/main/java/com/upcloud/client/models/BackupRule.java @@ -74,7 +74,11 @@ public static IntervalEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final IntervalEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/ErrorCode.java b/src/main/java/com/upcloud/client/models/ErrorCode.java index b308976..af85c29 100644 --- a/src/main/java/com/upcloud/client/models/ErrorCode.java +++ b/src/main/java/com/upcloud/client/models/ErrorCode.java @@ -159,7 +159,11 @@ public static ErrorCode fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final ErrorCode enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/ErrorStatus.java b/src/main/java/com/upcloud/client/models/ErrorStatus.java index 340a734..0e2df61 100644 --- a/src/main/java/com/upcloud/client/models/ErrorStatus.java +++ b/src/main/java/com/upcloud/client/models/ErrorStatus.java @@ -61,7 +61,11 @@ public static ErrorStatus fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final ErrorStatus enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/FirewallRule.java b/src/main/java/com/upcloud/client/models/FirewallRule.java index c8363f1..f6e28e9 100644 --- a/src/main/java/com/upcloud/client/models/FirewallRule.java +++ b/src/main/java/com/upcloud/client/models/FirewallRule.java @@ -62,7 +62,11 @@ public static DirectionEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final DirectionEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override @@ -84,7 +88,7 @@ public enum ActionEnum { ACCEPT("accept"), REJECT("reject"), - + DROP("drop"); private String value; @@ -114,7 +118,11 @@ public static ActionEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final ActionEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override @@ -172,7 +180,11 @@ public static ProtocolEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final ProtocolEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/IpAddress.java b/src/main/java/com/upcloud/client/models/IpAddress.java index ad44bc3..e804e89 100644 --- a/src/main/java/com/upcloud/client/models/IpAddress.java +++ b/src/main/java/com/upcloud/client/models/IpAddress.java @@ -62,7 +62,11 @@ public static AccessEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final AccessEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override @@ -115,7 +119,11 @@ public static FamilyEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final FamilyEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override @@ -171,7 +179,11 @@ public static PartOfPlanEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final PartOfPlanEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/RestartServer.java b/src/main/java/com/upcloud/client/models/RestartServer.java index b8ea6b1..7aae84b 100644 --- a/src/main/java/com/upcloud/client/models/RestartServer.java +++ b/src/main/java/com/upcloud/client/models/RestartServer.java @@ -61,7 +61,11 @@ public static StopTypeEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final StopTypeEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override @@ -114,7 +118,11 @@ public static TimeoutActionEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final TimeoutActionEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/Server.java b/src/main/java/com/upcloud/client/models/Server.java index 7e1fc0b..72835ba 100644 --- a/src/main/java/com/upcloud/client/models/Server.java +++ b/src/main/java/com/upcloud/client/models/Server.java @@ -71,7 +71,11 @@ public static BootOrderEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final BootOrderEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override @@ -124,7 +128,11 @@ public static FirewallEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final FirewallEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override @@ -219,7 +227,11 @@ public static VideoModelEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final VideoModelEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override @@ -269,7 +281,11 @@ public static VncEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final VncEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override @@ -333,7 +349,11 @@ public static PasswordDeliveryEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final PasswordDeliveryEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/ServerState.java b/src/main/java/com/upcloud/client/models/ServerState.java index 0dede59..464207b 100644 --- a/src/main/java/com/upcloud/client/models/ServerState.java +++ b/src/main/java/com/upcloud/client/models/ServerState.java @@ -60,7 +60,11 @@ public static ServerState fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final ServerState enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/StopServerRequest.java b/src/main/java/com/upcloud/client/models/StopServerRequest.java index 8b86588..696687d 100644 --- a/src/main/java/com/upcloud/client/models/StopServerRequest.java +++ b/src/main/java/com/upcloud/client/models/StopServerRequest.java @@ -62,7 +62,11 @@ public static StopTypeEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final StopTypeEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/StorageAccessType.java b/src/main/java/com/upcloud/client/models/StorageAccessType.java index 726ed0d..515eca6 100644 --- a/src/main/java/com/upcloud/client/models/StorageAccessType.java +++ b/src/main/java/com/upcloud/client/models/StorageAccessType.java @@ -56,7 +56,11 @@ public static StorageAccessType fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final StorageAccessType enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/StorageDevice.java b/src/main/java/com/upcloud/client/models/StorageDevice.java index 2563aac..29d3360 100644 --- a/src/main/java/com/upcloud/client/models/StorageDevice.java +++ b/src/main/java/com/upcloud/client/models/StorageDevice.java @@ -76,7 +76,11 @@ public static PartOfPlanEnum fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final PartOfPlanEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/StorageState.java b/src/main/java/com/upcloud/client/models/StorageState.java index 62a5e2a..0edcc28 100644 --- a/src/main/java/com/upcloud/client/models/StorageState.java +++ b/src/main/java/com/upcloud/client/models/StorageState.java @@ -62,7 +62,11 @@ public static StorageState fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final StorageState enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/StorageTier.java b/src/main/java/com/upcloud/client/models/StorageTier.java index 65238c5..973e9a5 100644 --- a/src/main/java/com/upcloud/client/models/StorageTier.java +++ b/src/main/java/com/upcloud/client/models/StorageTier.java @@ -56,7 +56,11 @@ public static StorageTier fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final StorageTier enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override diff --git a/src/main/java/com/upcloud/client/models/StorageType.java b/src/main/java/com/upcloud/client/models/StorageType.java index 0d4b489..183d28c 100644 --- a/src/main/java/com/upcloud/client/models/StorageType.java +++ b/src/main/java/com/upcloud/client/models/StorageType.java @@ -62,7 +62,11 @@ public static StorageType fromValue(String text) { public static class Adapter extends TypeAdapter { @Override public void write(final JsonWriter jsonWriter, final StorageType enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); + if (enumeration != null) { + jsonWriter.value(enumeration.getValue()); + } else { + jsonWriter.nullValue(); + } } @Override