From 83bdbbb10f893dcaeab288ff7c7158bbc7bc316f Mon Sep 17 00:00:00 2001 From: Frode Lundgren Date: Wed, 14 Aug 2019 15:43:03 +0200 Subject: Add a full string representation of application ID always including instance name. --- .../main/java/com/yahoo/config/provision/ApplicationId.java | 6 ++++++ .../java/com/yahoo/config/provision/ApplicationIdTest.java | 13 +++++++++++++ 2 files changed, 19 insertions(+) (limited to 'config-provisioning') 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 { 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 @@ -58,6 +58,19 @@ public class ApplicationIdTest { assertThat(id3.serializedForm(), is("tenant:baz:bim")); } + @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"); -- cgit v1.2.3