diff options
author | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2020-01-07 16:44:06 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2020-01-09 10:43:00 +0100 |
commit | 87153258751dca1cc40abd8d86de759620059ae9 (patch) | |
tree | deb845923521492b0400a3579dc837ab2ed4bf7e /document/src | |
parent | 9c0069b54572fe91bdd961b10a2b4212e54eb792 (diff) |
Remove use of commons-collections from document
Also remove the library from parent pom as no other module is using it.
Diffstat (limited to 'document/src')
3 files changed, 22 insertions, 11 deletions
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 |