summaryrefslogtreecommitdiffstats
path: root/config-provisioning
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2023-11-01 09:42:39 +0100
committerjonmv <venstad@gmail.com>2023-11-01 09:42:39 +0100
commitcdcf0c2eddde976dae18f09034664f460984814f (patch)
tree64288bdfeba31b55e82deebe3f2cfc6fc546fbff /config-provisioning
parentb1cad5f46cf104f077379690828e8b0b2ba6edb3 (diff)
Avoid clinit deadlock between ApplicationId and its constituent field classes
Diffstat (limited to 'config-provisioning')
-rw-r--r--config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationId.java7
-rw-r--r--config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationName.java5
-rw-r--r--config-provisioning/src/main/java/com/yahoo/config/provision/InstanceName.java5
-rw-r--r--config-provisioning/src/main/java/com/yahoo/config/provision/TenantName.java5
4 files changed, 12 insertions, 10 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 f3f181d2023..f0a2dc069e8 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
@@ -5,11 +5,8 @@ import com.yahoo.cloud.config.ApplicationIdConfig;
import java.util.Comparator;
import java.util.Objects;
-import java.util.logging.Logger;
import java.util.regex.Pattern;
-import static java.util.logging.Level.SEVERE;
-
/**
* A complete, immutable identification of an application instance.
*
@@ -19,10 +16,6 @@ import static java.util.logging.Level.SEVERE;
*/
public class ApplicationId implements Comparable<ApplicationId> {
- private static final Logger log = Logger.getLogger(ApplicationId.class.getName());
-
- static final Pattern namePattern = Pattern.compile("[a-zA-Z0-9_-]{1,256}");
-
private static final ApplicationId global = new ApplicationId(TenantName.from("hosted-vespa"),
ApplicationName.from("routing"),
InstanceName.from("default")) { };
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationName.java b/config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationName.java
index 57045212421..1fea171675d 100644
--- a/config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationName.java
+++ b/config-provisioning/src/main/java/com/yahoo/config/provision/ApplicationName.java
@@ -3,6 +3,8 @@ package com.yahoo.config.provision;
import ai.vespa.validation.PatternedStringWrapper;
+import java.util.regex.Pattern;
+
/**
* Represents an applications name, which may be any kind of string or default. This type is defined
* in order to provide a type safe API for defining environments.
@@ -12,10 +14,11 @@ import ai.vespa.validation.PatternedStringWrapper;
*/
public class ApplicationName extends PatternedStringWrapper<ApplicationName> {
+ private static final Pattern namePattern = Pattern.compile("[a-zA-Z0-9_-]{1,256}");
private static final ApplicationName defaultName = new ApplicationName("default");
private ApplicationName(String name) {
- super(name, ApplicationId.namePattern, "application name");
+ super(name, namePattern, "application name");
}
public static ApplicationName from(String name) {
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/InstanceName.java b/config-provisioning/src/main/java/com/yahoo/config/provision/InstanceName.java
index 9578c83e8af..36ae635b80e 100644
--- a/config-provisioning/src/main/java/com/yahoo/config/provision/InstanceName.java
+++ b/config-provisioning/src/main/java/com/yahoo/config/provision/InstanceName.java
@@ -3,6 +3,8 @@ package com.yahoo.config.provision;
import ai.vespa.validation.PatternedStringWrapper;
+import java.util.regex.Pattern;
+
/**
* Represents an applications instance name, which may be any kind of string or default. This type is defined
* in order to provide a type safe API for defining environments.
@@ -11,10 +13,11 @@ import ai.vespa.validation.PatternedStringWrapper;
*/
public class InstanceName extends PatternedStringWrapper<InstanceName> {
+ private static final Pattern namePattern = Pattern.compile("[a-zA-Z0-9_-]{1,256}");
private static final InstanceName defaultName = new InstanceName("default");
private InstanceName(String name) {
- super(name, ApplicationId.namePattern, "instance name");
+ super(name, namePattern, "instance name");
}
public static InstanceName from(String name) {
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 4b37c4f4c63..e1198a52b27 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
@@ -3,6 +3,8 @@ package com.yahoo.config.provision;
import ai.vespa.validation.PatternedStringWrapper;
+import java.util.regex.Pattern;
+
/**
* Represents a tenant in the provision API.
*
@@ -10,10 +12,11 @@ import ai.vespa.validation.PatternedStringWrapper;
*/
public class TenantName extends PatternedStringWrapper<TenantName> {
+ private static final Pattern namePattern = Pattern.compile("[a-zA-Z0-9_-]{1,256}");
private static final TenantName defaultName = new TenantName("default");
private TenantName(String name) {
- super(name, ApplicationId.namePattern, "tenant name");
+ super(name, namePattern, "tenant name");
}
public static TenantName from(String name) {