diff options
author | Max Brazhnikov <makc@FreeBSD.org> | 2016-11-02 11:15:40 +0000 |
---|---|---|
committer | Max Brazhnikov <makc@FreeBSD.org> | 2016-11-02 11:15:40 +0000 |
commit | 9acbc598170cbf87e2416f8122cacb4d86dd371c (patch) | |
tree | 740255f75561446d44568217c878d737b01458ff /java/jakarta-commons-collections | |
parent | 61fabd6dc55df7cbaa2685767b5a34971a3190b6 (diff) | |
download | ports-9acbc598170cbf87e2416f8122cacb4d86dd371c.tar.gz ports-9acbc598170cbf87e2416f8122cacb4d86dd371c.zip |
Notes
Diffstat (limited to 'java/jakarta-commons-collections')
-rw-r--r-- | java/jakarta-commons-collections/Makefile | 6 | ||||
-rw-r--r-- | java/jakarta-commons-collections/files/patch-jdk8 | 144 |
2 files changed, 148 insertions, 2 deletions
diff --git a/java/jakarta-commons-collections/Makefile b/java/jakarta-commons-collections/Makefile index ba29cceee54a..8d18f1a2c234 100644 --- a/java/jakarta-commons-collections/Makefile +++ b/java/jakarta-commons-collections/Makefile @@ -8,12 +8,14 @@ MASTER_SITES= APACHE_COMMONS_SOURCE PKGNAMEPREFIX= jakarta- DISTNAME= ${PORTNAME}-${PORTVERSION}-src -MAINTAINER= ports@FreeBSD.org +MAINTAINER= makc@FreeBSD.org COMMENT= Classes that extend/augment the Java Collections Framework USE_JAVA= yes -JAVA_VERSION= 1.6 1.7 +JAVA_VERSION= 1.6+ USE_ANT= yes +USES= dos2unix +DOS2UNIX_GLOB= Multi*.java Test*.java ALL_TARGET= jar PLIST_FILES= %%JAVAJARDIR%%/${PORTNAME}.jar diff --git a/java/jakarta-commons-collections/files/patch-jdk8 b/java/jakarta-commons-collections/files/patch-jdk8 new file mode 100644 index 000000000000..3c4cd156b6b3 --- /dev/null +++ b/java/jakarta-commons-collections/files/patch-jdk8 @@ -0,0 +1,144 @@ +--- src/java/org/apache/commons/collections/MultiHashMap.java ++++ src/java/org/apache/commons/collections/MultiHashMap.java +@@ -331,21 +331,21 @@ public class MultiHashMap extends HashMap implements MultiMap { + * @param item the value to remove + * @return the value removed (which was passed in), null if nothing removed + */ +- public Object remove(Object key, Object item) { ++ public boolean remove(Object key, Object item) { + Collection valuesForKey = getCollection(key); + if (valuesForKey == null) { +- return null; ++ return false; + } + boolean removed = valuesForKey.remove(item); + if (removed == false) { +- return null; ++ return false; + } + // remove the list if it is now empty + // (saves space, and allows equals to work) + if (valuesForKey.isEmpty()){ + remove(key); + } +- return item; ++ return true; + } + + /** + +--- src/java/org/apache/commons/collections/MultiMap.java ++++ src/java/org/apache/commons/collections/MultiMap.java +@@ -66,7 +66,7 @@ public interface MultiMap extends Map { + * @throws ClassCastException if the key or value is of an invalid type + * @throws NullPointerException if the key or value is null and null is invalid + */ +- public Object remove(Object key, Object item); ++ public boolean remove(Object key, Object item); + + //----------------------------------------------------------------------- + /** +@@ -144,7 +144,7 @@ public interface MultiMap extends Map { + * @throws ClassCastException if the key is of an invalid type + * @throws NullPointerException if the key is null and null keys are invalid + */ +- Object remove(Object key); ++ //boolean remove(Object key); + + /** + * Gets a collection containing all the values in the map. + +--- src/java/org/apache/commons/collections/map/MultiKeyMap.java ++++ src/java/org/apache/commons/collections/map/MultiKeyMap.java +@@ -197,7 +197,7 @@ public class MultiKeyMap + * @param key2 the second key + * @return the value mapped to the removed key, null if key not in map + */ +- public Object remove(Object key1, Object key2) { ++ public boolean remove(Object key1, Object key2) { + int hashCode = hash(key1, key2); + int index = map.hashIndex(hashCode, map.data.length); + AbstractHashedMap.HashEntry entry = map.data[index]; +@@ -206,12 +206,14 @@ public class MultiKeyMap + if (entry.hashCode == hashCode && isEqualKey(entry, key1, key2)) { + Object oldValue = entry.getValue(); + map.removeMapping(entry, index, previous); +- return oldValue; ++ //return oldValue; ++ return true; + } + previous = entry; + entry = entry.next; + } +- return null; ++ //return null; ++ return false; + } + + /** + +--- src/java/org/apache/commons/collections/map/MultiValueMap.java ++++ src/java/org/apache/commons/collections/map/MultiValueMap.java +@@ -153,19 +153,19 @@ public class MultiValueMap extends AbstractMapDecorator implements MultiMap { + * @param value the value to remove + * @return the value removed (which was passed in), null if nothing removed + */ +- public Object remove(Object key, Object value) { ++ public boolean remove(Object key, Object value) { + Collection valuesForKey = getCollection(key); + if (valuesForKey == null) { +- return null; ++ return false; + } + boolean removed = valuesForKey.remove(value); + if (removed == false) { +- return null; ++ return false; + } + if (valuesForKey.isEmpty()) { + remove(key); + } +- return value; ++ return true; + } + + /** + +--- src/test/org/apache/commons/collections/TestMultiHashMap.java ++++ src/test/org/apache/commons/collections/TestMultiHashMap.java +@@ -464,11 +464,11 @@ public class TestMultiHashMap extends AbstractTestMap { + map.put("A", "AA"); + map.put("A", "AB"); + map.put("A", "AC"); +- assertEquals(null, map.remove("C", "CA")); +- assertEquals(null, map.remove("A", "AD")); +- assertEquals("AC", map.remove("A", "AC")); +- assertEquals("AB", map.remove("A", "AB")); +- assertEquals("AA", map.remove("A", "AA")); ++ assertEquals(false, map.remove("C", "CA")); ++ assertEquals(false, map.remove("A", "AD")); ++ assertEquals(true, map.remove("A", "AC")); ++ assertEquals(true, map.remove("A", "AB")); ++ assertEquals(true, map.remove("A", "AA")); + assertEquals(new MultiHashMap(), map); + } + + +--- src/test/org/apache/commons/collections/map/TestMultiKeyMap.java ++++ src/test/org/apache/commons/collections/map/TestMultiKeyMap.java +@@ -315,10 +315,10 @@ public class TestMultiKeyMap extends AbstractTestIterableMap { + switch (key.size()) { + case 2: + assertEquals(true, multimap.containsKey(key.getKey(0), key.getKey(1))); +- assertEquals(value, multimap.remove(key.getKey(0), key.getKey(1))); ++ assertEquals(true, multimap.remove(key.getKey(0), key.getKey(1))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1))); + assertEquals(size - 1, multimap.size()); +- assertEquals(null, multimap.remove(key.getKey(0), key.getKey(1))); ++ assertEquals(false, multimap.remove(key.getKey(0), key.getKey(1))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1))); + break; + case 3: +-- +2.5.0 + |