summaryrefslogtreecommitdiffstats
path: root/config-provisioning
diff options
context:
space:
mode:
authorMorten Tokle <mortent@oath.com>2017-11-15 12:53:54 +0100
committerMorten Tokle <mortent@oath.com>2017-11-15 12:59:02 +0100
commit32ec23d54aad2a32584446470faaa33e76cd773e (patch)
treeb0a2eaa728a8e30471cd7aaed55778ef8c39fd9b /config-provisioning
parentdea483613029d3975c433ebc717b6ee66fddf80a (diff)
Add new field for loadbalancername, deprecate loadbalanceraddress
Diffstat (limited to 'config-provisioning')
-rw-r--r--config-provisioning/src/main/java/com/yahoo/config/provision/HostName.java52
1 files changed, 52 insertions, 0 deletions
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/HostName.java b/config-provisioning/src/main/java/com/yahoo/config/provision/HostName.java
new file mode 100644
index 00000000000..510122c2342
--- /dev/null
+++ b/config-provisioning/src/main/java/com/yahoo/config/provision/HostName.java
@@ -0,0 +1,52 @@
+// Copyright 2017 Yahoo Holdings. 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;
+
+/**
+ * Represents a host name
+ *
+ * @author mortent
+ */
+public class HostName implements Comparable<HostName> {
+
+ private final String name;
+
+ private HostName(String name) {
+ this.name = name;
+ }
+
+ public String value() { return name; }
+
+ /**
+ * Create a {@link HostName} with a given name.
+ *
+ * @param name Name
+ * @return instance of {@link HostName}.
+ */
+ public static HostName from(String name) {
+ return new HostName(name);
+ }
+
+ @Override
+ public int hashCode() {
+ return name.hashCode();
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (!(obj instanceof HostName)) return false;
+ return Objects.equals(((HostName)obj).value(), value());
+ }
+
+ @Override
+ public String toString() {
+ return name;
+ }
+
+ @Override
+ public int compareTo(HostName that) {
+ return this.name.compareTo(that.name);
+ }
+
+}