diff options
author | Harald Musum <musum@yahooinc.com> | 2023-06-16 10:03:36 +0200 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2023-06-16 10:03:36 +0200 |
commit | 21faca7fc562172a439566d41259dc5dcb2a7541 (patch) | |
tree | 8a3b5702fa4f0f69b36680242e730501b46cd7c7 /config-provisioning | |
parent | c4ee70e6e474f29afe7ab2ef09fb678c8f275b73 (diff) |
Throw exception when trying to create ApplicationId from from a string with too many parts
Diffstat (limited to 'config-provisioning')
-rw-r--r-- | config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationId.java | 11 | ||||
-rw-r--r-- | config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java | 3 |
2 files changed, 3 insertions, 11 deletions
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationId.java b/config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationId.java index 69d25cd118a..49e0b0f478d 100644 --- a/config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationId.java +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationId.java @@ -64,14 +64,9 @@ public class ApplicationId implements Comparable<ApplicationId> { private static ApplicationId fromIdString(String idString, String splitCharacter) { String[] parts = idString.split(Pattern.quote(splitCharacter)); - String errorMessage = "Application ids must be on the form tenant" + - splitCharacter + "application" + splitCharacter + "instance, but was " + idString; - if (parts.length < 3) - throw new IllegalArgumentException(errorMessage); - // TODO: Throw exception when we have verified no-one is abusing this with more than 3 parts in id string - // Include code in require_that_invalid_idstring_throws_exception() in ApplicationIdTest to test this - if (parts.length > 3) - log.log(SEVERE, errorMessage); + if (parts.length != 3) + throw new IllegalArgumentException("Application ids must be on the form tenant" + + splitCharacter + "application" + splitCharacter + "instance, but was " + idString); return from(parts[0], parts[1], parts[2]); } diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java index 72f2a64a599..c4896a8d78b 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java @@ -86,14 +86,11 @@ public class ApplicationIdTest { e = assertThrows(IllegalArgumentException.class, () -> ApplicationId.fromFullString("foo.baz")); assertEquals("Application ids must be on the form tenant.application.instance, but was foo.baz", e.getMessage()); - // TODO: Add when we throw exception on strings with too many parts - /* e = assertThrows(IllegalArgumentException.class, () -> ApplicationId.fromSerializedForm("foo:baz:bar:xyzzy")); assertEquals("Application ids must be on the form tenant:application:instance, but was foo:baz:bar:xyzzy", e.getMessage()); e = assertThrows(IllegalArgumentException.class, () -> ApplicationId.fromFullString("foo.baz.bar.xyzzy")); assertEquals("Application ids must be on the form tenant.application.instance, but was foo.baz.bar.xyzzy", e.getMessage()); - */ } @Test |