From b90542f21e48455a1871be8767e71e2303da0ccf Mon Sep 17 00:00:00 2001 From: "Srivastava, Piyush" Date: Tue, 28 Apr 2026 15:47:55 +0530 Subject: [PATCH 1/3] bugfix/CSTACKEX-169: Fix enum case sensitive issues --- .../cloudstack/storage/feign/model/ExportRule.java | 7 ++++++- .../cloudstack/storage/feign/model/Igroup.java | 12 ++++++++++-- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java index 087e9aa681b4..cd0adb1c338d 100644 --- a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java +++ b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java @@ -19,9 +19,11 @@ package org.apache.cloudstack.storage.feign.model; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonValue; import java.util.List; /** @@ -54,6 +56,7 @@ public enum ProtocolsEnum { this.value = value; } + @JsonValue public String getValue() { return value; } @@ -63,9 +66,11 @@ public String toString() { return String.valueOf(value); } + @JsonCreator public static ProtocolsEnum fromValue(String text) { + if (text == null) return null; for (ProtocolsEnum b : ProtocolsEnum.values()) { - if (String.valueOf(b.value).equals(text)) { + if (b.value.equalsIgnoreCase(text)) { return b; } } diff --git a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/Igroup.java b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/Igroup.java index 3596a802f941..9d68f405b813 100644 --- a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/Igroup.java +++ b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/Igroup.java @@ -19,9 +19,11 @@ package org.apache.cloudstack.storage.feign.model; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonValue; import java.util.List; import java.util.Objects; @@ -71,6 +73,7 @@ public enum OsTypeEnum { this.value = value; } + @JsonValue public String getValue() { return value; } @@ -80,9 +83,11 @@ public String toString() { return String.valueOf(value); } + @JsonCreator public static OsTypeEnum fromValue(String text) { + if (text == null) return null; for (OsTypeEnum b : OsTypeEnum.values()) { - if (String.valueOf(b.value).equals(text)) { + if (b.value.equalsIgnoreCase(text)) { return b; } } @@ -122,6 +127,7 @@ public enum ProtocolEnum { this.value = value; } + @JsonValue public String getValue() { return value; } @@ -131,9 +137,11 @@ public String toString() { return String.valueOf(value); } + @JsonCreator public static ProtocolEnum fromValue(String text) { + if (text == null) return null; for (ProtocolEnum b : ProtocolEnum.values()) { - if (String.valueOf(b.value).equals(text)) { + if (b.value.equalsIgnoreCase(text)) { return b; } } From 0ef0206a8bd3d08b147a9f9ffb185fc7b9281d91 Mon Sep 17 00:00:00 2001 From: "Srivastava, Piyush" Date: Mon, 4 May 2026 11:26:42 +0530 Subject: [PATCH 2/3] bugfix/CSTACKEX-169: Added NPE for b.value --- .../org/apache/cloudstack/storage/feign/model/ExportRule.java | 2 +- .../org/apache/cloudstack/storage/feign/model/Igroup.java | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java index cd0adb1c338d..5ca9021112f9 100644 --- a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java +++ b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java @@ -70,7 +70,7 @@ public String toString() { public static ProtocolsEnum fromValue(String text) { if (text == null) return null; for (ProtocolsEnum b : ProtocolsEnum.values()) { - if (b.value.equalsIgnoreCase(text)) { + if (text.equalsIgnoreCase(b.value)) { return b; } } diff --git a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/Igroup.java b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/Igroup.java index 9d68f405b813..a81e0a69d030 100644 --- a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/Igroup.java +++ b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/Igroup.java @@ -87,7 +87,7 @@ public String toString() { public static OsTypeEnum fromValue(String text) { if (text == null) return null; for (OsTypeEnum b : OsTypeEnum.values()) { - if (b.value.equalsIgnoreCase(text)) { + if (text.equalsIgnoreCase(b.value)) { return b; } } @@ -141,7 +141,7 @@ public String toString() { public static ProtocolEnum fromValue(String text) { if (text == null) return null; for (ProtocolEnum b : ProtocolEnum.values()) { - if (b.value.equalsIgnoreCase(text)) { + if (text.equalsIgnoreCase(b.value)) { return b; } } From 0ddd85b69df3fd0a4866e8f7b1a5184d663e5d88 Mon Sep 17 00:00:00 2001 From: "Srivastava, Piyush" Date: Mon, 4 May 2026 12:27:54 +0530 Subject: [PATCH 3/3] bugfix/CSTACKEX-169: remove unwanted change --- .../apache/cloudstack/storage/feign/model/ExportRule.java | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java index 5ca9021112f9..087e9aa681b4 100644 --- a/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java +++ b/plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ExportRule.java @@ -19,11 +19,9 @@ package org.apache.cloudstack.storage.feign.model; -import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonValue; import java.util.List; /** @@ -56,7 +54,6 @@ public enum ProtocolsEnum { this.value = value; } - @JsonValue public String getValue() { return value; } @@ -66,11 +63,9 @@ public String toString() { return String.valueOf(value); } - @JsonCreator public static ProtocolsEnum fromValue(String text) { - if (text == null) return null; for (ProtocolsEnum b : ProtocolsEnum.values()) { - if (text.equalsIgnoreCase(b.value)) { + if (String.valueOf(b.value).equals(text)) { return b; } }