summaryrefslogtreecommitdiffstats
path: root/jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java
diff options
context:
space:
mode:
Diffstat (limited to 'jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java')
-rw-r--r--jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java24
1 files changed, 7 insertions, 17 deletions
diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java b/jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java
index eea932b6a27..c71390dbc1c 100644
--- a/jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java
+++ b/jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java
@@ -1,17 +1,13 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.jdisc.application;
-import com.google.common.collect.ImmutableList;
-
import java.net.URI;
import java.util.Collection;
-import java.util.Collections;
-import java.util.Comparator;
import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
import java.util.Map;
+import static java.util.stream.Collectors.toUnmodifiableList;
+
/**
* <p>This is an immutable set of ordered bindings from {@link UriPattern}s to some target type T. To create an instance
* of this class, you must 1) create a {@link BindingRepository}, 2) configure it using the {@link
@@ -22,10 +18,11 @@ import java.util.Map;
public class BindingSet<T> implements Iterable<Map.Entry<UriPattern, T>> {
public static final String DEFAULT = "default";
+
private final Collection<Map.Entry<UriPattern, T>> bindings;
BindingSet(Collection<Map.Entry<UriPattern, T>> bindings) {
- this.bindings = sort(bindings);
+ this.bindings = sorted(bindings);
}
/**
@@ -71,15 +68,8 @@ public class BindingSet<T> implements Iterable<Map.Entry<UriPattern, T>> {
return bindings.iterator();
}
- private static <T> Collection<Map.Entry<UriPattern, T>> sort(Collection<Map.Entry<UriPattern, T>> unsorted) {
- List<Map.Entry<UriPattern, T>> ret = new LinkedList<>(unsorted);
- Collections.sort(ret, new Comparator<Map.Entry<UriPattern, ?>>() {
-
- @Override
- public int compare(Map.Entry<UriPattern, ?> lhs, Map.Entry<UriPattern, ?> rhs) {
- return lhs.getKey().compareTo(rhs.getKey());
- }
- });
- return ImmutableList.copyOf(ret);
+ private static <T> Collection<Map.Entry<UriPattern, T>> sorted(Collection<Map.Entry<UriPattern, T>> unsorted) {
+ return unsorted.stream().sorted(Map.Entry.comparingByKey()).collect(toUnmodifiableList());
}
+
}