Initial import from Fedora

Related: rhbz#2064785
This commit is contained in:
Mikolaj Izdebski 2022-07-28 12:46:11 +02:00
parent 78d19b2126
commit 9b68eef19f
6 changed files with 489 additions and 0 deletions

1
.gitignore vendored
View File

@ -0,0 +1 @@
/commons-collections-3.2.2-src.tar.gz

View File

@ -0,0 +1,13 @@
diff --git a/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java b/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
index dfde362..00c5d26 100644
--- a/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
+++ b/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
@@ -1116,7 +1116,7 @@ public abstract class AbstractTestCollection extends AbstractTestObject {
verify();
try {
- array = collection.toArray(null);
+ array = collection.toArray((Object[])null);
fail("toArray(null) should raise NPE");
} catch (NullPointerException e) {
// expected

187
0001-Port-to-Java-8.patch Normal file
View File

@ -0,0 +1,187 @@
From 93a0da9fde8676714db9d79ac003749940a76044 Mon Sep 17 00:00:00 2001
From: Michael Simacek <msimacek@redhat.com>
Date: Tue, 17 Nov 2015 01:02:55 +0100
Subject: [PATCH] Port to Java 8
---
.../org/apache/commons/collections/MultiHashMap.java | 8 ++++----
src/java/org/apache/commons/collections/MultiMap.java | 4 ++--
.../apache/commons/collections/map/MultiKeyMap.java | 8 +++++---
.../apache/commons/collections/map/MultiValueMap.java | 8 ++++----
.../apache/commons/collections/TestMultiHashMap.java | 10 +++++-----
.../commons/collections/map/TestMultiKeyMap.java | 4 ++--
.../commons/collections/map/TestMultiValueMap.java | 10 +++++-----
7 files changed, 27 insertions(+), 25 deletions(-)
diff --git a/src/java/org/apache/commons/collections/MultiHashMap.java b/src/java/org/apache/commons/collections/MultiHashMap.java
index 7fec9af..bcb4a11 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 be9455b..4d9cc7d 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 9e3e02d..969d11e 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 f44999b..79938dc 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 eca833a..f47c6f9 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 b1ee3d0..66fcade 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:
diff --git a/src/test/org/apache/commons/collections/map/TestMultiValueMap.java b/src/test/org/apache/commons/collections/map/TestMultiValueMap.java
index b9a5ac8..b37dc0c 100644
--- a/src/test/org/apache/commons/collections/map/TestMultiValueMap.java
+++ b/src/test/org/apache/commons/collections/map/TestMultiValueMap.java
@@ -338,11 +338,11 @@ public class TestMultiValueMap extends TestCase {
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 MultiValueMap(), map);
}
--
2.21.0

View File

@ -0,0 +1,25 @@
From 085b289c17f7047f4350d52bf594313392ae0caa Mon Sep 17 00:00:00 2001
From: Marian Koncek <mkoncek@redhat.com>
Date: Thu, 31 Oct 2019 12:30:12 +0100
Subject: [PATCH] Port to OpenJDK 11
---
.../commons/collections/collection/AbstractTestCollection.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java b/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
index dfde362..8287f33 100644
--- a/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
+++ b/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
@@ -1116,7 +1116,7 @@ public abstract class AbstractTestCollection extends AbstractTestObject {
verify();
try {
- array = collection.toArray(null);
+ array = collection.toArray((Object[]) null);
fail("toArray(null) should raise NPE");
} catch (NullPointerException e) {
// expected
--
2.21.0

View File

@ -0,0 +1,262 @@
%bcond_with bootstrap
Name: apache-commons-collections
Version: 3.2.2
Release: 28%{?dist}
Summary: Provides new interfaces, implementations and utilities for Java Collections
License: ASL 2.0
URL: http://commons.apache.org/collections/
BuildArch: noarch
ExclusiveArch: %{java_arches} noarch
Source0: http://www.apache.org/dist/commons/collections/source/commons-collections-%{version}-src.tar.gz
Patch0: 0001-Port-to-Java-8.patch
Patch1: 0002-Port-to-OpenJDK-11.patch
%if %{with bootstrap}
BuildRequires: javapackages-bootstrap
%else
BuildRequires: maven-local
BuildRequires: mvn(junit:junit)
BuildRequires: mvn(org.apache.commons:commons-parent:pom:)
BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
%endif
%description
The introduction of the Collections API by Sun in JDK 1.2 has been a
boon to quick and effective Java programming. Ready access to powerful
data structures has accelerated development by reducing the need for
custom container classes around each core object. Most Java2 APIs are
significantly easier to use because of the Collections API.
However, there are certain holes left unfilled by Sun's
implementations, and the Jakarta-Commons Collections Component strives
to fulfill them. Among the features of this package are:
- special-purpose implementations of Lists and Maps for fast access
- adapter classes from Java1-style containers (arrays, enumerations) to
Java2-style collections.
- methods to test or create typical set-theory properties of collections
such as union, intersection, and closure.
%package testframework
Summary: Testframework for %{name}
Requires: %{name} = %{version}-%{release}
%description testframework
%{summary}.
%package javadoc
Summary: Javadoc for %{name}
%description javadoc
%{summary}.
%prep
%setup -q -n commons-collections-%{version}-src
# remove all binary libs
find . -name "*.jar" -exec rm -f {} \;
find . -name "*.class" -exec rm -f {} \;
%patch0 -p1
%patch1 -p1
# Port to maven-antrun-plugin 3.0.0
sed -i s/tasks/target/ pom.xml
# Fix file eof
sed -i 's/\r//' LICENSE.txt PROPOSAL.html README.txt NOTICE.txt
%mvn_package :commons-collections-testframework testframework
%mvn_file ':commons-collections{,-testframework}' %{name}@1 commons-collections@1
%build
%mvn_build -- -Dmaven.compiler.source=1.7 -Dmaven.compiler.target=1.7 -Dcommons.osgi.symbolicName=org.apache.commons.collections
%install
%mvn_artifact commons-collections:commons-collections-testframework:%{version} target/commons-collections-testframework-%{version}.jar
%mvn_install
%files -f .mfiles
%doc PROPOSAL.html README.txt
%license LICENSE.txt NOTICE.txt
%files testframework -f .mfiles-testframework
%files javadoc -f .mfiles-javadoc
%license LICENSE.txt NOTICE.txt
%changelog
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-28
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Feb 05 2022 Jiri Vanek <jvanek@redhat.com> - 3.2.2-27
- Rebuilt for java-17-openjdk as system jdk
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Nov 02 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.2-25
- Bump Java compiler source/target levels to 1.7
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon May 17 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.2-23
- Bootstrap build
- Non-bootstrap build
* Fri Mar 05 2021 Mat Booth <mat.booth@redhat.com> - 3.2.2-22
- Backport fix to build with maven-antrun-plugin 3.0.0
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 10 2020 Jiri Vanek <jvanek@redhat.com> - 3.2.2-19
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
* Fri Jun 26 2020 Alexander Kurtakov <akurtako@redhat.com> 3.2.2-18
- Rebuild to verify xmvn/maven switch to jakarta-annotations.
* Thu Jun 25 2020 Roland Grunberg <rgrunber@redhat.com> - 3.2.2-17
- Fix ambiguous reference in AbstractTestCollection to build on Java 11.
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Nov 15 2019 Fabio Valentini <decathorpe@gmail.com> - 3.2.2-15
- Adapt build and install scriptlets to fix issues in dependencies.
* Tue Nov 05 2019 Fabio Valentini <decathorpe@gmail.com> - 3.2.2-14
- Really actually skip tests to fix builds with xmvn 3.1.0.
* Tue Nov 05 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.2-13
- Mass rebuild for javapackages-tools 201902
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Jun 28 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.2-12
- Enable tests
* Fri May 24 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.2-11
- Mass rebuild for javapackages-tools 201901
* Fri Feb 08 2019 Mat Booth <mat.booth@redhat.com> - 3.2.2-12
- Rebuild to regenerate OSGi metadata
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu Jul 12 2018 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.2-9
- Remove workaround for symlink->directory rpm bug
* Tue Apr 24 2018 Mat Booth <mat.booth@redhat.com> - 3.2.2-8
- Allow testframework to still be built even with tests disabled, which is
needed by other packages
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Mon Sep 18 2017 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.2-6
- Temporarly disable running tests
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Mar 23 2016 Michael Simacek <msimacek@redhat.com> - 3.2.2-3
- Add workaround for symlink->directory rpm bug
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Mon Nov 16 2015 Michael Simacek <msimacek@redhat.com> - 3.2.2-1
- Update to upstream version 3.2.2
- Merge two javadoc subpackages
- Install with XMVn
- Specfile cleanup
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.1-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Oct 23 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.1-25
- Remove requires on apache-commons-parent
* Fri Oct 17 2014 Timothy St. Clair <tstclair@redhat.com> - 3.2.1-24
- Fix broken Java 8 build
* Tue Oct 14 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.1-23
- Remove legacy Obsoletes/Provides for jakarta-commons
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.1-22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Wed May 21 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.1-21
- Use .mfiles generated during build
* Tue Mar 04 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 3.2.1-20
- Use Requires: java-headless rebuild (#1067528)
* Mon Aug 12 2013 Mat Booth <fedora@matbooth.co.uk> - 3.2.1-19
- Fix FTBFS rhbz #991965
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.1-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Mon Apr 29 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.2.1-17
- Remove unneeded BR: maven-idea-plugin
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.1-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Wed Feb 06 2013 Java SIG <java-devel@lists.fedoraproject.org> - 3.2.1-15
- Update for https://fedoraproject.org/wiki/Fedora_19_Maven_Rebuild
- Replace maven BuildRequires with maven-local
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.1-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Wed Feb 08 2012 Jaromir Capik <jcapik@redhat.com> 3.2.1-13
- saxon dependency removed - not needed
- minor spec file changes according to the latest guidelines
* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.1-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Mon Jun 6 2011 Chris Spike <spike@fedoraproject.org> 3.2.1-11
- Added *-testframework depmap entries.
* Wed Mar 16 2011 Alexander Kurtakov <akurtako@redhat.com> 3.2.1-10
- Drop tomcat5 subpackage.
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Mon Nov 8 2010 Alexander Kurtakov <akurtako@redhat.com> 3.2.1-8
- Add commons-collections:commons-collections depmap.
* Mon Oct 4 2010 Alexander Kurtakov <akurtako@redhat.com> 3.2.1-7
- Fix pom name.
- Use newer maven plugins names.
* Tue Aug 31 2010 Carl Green <carlgreen at gmail.com> - 3.2.1-6
- Change package to own files in directories, not the directories
* Mon Aug 30 2010 Carl Green <carlgreen at gmail.com> - 3.2.1-5
- Remove source and patches no longer needed for Maven
- Fix non-standard groups and remove empty sections
- Fix file permissions
* Sat Aug 28 2010 Carl Green <carlgreen at gmail.com> - 3.2.1-4
- Renamed from jakarta-commons-collections
- Updated to use maven2
- Replaced saxon:group instruction with xsl:for-each-group in pom-maven2jpp-newdepmap.xsl

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (commons-collections-3.2.2-src.tar.gz) = 2e8ef638f07515b028a3e7e97851fcf1d9023a2c188e211bd1e936f35d3d91c2885adf3b1103ad17dfb7aeea6e7a67ce7826ee346a8a29c1aa7c6b0cf14e9230