diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2022-03-31 14:28:48 +0200 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2022-03-31 14:28:48 +0200 |
commit | 9765bf389468f02f328f5cd80f6b8b9b61d47027 (patch) | |
tree | 20e31473333e7d57f52a1a0983a5414788e38da6 /config-provisioning/src/main/java/com/yahoo/config/provision/TenantName.java | |
parent | 89e0f91aa4743809d955000b6d00fdef5a63085d (diff) |
Use PatternedStringWrapper for TenantName, ApplicationName and InstanceName, with a lax pattern
Diffstat (limited to 'config-provisioning/src/main/java/com/yahoo/config/provision/TenantName.java')
-rw-r--r-- | config-provisioning/src/main/java/com/yahoo/config/provision/TenantName.java | 39 |
1 files changed, 7 insertions, 32 deletions
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/TenantName.java b/config-provisioning/src/main/java/com/yahoo/config/provision/TenantName.java index 92fe5345b4e..9909ab360a0 100644 --- a/config-provisioning/src/main/java/com/yahoo/config/provision/TenantName.java +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/TenantName.java @@ -1,56 +1,31 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; -import java.util.Objects; +import ai.vespa.validation.PatternedStringWrapper; /** * Represents a tenant in the provision API. * * @author Ulf Lilleengen */ -public class TenantName implements Comparable<TenantName> { +public class TenantName extends PatternedStringWrapper<TenantName> { - private final String name; + private static final TenantName defaultName = new TenantName("default"); private TenantName(String name) { - this.name = name; + super(name, ApplicationId.namePattern, "tenant name"); } - public String value() { return name; } - - /** - * Create a {@link TenantName} with a given name. - * - * @param name Name of tenant. - * @return instance of {@link TenantName}. - */ public static TenantName from(String name) { return new TenantName(name); } - @Override - public int hashCode() { - return name.hashCode(); - } - - @Override - public boolean equals(Object obj) { - if (!(obj instanceof TenantName)) return false; - return Objects.equals(((TenantName)obj).value(), value()); - } - - @Override - public String toString() { - return name; - } - public static TenantName defaultName() { - return from("default"); + return defaultName; } - @Override - public int compareTo(TenantName that) { - return this.name.compareTo(that.name); + public boolean isDefault() { + return equals(defaultName); } } |