summaryrefslogtreecommitdiffstats
path: root/config-provisioning
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@oath.com>2019-08-14 15:49:37 +0200
committerGitHub <noreply@github.com>2019-08-14 15:49:37 +0200
commit49fc9006704ebac3636547151f1af0468e505b93 (patch)
tree7d797a7c5a5391266d464d6255b859b77ad77149 /config-provisioning
parent99c504e215122c6cfda72cd31063d4fa252f274b (diff)
parent83bdbbb10f893dcaeab288ff7c7158bbc7bc316f (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.java6
-rw-r--r--config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java13
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"));