Blob Blame History Raw
# https://commons.apache.org/proper/commons-configuration/userguide/upgradeto2_0.html
%global base_name       configuration2
%global short_name      commons-%{base_name}
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=1363923
# Use springframework:4.2.5.RELEASE
%bcond_with spring

Name:          apache-commons-configuration2
Version:       2.1
Release:       6%{?dist}
Summary:       Java library providing a generic Configuration interface
License:       ASL 2.0
URL:           http://commons.apache.org/proper/commons-configuration/
Source0:       http://www.apache.org/dist/commons/configuration/source/%{short_name}-%{version}-src.tar.gz

BuildRequires: maven-local
BuildRequires: mvn(commons-beanutils:commons-beanutils)
BuildRequires: mvn(commons-codec:commons-codec)
BuildRequires: mvn(commons-jxpath:commons-jxpath)
BuildRequires: mvn(commons-logging:commons-logging)
BuildRequires: mvn(javax.servlet:javax.servlet-api)
BuildRequires: mvn(log4j:log4j:1.2.17)
BuildRequires: mvn(org.apache.commons:commons-jexl)
BuildRequires: mvn(org.apache.commons:commons-lang3)
BuildRequires: mvn(org.apache.commons:commons-parent:pom:)
BuildRequires: mvn(org.apache.commons:commons-vfs2)
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-checkstyle-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-enforcer-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-remote-resources-plugin)
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
BuildRequires: mvn(org.codehaus.mojo:buildnumber-maven-plugin)
BuildRequires: mvn(org.codehaus.mojo:javacc-maven-plugin)
%if %{with spring}
BuildRequires: mvn(org.springframework:spring-beans)
BuildRequires: mvn(org.springframework:spring-core)
# Test deps
BuildRequires: mvn(org.springframework:spring-context)
BuildRequires: mvn(org.springframework:spring-test)
%endif
BuildRequires: mvn(xml-apis:xml-apis)
BuildRequires: mvn(xml-resolver:xml-resolver)

# Other deps
BuildRequires: mvn(stax:stax-api)

# Other test deps
BuildRequires: mvn(com.sun.mail:javax.mail)
BuildRequires: mvn(commons-dbcp:commons-dbcp)
BuildRequires: mvn(commons-pool:commons-pool)
BuildRequires: mvn(hsqldb:hsqldb:1)
BuildRequires: mvn(junit:junit)
BuildRequires: mvn(junit-addons:junit-addons)
BuildRequires: mvn(org.dbunit:dbunit)
BuildRequires: mvn(org.easymock:easymock)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildRequires: mvn(org.slf4j:slf4j-ext)
BuildRequires: mvn(org.slf4j:slf4j-log4j12)
BuildRequires: mvn(xerces:xercesImpl)

BuildArch:     noarch

%description
The Commons Configuration library provides a generic Configuration
interface which enables a Java application to read configuration data
from a variety of sources.

Configuration parameters may be loaded from the following sources:

 * Properties files
 * XML documents
 * Windows INI files
 * Property list files (plist)
 * JNDI
 * JDBC Datasource
 * System properties
 * Applet parameters
 * Servlet parameters

Configuration objects are created using configuration builders. Different
configuration sources can be mixed using a CombinedConfigurationBuilder and
a CombinedConfiguration. Additional sources of configuration parameters
can be created by using custom configuration objects. This customization
can be achieved by extending AbstractConfiguration or
AbstractHierarchicalConfiguration.

%package javadoc
Summary:       Javadoc for %{name}

%description javadoc
This package contains javadoc for %{name}.

%prep
%setup -q -n %{short_name}-%{version}-src

# Convert from dos to unix line ending
for file in *.txt; do
 sed -i.orig 's|\r||g' $file
 touch -r $file.orig $file
 rm $file.orig
done
# Useless task
%pom_remove_plugin :maven-assembly-plugin

%if %{without spring}
%pom_remove_dep org.springframework:
rm -r src/main/java/org/apache/commons/configuration2/spring \
 src/test/java/org/apache/commons/configuration2/spring
%endif

# Move to never apis
%pom_change_dep javax.servlet:servlet-api javax.servlet:javax.servlet-api:3.1.0
%pom_change_dep javax.mail:mail com.sun.mail:javax.mail:1.5.2

%pom_change_dep hsqldb: ::1
%pom_change_dep dbunit: org.dbunit::2.5.1
sed -i.dbunit2.5 "s|org.dbunit.dataset.csv.handlers.NoHandler|org.dbunit.dataset.common.handlers.NoHandler|" \
 src/test/java/org/apache/commons/configuration2/tree/NodeStructureHelper.java
# mockobjects:mockobjects-core,:mockobjects-jdk1.4-j2ee1.3:0.09
%pom_remove_dep mockobjects:
rm src/test/java/org/apache/commons/configuration2/web/TestServletContextConfiguration.java \
 src/test/java/org/apache/commons/configuration2/web/TestServletRequestConfiguration.java \
 src/test/java/org/apache/commons/configuration2/web/TestServletConfiguration.java \
 src/test/java/org/apache/commons/configuration2/MockInitialContextFactory.java \
 src/test/java/org/apache/commons/configuration2/TestJNDIConfiguration.java \
 src/test/java/org/apache/commons/configuration2/TestNullJNDIEnvironmentValues.java \
 src/test/java/org/apache/commons/configuration2/TestJNDIEnvironmentValues.java \
 src/test/java/org/apache/commons/configuration2/builder/combined/TestCombinedConfigurationBuilderVFS.java \
 src/test/java/org/apache/commons/configuration2/builder/combined/TestCombinedConfigurationBuilder.java
# use servlet-api:2.4
rm src/test/java/org/apache/commons/configuration2/web/TestServletFilterConfiguration.java
# org.apache.commons.configuration2.ex.ConfigurationException: Could not locate: org.apache.commons.configuration2.io.FileLocator@1a88d87[fileName=target/test-classes/testMultiConfiguration_${sys:Id}.xml,basePath=<null>,sourceURL=,encoding=<null>,fileSystem=<null>,locationStrategy=<null>]
rm src/test/java/org/apache/commons/configuration2/builder/combined/TestReloadingMultiFileConfigurationBuilder.java \
 src/test/java/org/apache/commons/configuration2/builder/combined/TestMultiFileConfigurationBuilder.java \
 src/test/java/org/apache/commons/configuration2/TestDynamicCombinedConfiguration.java
# java.lang.StackOverflowError @ testMultiConfiguration 
rm src/test/java/org/apache/commons/configuration2/TestPatternSubtreeConfiguration.java
# Only on koji java.lang.AssertionError:
# Factory not set expected same:<EasyMock for interface org.apache.commons.configuration2.PropertiesConfiguration$IOFactory> was not:<null>
rm src/test/java/org/apache/commons/configuration2/builder/TestPropertiesBuilderParametersImpl.java

%mvn_file   : %{short_name} %{name}

%build

%mvn_build

%install
%mvn_install

%files -f .mfiles
%doc RELEASE-NOTES.txt
%license LICENSE.txt NOTICE.txt

%files javadoc -f .mfiles-javadoc
%license LICENSE.txt NOTICE.txt

%changelog
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Wed Nov 16 2016 gil cattaneo <puntogil@libero.it> 2.1-1
- initial rpm