diff options
author | Jon Bratseth <bratseth@oath.com> | 2019-08-14 15:49:37 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-14 15:49:37 +0200 |
commit | 49fc9006704ebac3636547151f1af0468e505b93 (patch) | |
tree | 7d797a7c5a5391266d464d6255b859b77ad77149 /config-provisioning | |
parent | 99c504e215122c6cfda72cd31063d4fa252f274b (diff) | |
parent | 83bdbbb10f893dcaeab288ff7c7158bbc7bc316f (diff) |
Merge pull request #10275 from vespa-engine/frodelu/appid-full-string
Add a full string representation of application ID always including instance name
Diffstat (limited to 'config-provisioning')
-rw-r--r-- | config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationId.java | 6 | ||||
-rw-r--r-- | config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java | 13 |
2 files changed, 19 insertions, 0 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 dbc57dd5abd..f175af3e2f1 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 @@ -68,11 +68,17 @@ public final class ApplicationId implements Comparable<ApplicationId> { return "tenant '" + tenant + "', application '" + application + "', instance '" + instance + "'"; } + /** Returns "dotted" string (tenant.application.instance) with instance name omitted if it is "default" */ public String toShortString() { return tenant().value() + "." + application().value() + ( instance().isDefault() ? "" : "." + instance().value() ); } + /** Returns "dotted" string (tenant.application.instance) with instance name always included */ + public String toFullString() { + return tenant().value() + "." + application().value() + "." + instance().value(); + } + private String toSerializedForm() { return tenant + ":" + application + ":" + instance; } 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 93c01ccffcd..b331fa89d32 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 @@ -59,6 +59,19 @@ public class ApplicationIdTest { } @Test + public void require_string_formats_are_correct() { + ApplicationId id1 = applicationId("foo"); + ApplicationId id2 = idFrom("bar", "baz", "default"); + ApplicationId id3 = idFrom("tenant", "baz", "bim"); + assertThat(id1.toShortString(), is("default.foo")); + assertThat(id1.toFullString(), is("default.foo.default")); + assertThat(id2.toShortString(), is("bar.baz")); + assertThat(id2.toFullString(), is("bar.baz.default")); + assertThat(id3.toShortString(), is("tenant.baz.bim")); + assertThat(id3.toFullString(), is("tenant.baz.bim")); + } + + @Test public void require_that_idstring_can_be_parsed() { ApplicationId id = ApplicationId.fromSerializedForm("ten:foo:bim"); assertThat(id.tenant().value(), is("ten")); |