aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--container-test/pom.xml4
-rw-r--r--document/pom.xml4
-rw-r--r--document/src/main/java/com/yahoo/document/annotation/AnnotationType2AnnotationContainer.java8
-rw-r--r--document/src/main/java/com/yahoo/document/annotation/SpanNode2AnnotationContainer.java12
-rw-r--r--document/src/main/java/com/yahoo/document/annotation/SpanTree.java13
-rw-r--r--parent/pom.xml5
6 files changed, 22 insertions, 24 deletions
diff --git a/container-test/pom.xml b/container-test/pom.xml
index 5ade77187cf..4b5008c8a6f 100644
--- a/container-test/pom.xml
+++ b/container-test/pom.xml
@@ -35,10 +35,6 @@
<artifactId>jackson-dataformat-xml</artifactId>
</dependency>
<dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
- </dependency>
- <dependency>
<groupId>io.airlift</groupId>
<artifactId>airline</artifactId>
<exclusions>
diff --git a/document/pom.xml b/document/pom.xml
index 1696d525f6f..f5c5dec5b7c 100644
--- a/document/pom.xml
+++ b/document/pom.xml
@@ -27,10 +27,6 @@
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
- </dependency>
- <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
diff --git a/document/src/main/java/com/yahoo/document/annotation/AnnotationType2AnnotationContainer.java b/document/src/main/java/com/yahoo/document/annotation/AnnotationType2AnnotationContainer.java
index 121ccfb2cda..b0079759b21 100644
--- a/document/src/main/java/com/yahoo/document/annotation/AnnotationType2AnnotationContainer.java
+++ b/document/src/main/java/com/yahoo/document/annotation/AnnotationType2AnnotationContainer.java
@@ -1,8 +1,10 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.document.annotation;
-import org.apache.commons.collections.map.MultiValueMap;
+import com.google.common.collect.Multimap;
+import com.google.common.collect.Multimaps;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.IdentityHashMap;
import java.util.Iterator;
@@ -10,11 +12,11 @@ import java.util.NoSuchElementException;
/**
*
- * @author <a href="mailto:einarmr@yahoo-inc.com">Einar M R Rosenvinge</a>
+ * @author Einar M R Rosenvinge
*/
// TODO: Should this be removed?
public class AnnotationType2AnnotationContainer extends IteratingAnnotationContainer {
- private final MultiValueMap annotationType2Annotation = MultiValueMap.decorate(new IdentityHashMap());
+ private final Multimap<AnnotationType, Annotation> annotationType2Annotation = Multimaps.newMultimap(new IdentityHashMap<>(), ArrayList::new);
@Override
void annotateAll(Collection<Annotation> annotations) {
diff --git a/document/src/main/java/com/yahoo/document/annotation/SpanNode2AnnotationContainer.java b/document/src/main/java/com/yahoo/document/annotation/SpanNode2AnnotationContainer.java
index b65b6b7b4d6..c19f02f5c0b 100644
--- a/document/src/main/java/com/yahoo/document/annotation/SpanNode2AnnotationContainer.java
+++ b/document/src/main/java/com/yahoo/document/annotation/SpanNode2AnnotationContainer.java
@@ -1,7 +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.document.annotation;
-import org.apache.commons.collections.map.MultiValueMap;
+
+import com.google.common.collect.Multimap;
+import com.google.common.collect.Multimaps;
import java.util.ArrayList;
import java.util.Collection;
@@ -13,10 +15,10 @@ import java.util.List;
/**
* TODO: Should this be removed?
*
- * @author <a href="mailto:einarmr@yahoo-inc.com">Einar M R Rosenvinge</a>
+ * @author Einar M R Rosenvinge
*/
class SpanNode2AnnotationContainer extends AnnotationContainer {
- private final MultiValueMap spanNode2Annotation = MultiValueMap.decorate(new IdentityHashMap());
+ private final Multimap<SpanNode, Annotation> spanNode2Annotation = Multimaps.newMultimap(new IdentityHashMap<>(), ArrayList::new);
@Override
void annotateAll(Collection<Annotation> annotations) {
@@ -43,7 +45,7 @@ class SpanNode2AnnotationContainer extends AnnotationContainer {
@Override
@SuppressWarnings("unchecked")
Iterator<Annotation> iterator(SpanNode node) {
- Collection<Annotation> annotationsForNode = spanNode2Annotation.getCollection(node);
+ Collection<Annotation> annotationsForNode = spanNode2Annotation.get(node);
if (annotationsForNode == null) {
return Collections.<Annotation>emptyList().iterator();
}
@@ -63,7 +65,7 @@ class SpanNode2AnnotationContainer extends AnnotationContainer {
}
List<Collection<Annotation>> annotationLists = new ArrayList<Collection<Annotation>>(nodes.size());
for (SpanNode includedNode : nodes.keySet()) {
- Collection<Annotation> includedAnnotations = spanNode2Annotation.getCollection(includedNode);
+ Collection<Annotation> includedAnnotations = spanNode2Annotation.get(includedNode);
if (includedAnnotations != null) {
annotationLists.add(includedAnnotations);
}
diff --git a/document/src/main/java/com/yahoo/document/annotation/SpanTree.java b/document/src/main/java/com/yahoo/document/annotation/SpanTree.java
index 2206d95aa38..05e5ff41cf1 100644
--- a/document/src/main/java/com/yahoo/document/annotation/SpanTree.java
+++ b/document/src/main/java/com/yahoo/document/annotation/SpanTree.java
@@ -2,6 +2,7 @@
package com.yahoo.document.annotation;
import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableMultiset;
import com.yahoo.document.CollectionDataType;
import com.yahoo.document.Field;
import com.yahoo.document.MapDataType;
@@ -11,9 +12,14 @@ import com.yahoo.document.datatypes.FieldValue;
import com.yahoo.document.datatypes.MapFieldValue;
import com.yahoo.document.datatypes.StringFieldValue;
import com.yahoo.document.datatypes.StructuredFieldValue;
-import org.apache.commons.collections.CollectionUtils;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.IdentityHashMap;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
/**
* A SpanTree holds a root node of a tree of SpanNodes, and a List of Annotations pointing to these nodes
@@ -672,7 +678,8 @@ public class SpanTree implements Iterable<Annotation>, SpanNodeParent, Comparabl
List<Annotation> annotationCollection = new LinkedList<Annotation>(getAnnotations());
List<Annotation> otherAnnotations = new LinkedList<Annotation>(tree.getAnnotations());
- return annotationCollection.size() == otherAnnotations.size() && CollectionUtils.isEqualCollection(annotationCollection, otherAnnotations);
+ return annotationCollection.size() == otherAnnotations.size() &&
+ ImmutableMultiset.copyOf(annotationCollection).equals(ImmutableMultiset.copyOf(otherAnnotations));
}
@Override
diff --git a/parent/pom.xml b/parent/pom.xml
index f76aab78e2e..3ced5f3d8f9 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -478,11 +478,6 @@
<version>1.3.1</version>
</dependency>
<dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
- <version>3.2.1</version>
- </dependency>
- <dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>2.0</version>