summaryrefslogtreecommitdiffstats
path: root/controller-api
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2017-12-08 10:53:57 +0100
committerMartin Polden <mpolden@mpolden.no>2017-12-08 13:42:08 +0100
commit032ee30e2303558a89d2d77e82929e1a277097bd (patch)
tree5fef9b9ef341fb94efbf648d618ea5552b092839 /controller-api
parented0b3edafaaeb707fb8a8603c332488937c19d68 (diff)
Ensure that global DNS always points to assigned rotation
Diffstat (limited to 'controller-api')
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/Record.java14
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/RecordData.java6
2 files changed, 13 insertions, 7 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/Record.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/Record.java
index fd9bddac2c6..293749be32d 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/Record.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/Record.java
@@ -13,13 +13,13 @@ public class Record {
private final RecordId id;
private final Type type;
private final RecordName name;
- private final RecordData value;
+ private final RecordData data;
- public Record(RecordId id, Type type, RecordName name, RecordData value) {
+ public Record(RecordId id, Type type, RecordName name, RecordData data) {
this.id = Objects.requireNonNull(id, "id cannot be null");
this.type = Objects.requireNonNull(type, "type cannot be null");
this.name = Objects.requireNonNull(name, "name cannot be null");
- this.value = Objects.requireNonNull(value, "value cannot be null");
+ this.data = Objects.requireNonNull(data, "data cannot be null");
}
/** Unique identifier for this */
@@ -34,7 +34,7 @@ public class Record {
/** Value for this, e.g. IP address for "A" record */
public RecordData value() {
- return value;
+ return data;
}
/** Name of this, e.g. a FQDN for "A" record */
@@ -60,7 +60,7 @@ public class Record {
"id=" + id +
", type=" + type +
", name='" + name + '\'' +
- ", value='" + value + '\'' +
+ ", data='" + data + '\'' +
'}';
}
@@ -72,11 +72,11 @@ public class Record {
return Objects.equals(id, record.id) &&
type == record.type &&
Objects.equals(name, record.name) &&
- Objects.equals(value, record.value);
+ Objects.equals(data, record.data);
}
@Override
public int hashCode() {
- return Objects.hash(id, type, name, value);
+ return Objects.hash(id, type, name, data);
}
}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/RecordData.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/RecordData.java
index 444ee28f672..e0d19e0fff9 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/RecordData.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/RecordData.java
@@ -42,8 +42,14 @@ public class RecordData {
'}';
}
+ /** Create a new record containing the given data */
public static RecordData from(String data) {
return new RecordData(data);
}
+ /** Create a new record and append a trailing dot to given data, if missing */
+ public static RecordData fqdn(String data) {
+ return from(data.endsWith(".") ? data : data + ".");
+ }
+
}