diff options
Diffstat (limited to 'config-provisioning/src/main/java/com/yahoo/config/provision/HostSpec.java')
-rw-r--r-- | config-provisioning/src/main/java/com/yahoo/config/provision/HostSpec.java | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/HostSpec.java b/config-provisioning/src/main/java/com/yahoo/config/provision/HostSpec.java index b68139f3578..174a8ce4d97 100644 --- a/config-provisioning/src/main/java/com/yahoo/config/provision/HostSpec.java +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/HostSpec.java @@ -24,26 +24,29 @@ public class HostSpec implements Comparable<HostSpec> { /** The current membership role of this host in the cluster it belongs to */ private final Optional<ClusterMembership> membership; + private final Optional<String> flavor; + public HostSpec(String hostname, Optional<ClusterMembership> membership) { - this(hostname, new ArrayList<>(), membership); + this(hostname, new ArrayList<>(), Optional.empty(), membership); } - public HostSpec(String hostname, ClusterMembership membership) { - this(hostname, new ArrayList<>(), Optional.of(membership)); + public HostSpec(String hostname, ClusterMembership membership, String flavor) { + this(hostname, new ArrayList<>(), Optional.of(flavor), Optional.of(membership)); } public HostSpec(String hostname, List<String> aliases) { - this(hostname, aliases, Optional.empty()); + this(hostname, aliases, Optional.empty(), Optional.empty()); } public HostSpec(String hostname, List<String> aliases, ClusterMembership membership) { - this(hostname, aliases, Optional.of(membership)); + this(hostname, aliases, Optional.empty(), Optional.of(membership)); } - public HostSpec(String hostname, List<String> aliases, Optional<ClusterMembership> membership) { + public HostSpec(String hostname, List<String> aliases, Optional<String> flavor, Optional<ClusterMembership> membership) { if (hostname == null || hostname.isEmpty()) throw new IllegalArgumentException("Hostname must be specified"); this.hostname = hostname; this.aliases = ImmutableList.copyOf(aliases); + this.flavor = flavor; this.membership = membership; } @@ -53,6 +56,8 @@ public class HostSpec implements Comparable<HostSpec> { /** Returns the aliases of this host as an immutable list. This may be empty but never null. */ public List<String> aliases() { return aliases; } + public Optional<String> flavor() { return flavor; } + /** Returns the membership of this host, or an empty value if not present */ public Optional<ClusterMembership> membership() { return membership; } |