Fix compatibility issues with Java 1.8 Map
Java 1.8 Map implements default methods - remove(K, V), which conflicts
with the remove(String, V) in gov.nist.core.MultiMapImp. This changes
deletes the method from the interface - gov.nist.core.MultiMap
as well as from the implementation in gov.nist.core.MultiMapImp as no
caller were found for the same.
Bug: 27426743
Change-Id: Ib19c608edcf5c866852bcc48cb18b40972f5e04c
diff --git a/java/gov/nist/core/MultiMap.java b/java/gov/nist/core/MultiMap.java
deleted file mode 100644
index 1bcf845..0000000
--- a/java/gov/nist/core/MultiMap.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package gov.nist.core;
-
-/*
- * Copyright 1999-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import java.util.Map;
-
-/**
- * This is simply a Map with slightly different semantics.
- * Instead of returning an Object, it returns a Collection.
- * So for example, you can put( key, new Integer(1) );
- * and then a Object get( key ); will return you a Collection
- * instead of an Integer.
- * Thus, this is simply a tag interface.
- *
- * @since 2.0
- * @author Christopher Berry
- * @author <a href="mailto:jstrachan@apache.org">James Strachan</a>
- */
-public interface MultiMap extends Map {
-
- public Object remove( Object key, Object item );
-
-}
diff --git a/java/gov/nist/core/MultiValueMap.java b/java/gov/nist/core/MultiValueMap.java
index 51b8174..8c6920c 100644
--- a/java/gov/nist/core/MultiValueMap.java
+++ b/java/gov/nist/core/MultiValueMap.java
@@ -5,5 +5,6 @@
import java.util.Map;
public interface MultiValueMap<K,V> extends Map<K,List<V>>, Serializable {
- public Object remove( K key, V item );
+ // remove(K, V) conflicts with a Map method added in 1.8. http://b/27426743
+ /*public Object remove( K key, V item );*/
}
diff --git a/java/gov/nist/core/MultiValueMapImpl.java b/java/gov/nist/core/MultiValueMapImpl.java
index 04368e8..90ef324 100644
--- a/java/gov/nist/core/MultiValueMapImpl.java
+++ b/java/gov/nist/core/MultiValueMapImpl.java
@@ -122,14 +122,15 @@
return this.map.keySet();
}
- public Object remove(String key, V item) {
+ // remove(K, V) conflicts with a Map method added in 1.8. http://b/27426743
+ /*public Object remove(String key, V item) {
ArrayList<V> list = this.map.get(key);
if (list == null) {
return null;
} else {
return list.remove(item);
}
- }
+ }*/
public List<V> get(Object key) {
return map.get(key);