diff options
Diffstat (limited to 'config-provisioning/src/main/java/com/yahoo/config/provision/SharedHosts.java')
-rw-r--r-- | config-provisioning/src/main/java/com/yahoo/config/provision/SharedHosts.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/SharedHosts.java b/config-provisioning/src/main/java/com/yahoo/config/provision/SharedHosts.java new file mode 100644 index 00000000000..ec2660f45c8 --- /dev/null +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/SharedHosts.java @@ -0,0 +1,23 @@ +package com.yahoo.config.provision; + +/** + * @author hakonhall + */ +public interface SharedHosts { + + /** Whether there are any shared hosts specifically for the given cluster type, or without a cluster type restriction. */ + boolean supportsClusterType(ClusterSpec.Type clusterType); + + /** Whether there are any shared hosts specifically for the given cluster type. */ + boolean hasClusterType(ClusterSpec.Type clusterType); + + static SharedHosts empty() { return ofConstant(false, false); } + + static SharedHosts ofConstant(boolean supportsClusterType, boolean hasClusterType) { + return new SharedHosts() { + @Override public boolean supportsClusterType(ClusterSpec.Type clusterType) { return supportsClusterType; } + @Override public boolean hasClusterType(ClusterSpec.Type clusterType) { return hasClusterType; } + }; + } + +} |