From b7d299c523aa563e910bac4be6588b6c99632b9a Mon Sep 17 00:00:00 2001 From: Martin Polden Date: Thu, 19 Jan 2023 15:15:10 +0100 Subject: Stop looking for DNS records by data only --- .../api/integration/dns/AliasTarget.java | 10 ++++----- .../api/integration/dns/LatencyAliasTarget.java | 2 +- .../api/integration/dns/MemoryNameService.java | 24 ---------------------- .../api/integration/dns/NameService.java | 3 --- 4 files changed, 6 insertions(+), 33 deletions(-) (limited to 'controller-api/src') 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. @@ -84,28 +82,6 @@ public class MemoryNameService implements NameService { .toList(); } - @Override - public List 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()); 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 findRecords(Record.Type type, RecordName name); - /** Find all records matching given type and data */ - List findRecords(Record.Type type, RecordData data); - /** Update existing record */ void updateRecord(Record record, RecordData newData); -- cgit v1.2.3