summaryrefslogtreecommitdiffstats
path: root/jrt
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-04-23 14:54:39 +0200
committerGitHub <noreply@github.com>2019-04-23 14:54:39 +0200
commitb53856d693eb83c9c0dd1031c0eaa8e6986f823a (patch)
treee350d7063a7cfd13bd77d46bc7e7565225d0f721 /jrt
parent13f29d40fc7e1a8a1c44faad7258460227ca4578 (diff)
parent9e7180cb7a2ef747bb72560097fedbdb8f5f08f1 (diff)
Merge pull request #9155 from vespa-engine/balder/update-lookup-interface
Change interface from Mirror.Entry[] to List<Mirror.Entry> as you alr…
Diffstat (limited to 'jrt')
-rw-r--r--jrt/src/com/yahoo/jrt/slobrok/api/IMirror.java4
-rw-r--r--jrt/src/com/yahoo/jrt/slobrok/api/Mirror.java5
-rw-r--r--jrt/tests/com/yahoo/jrt/SlobrokTest.java33
3 files changed, 21 insertions, 21 deletions
diff --git a/jrt/src/com/yahoo/jrt/slobrok/api/IMirror.java b/jrt/src/com/yahoo/jrt/slobrok/api/IMirror.java
index 9b3bd81fc3c..0079e2c9d67 100644
--- a/jrt/src/com/yahoo/jrt/slobrok/api/IMirror.java
+++ b/jrt/src/com/yahoo/jrt/slobrok/api/IMirror.java
@@ -1,6 +1,8 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.jrt.slobrok.api;
+import java.util.List;
+
/**
* Defines an interface for the name server lookup.
*
@@ -21,7 +23,7 @@ public interface IMirror {
* @return a list of all matching services, with corresponding connect specs
* @param pattern The pattern used for matching
**/
- Mirror.Entry[] lookup(String pattern);
+ List<Mirror.Entry> lookup(String pattern);
/**
* Obtain the number of updates seen by this mirror. The value may wrap, but will never become 0 again. This can be
diff --git a/jrt/src/com/yahoo/jrt/slobrok/api/Mirror.java b/jrt/src/com/yahoo/jrt/slobrok/api/Mirror.java
index 127aa3d0d4f..c632191e31d 100644
--- a/jrt/src/com/yahoo/jrt/slobrok/api/Mirror.java
+++ b/jrt/src/com/yahoo/jrt/slobrok/api/Mirror.java
@@ -14,6 +14,7 @@ import com.yahoo.jrt.Values;
import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import java.util.logging.Logger;
import java.util.logging.Level;
@@ -86,7 +87,7 @@ public class Mirror implements IMirror {
}
@Override
- public Entry[] lookup(String pattern) {
+ public List<Entry> lookup(String pattern) {
ArrayList<Entry> found = new ArrayList<>();
char[] p = pattern.toCharArray();
for (Entry specEntry : specs) {
@@ -94,7 +95,7 @@ public class Mirror implements IMirror {
found.add(specEntry);
}
}
- return found.toArray(new Entry[found.size()]);
+ return found;
}
@Override
diff --git a/jrt/tests/com/yahoo/jrt/SlobrokTest.java b/jrt/tests/com/yahoo/jrt/SlobrokTest.java
index ee15c7cd1de..20266b0826a 100644
--- a/jrt/tests/com/yahoo/jrt/SlobrokTest.java
+++ b/jrt/tests/com/yahoo/jrt/SlobrokTest.java
@@ -1,10 +1,9 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.jrt;
-
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.Comparator;
+import java.util.List;
import com.yahoo.jrt.slobrok.api.SlobrokList;
import com.yahoo.jrt.slobrok.api.Mirror;
@@ -17,7 +16,6 @@ import org.junit.Before;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
-
public class SlobrokTest {
private static class SpecList extends ArrayList<Mirror.Entry> {
@@ -71,14 +69,13 @@ public class SlobrokTest {
return a.compareTo(b);
}
};
- Mirror.Entry[] expect =
- result.toArray(new Mirror.Entry[result.size()]);
- Arrays.sort(expect, cmp);
- Mirror.Entry[] actual = new Mirror.Entry[0];
+ List<Entry> expect = result;
+ expect.sort(cmp);
+ List<Entry> actual = new ArrayList<>();
for (int i = 0; i < 1000; i++) {
actual = mirror.lookup(pattern);
- Arrays.sort(actual, cmp);
- if (Arrays.equals(actual, expect)) {
+ actual.sort(cmp);
+ if (actual.equals(expect)) {
// err("lookup successful for pattern: " + pattern);
return;
}
@@ -87,18 +84,18 @@ public class SlobrokTest {
error = true;
err("lookup failed for pattern: " + pattern);
err("actual values:");
- if (actual.length == 0) {
+ if (actual.isEmpty()) {
err(" { EMPTY }");
}
- for (int i = 0; i < actual.length; i++) {
- err(" {" + actual[i].getName() + ", " + actual[i].getSpec() + "}");
+ for (Entry e : actual) {
+ err(" {" + e.getName() + ", " + e.getSpec() + "}");
}
err("expected values:");
- if (expect.length == 0) {
+ if (expect.isEmpty()) {
err(" { EMPTY }");
}
- for (int i = 0; i < expect.length; i++) {
- err(" {" + expect[i].getName() + ", " + expect[i].getSpec() + "}");
+ for (Entry e : expect) {
+ err(" {" + e.getName() + ", " + e.getSpec() + "}");
}
}
@@ -113,9 +110,9 @@ public class SlobrokTest {
assertTrue(mirror.ready());
assertTrue(mirror.updates() > 0);
- Mirror.Entry[] oneArr = mirror.lookup("*/*/*");
- assertTrue(oneArr.length == 1);
- Mirror.Entry one = oneArr[0];
+ List<Entry> oneArr = mirror.lookup("*/*/*");
+ assertTrue(oneArr.size() == 1);
+ Mirror.Entry one = oneArr.get(0);
assertTrue(one.equals(new Mirror.Entry(wantName, mySpec)));
assertFalse(one.equals(new Mirror.Entry("B/x/w", mySpec)));
assertFalse(one.equals(new Mirror.Entry(wantName, "foo:99")));