diff options
author | Valerij Fredriksen <valerijf@verizonmedia.com> | 2019-02-11 13:25:06 +0100 |
---|---|---|
committer | Valerij Fredriksen <valerijf@verizonmedia.com> | 2019-02-11 13:25:06 +0100 |
commit | b0d7b9b33bc3354d193ed13b79e52baf11343cd1 (patch) | |
tree | 37582f4fc39b989e48a85c5d803cf4e0b004de05 /config-provisioning | |
parent | bfaa9c16b35545e36e98c3ed67199177040e999c (diff) |
Add CloudName to Zone
Diffstat (limited to 'config-provisioning')
-rw-r--r-- | config-provisioning/abi-spec.json | 4 | ||||
-rw-r--r-- | config-provisioning/src/main/java/com/yahoo/config/provision/Zone.java | 32 |
2 files changed, 25 insertions, 11 deletions
diff --git a/config-provisioning/abi-spec.json b/config-provisioning/abi-spec.json index c0128f8d837..849d92696ff 100644 --- a/config-provisioning/abi-spec.json +++ b/config-provisioning/abi-spec.json @@ -692,9 +692,11 @@ "public void <init>(com.yahoo.cloud.config.ConfigserverConfig, com.yahoo.config.provision.NodeFlavors)", "public void <init>(com.yahoo.config.provision.Environment, com.yahoo.config.provision.RegionName)", "public void <init>(com.yahoo.config.provision.SystemName, com.yahoo.config.provision.Environment, com.yahoo.config.provision.RegionName)", + "public void <init>(com.yahoo.config.provision.CloudName, com.yahoo.config.provision.SystemName, com.yahoo.config.provision.Environment, com.yahoo.config.provision.RegionName)", + "public com.yahoo.config.provision.CloudName cloud()", + "public com.yahoo.config.provision.SystemName system()", "public com.yahoo.config.provision.Environment environment()", "public com.yahoo.config.provision.RegionName region()", - "public com.yahoo.config.provision.SystemName system()", "public java.lang.String defaultFlavor(com.yahoo.config.provision.ClusterSpec$Type)", "public java.util.Optional nodeFlavors()", "public static com.yahoo.config.provision.Zone defaultZone()", diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/Zone.java b/config-provisioning/src/main/java/com/yahoo/config/provision/Zone.java index fbbdb1df635..6b1e1406c8f 100644 --- a/config-provisioning/src/main/java/com/yahoo/config/provision/Zone.java +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/Zone.java @@ -17,15 +17,17 @@ import java.util.Optional; */ public class Zone { + private final CloudName cloudName; private final SystemName systemName; - private final FlavorDefaults flavorDefaults; - private final Optional<NodeFlavors> nodeFlavors; private final Environment environment; private final RegionName region; + private final FlavorDefaults flavorDefaults; + private final Optional<NodeFlavors> nodeFlavors; @Inject public Zone(ConfigserverConfig configserverConfig, NodeFlavors nodeFlavors) { - this(SystemName.from(configserverConfig.system()), + this(CloudName.from(configserverConfig.cloud()), + SystemName.from(configserverConfig.system()), Environment.from(configserverConfig.environment()), RegionName.from(configserverConfig.region()), new FlavorDefaults(configserverConfig), @@ -39,21 +41,34 @@ public class Zone { /** Create from system, environment and region. Use for testing. */ public Zone(SystemName systemName, Environment environment, RegionName region) { - this(systemName, environment, region, new FlavorDefaults("default"), null); + this(CloudName.defaultName(), systemName, environment, region, new FlavorDefaults("default"), null); } - private Zone(SystemName systemName, + /** Create from cloud, system, environment and region. Use for testing. */ + public Zone(CloudName cloudName, SystemName systemName, Environment environment, RegionName region) { + this(cloudName, systemName, environment, region, new FlavorDefaults("default"), null); + } + + private Zone(CloudName cloudName, + SystemName systemName, Environment environment, RegionName region, FlavorDefaults flavorDefaults, NodeFlavors nodeFlavors) { + this.cloudName = cloudName; + this.systemName = systemName; this.environment = environment; this.region = region; this.flavorDefaults = flavorDefaults; - this.systemName = systemName; this.nodeFlavors = Optional.ofNullable(nodeFlavors); } + /** Returns the current cloud */ + public CloudName cloud() { return cloudName; } + + /** Returns the current system */ + public SystemName system() { return systemName; } + /** Returns the current environment */ public Environment environment() { return environment; @@ -64,9 +79,6 @@ public class Zone { return region; } - /** Returns the current system */ - public SystemName system() { return systemName; } - /** Returns the default hardware flavor to assign in this zone */ public String defaultFlavor(ClusterSpec.Type clusterType) { return flavorDefaults.flavor(clusterType); } @@ -75,7 +87,7 @@ public class Zone { /** Do not use */ public static Zone defaultZone() { - return new Zone(SystemName.defaultSystem(), Environment.defaultEnvironment(), RegionName.defaultName()); + return new Zone(CloudName.defaultName(), SystemName.defaultSystem(), Environment.defaultEnvironment(), RegionName.defaultName()); } @Override |