Hello community, here is the log from the commit of package apache-commons-collections for openSUSE:Factory checked in at 2015-08-01 11:38:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/apache-commons-collections (Old) and /work/SRC/openSUSE:Factory/.apache-commons-collections.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "apache-commons-collections" Changes: -------- --- /work/SRC/openSUSE:Factory/apache-commons-collections/apache-commons-collections.changes 2015-04-02 15:52:30.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.apache-commons-collections.new/apache-commons-collections.changes 2015-08-01 11:38:20.000000000 +0200 @@ -1,0 +2,6 @@ +Wed Jul 29 10:46:22 UTC 2015 - tchvatal@suse.com + +- Fix build with jdk8: + * java8-compat.patch + +------------------------------------------------------------------- New: ---- java8-compat.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ apache-commons-collections.spec ++++++ --- /var/tmp/diff_new_pack.qECkHl/_old 2015-08-01 11:38:21.000000000 +0200 +++ /var/tmp/diff_new_pack.qECkHl/_new 2015-08-01 11:38:21.000000000 +0200 @@ -24,14 +24,17 @@ Summary: Commons Collections Package License: Apache-2.0 Group: Development/Libraries/Java -Url: http://commons.apache.org/%{base_name}/ +Url: http://commons.apache.org/commons-collections/ Source0: http://www.apache.org/dist/commons/%{base_name}/source/%{short_name}-%{version}-src.tar.gz Source1: commons-collections-testframework.pom Patch0: jakarta-commons-collections-javadoc-nonet.patch Patch1: commons-collections-3.2-build_xml.patch +# PATCH-FIX-UPSTREAM build with jdk8 +Patch2: java8-compat.patch BuildRequires: ant BuildRequires: ant-junit BuildRequires: apache-commons-parent +BuildRequires: dos2unix BuildRequires: java-devel BuildRequires: javapackages-tools BuildRequires: junit @@ -91,6 +94,8 @@ %patch0 -p1 %patch1 +find . -name "*.java" |xargs dos2unix +%patch2 -p1 # Fix file eof sed -i 's/\r//' LICENSE.txt ++++++ java8-compat.patch ++++++ diff --git a/src/java/org/apache/commons/collections/MultiHashMap.java b/src/java/org/apache/commons/collections/MultiHashMap.java index 25158b4..ab0ca71 100644 --- a/src/java/org/apache/commons/collections/MultiHashMap.java +++ b/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; } /** diff --git a/src/java/org/apache/commons/collections/MultiMap.java b/src/java/org/apache/commons/collections/MultiMap.java index 8cd7212..60f22ae 100644 --- a/src/java/org/apache/commons/collections/MultiMap.java +++ b/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. diff --git a/src/java/org/apache/commons/collections/map/MultiKeyMap.java b/src/java/org/apache/commons/collections/map/MultiKeyMap.java index 1ba1cea..3523b5c 100644 --- a/src/java/org/apache/commons/collections/map/MultiKeyMap.java +++ b/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; } /** diff --git a/src/java/org/apache/commons/collections/map/MultiValueMap.java b/src/java/org/apache/commons/collections/map/MultiValueMap.java index cc74fd7..b347e84 100644 --- a/src/java/org/apache/commons/collections/map/MultiValueMap.java +++ b/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; } /** diff --git a/src/test/org/apache/commons/collections/TestMultiHashMap.java b/src/test/org/apache/commons/collections/TestMultiHashMap.java index 722bec0..2268d85 100644 --- a/src/test/org/apache/commons/collections/TestMultiHashMap.java +++ b/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); } diff --git a/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java b/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java index 6e528fb..9faabf7 100644 --- a/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java +++ b/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: