diff options
author | Martin Polden <mpolden@mpolden.no> | 2023-01-19 15:15:10 +0100 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2023-01-19 15:21:19 +0100 |
commit | b7d299c523aa563e910bac4be6588b6c99632b9a (patch) | |
tree | 66d3ac6590c197dde9954f81800a694482397af2 /controller-api | |
parent | b7bcd9d148d76d3be97b504d9d2f5e950f77a95f (diff) |
Stop looking for DNS records by data only
Diffstat (limited to 'controller-api')
4 files changed, 6 insertions, 33 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/AliasTarget.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/AliasTarget.java index 7ccbcf2a954..9a33113728d 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/AliasTarget.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/AliasTarget.java @@ -58,11 +58,11 @@ public sealed abstract class AliasTarget permits LatencyAliasTarget, WeightedAli /** Unpack target from given record data */ public static AliasTarget unpack(RecordData data) { String[] parts = data.asString().split("/"); - switch (parts[0]) { - case LatencyAliasTarget.TARGET_TYPE: return LatencyAliasTarget.unpack(data); - case WeightedAliasTarget.TARGET_TYPE: return WeightedAliasTarget.unpack(data); - } - throw new IllegalArgumentException("Unknown alias type '" + parts[0] + "'"); + return switch (parts[0]) { + case LatencyAliasTarget.TARGET_TYPE -> LatencyAliasTarget.unpack(data); + case WeightedAliasTarget.TARGET_TYPE -> WeightedAliasTarget.unpack(data); + default -> throw new IllegalArgumentException("Unknown alias type '" + parts[0] + "'"); + }; } } diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/LatencyAliasTarget.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/LatencyAliasTarget.java index 00e5218dead..b33a5e942fa 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/LatencyAliasTarget.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/LatencyAliasTarget.java @@ -48,7 +48,7 @@ public final class LatencyAliasTarget extends AliasTarget { @Override public String toString() { - return "latency target for " + name() + "[id=" + id() + ",dnsZone=" + dnsZone() + "]"; + return "latency target for " + name() + " [id=" + id() + ",dnsZone=" + dnsZone() + "]"; } /** Unpack latency alias from given record data */ diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/MemoryNameService.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/MemoryNameService.java index 0ca4ae66fb3..4ad54ea14b0 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/MemoryNameService.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/MemoryNameService.java @@ -7,9 +7,7 @@ import java.util.Comparator; import java.util.List; import java.util.Optional; import java.util.Set; -import java.util.TreeSet; import java.util.concurrent.ConcurrentSkipListSet; -import java.util.stream.Collectors; /** * An in-memory name service for testing purposes. @@ -85,28 +83,6 @@ public class MemoryNameService implements NameService { } @Override - public List<Record> findRecords(Record.Type type, RecordData data) { - if (type == Record.Type.ALIAS && data.asString().contains("/")) { - // Validate the same expectation as of a real name service - throw new IllegalArgumentException("Finding " + Record.Type.ALIAS + " record by data should only include " + - "the FQDN name"); - } - return records.stream() - .filter(record -> { - if (record.type() == type) { - if (type == Record.Type.ALIAS) { - // Unpack ALIAS record and compare FQDN of data part - return RecordData.fqdn(AliasTarget.unpack(record.data()).name().value()) - .equals(data); - } - return record.data().equals(data); - } - return false; - }) - .toList(); - } - - @Override public void updateRecord(Record record, RecordData newData) { var records = findRecords(record.type(), record.name()); if (records.isEmpty()) { diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/NameService.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/NameService.java index 72e983680d9..a0612fda038 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/NameService.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/NameService.java @@ -51,9 +51,6 @@ public interface NameService { /** Find all records matching given type and name */ List<Record> findRecords(Record.Type type, RecordName name); - /** Find all records matching given type and data */ - List<Record> findRecords(Record.Type type, RecordData data); - /** Update existing record */ void updateRecord(Record record, RecordData newData); |