This is an automated email from the ASF dual-hosted git repository.
dahn pushed a commit to branch 4.20
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/4.20 by this push:
new 243f566a603 refactor: add null check for BroadcastDomainType
retrievals (#11572)
243f566a603 is described below
commit 243f566a603a6215505342d93d45a67d5386251e
Author: Abhishek Kumar <[email protected]>
AuthorDate: Mon Dec 1 08:19:09 2025 +0100
refactor: add null check for BroadcastDomainType retrievals (#11572)
Signed-off-by: Abhishek Kumar <[email protected]>
---
api/src/main/java/com/cloud/network/Networks.java | 12 ++++++------
api/src/test/java/com/cloud/network/NetworksTest.java | 18 ++++++++++++++++++
2 files changed, 24 insertions(+), 6 deletions(-)
diff --git a/api/src/main/java/com/cloud/network/Networks.java
b/api/src/main/java/com/cloud/network/Networks.java
index dfa0ddb84ca..8e7399bb21d 100644
--- a/api/src/main/java/com/cloud/network/Networks.java
+++ b/api/src/main/java/com/cloud/network/Networks.java
@@ -78,7 +78,7 @@ public class Networks {
}
@Override
public String getValueFrom(URI uri) {
- return uri.getAuthority();
+ return uri == null ? null : uri.getAuthority();
}
},
Vswitch("vs", String.class), LinkLocal(null, null), Vnet("vnet",
Long.class), Storage("storage", Integer.class), Lswitch("lswitch",
String.class) {
@@ -96,7 +96,7 @@ public class Networks {
*/
@Override
public String getValueFrom(URI uri) {
- return uri.getSchemeSpecificPart();
+ return uri == null ? null : uri.getSchemeSpecificPart();
}
},
Mido("mido", String.class), Pvlan("pvlan", String.class),
@@ -176,7 +176,7 @@ public class Networks {
* @return the scheme as BroadcastDomainType
*/
public static BroadcastDomainType getSchemeValue(URI uri) {
- return toEnumValue(uri.getScheme());
+ return toEnumValue(uri == null ? null : uri.getScheme());
}
/**
@@ -190,7 +190,7 @@ public class Networks {
if (com.cloud.dc.Vlan.UNTAGGED.equalsIgnoreCase(str)) {
return Native;
}
- return getSchemeValue(new URI(str));
+ return getSchemeValue(str == null ? null : new URI(str));
}
/**
@@ -219,7 +219,7 @@ public class Networks {
* @return the host part as String
*/
public String getValueFrom(URI uri) {
- return uri.getHost();
+ return uri == null ? null : uri.getHost();
}
/**
@@ -242,7 +242,7 @@ public class Networks {
* @throws URISyntaxException the string is not even an uri
*/
public static String getValue(String uriString) throws
URISyntaxException {
- return getValue(new URI(uriString));
+ return getValue(uriString == null ? null : new URI(uriString));
}
/**
diff --git a/api/src/test/java/com/cloud/network/NetworksTest.java
b/api/src/test/java/com/cloud/network/NetworksTest.java
index ef582924342..6f0f3fbd1ef 100644
--- a/api/src/test/java/com/cloud/network/NetworksTest.java
+++ b/api/src/test/java/com/cloud/network/NetworksTest.java
@@ -37,6 +37,24 @@ public class NetworksTest {
public void setUp() {
}
+ @Test
+ public void nullBroadcastDomainTypeTest() throws URISyntaxException {
+ BroadcastDomainType type = BroadcastDomainType.getTypeOf(null);
+ Assert.assertEquals("a null uri should mean a broadcasttype of
undecided", BroadcastDomainType.UnDecided, type);
+ }
+
+ @Test
+ public void nullBroadcastDomainTypeValueTest() {
+ URI uri = null;
+ Assert.assertNull(BroadcastDomainType.getValue(uri));
+ }
+
+ @Test
+ public void nullBroadcastDomainTypeStringValueTest() throws
URISyntaxException {
+ String uriString = null;
+ Assert.assertNull(BroadcastDomainType.getValue(uriString));
+ }
+
@Test
public void emptyBroadcastDomainTypeTest() throws URISyntaxException {
BroadcastDomainType type = BroadcastDomainType.getTypeOf("");