# # spec file for package httpcomponents-asyncclient # # Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # Name: httpcomponents-asyncclient Version: 4.1.4 Release: 15.7 Summary: Apache components to build asynchronous client side HTTP services License: Apache-2.0 Group: Development/Libraries/Java URL: https://hc.apache.org/ Source0: https://archive.apache.org/dist/httpcomponents/httpasyncclient/source/%{name}-%{version}-src.tar.gz BuildRequires: fdupes BuildRequires: java-devel >= 1.8 BuildRequires: maven-local %if 0%{?rhel} >= 9 BuildRequires: xmvn-minimal BuildRequires: xmvn-tools %endif BuildRequires: mvn(commons-logging:commons-logging) BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) BuildRequires: mvn(org.apache.httpcomponents:httpclient) BuildRequires: mvn(org.apache.httpcomponents:httpclient-cache) BuildRequires: mvn(org.apache.httpcomponents:httpcore) BuildRequires: mvn(org.apache.httpcomponents:httpcore-nio) BuildRequires: mvn(org.apache.httpcomponents:project:pom:) BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) BuildArch: noarch %description Asynch HttpClient is a HTTP/1.1 compliant HTTP agent implementation based on HttpCore NIO and HttpClient components. It is a complementary module to Apache HttpClient intended for special cases where ability to handle a great number of concurrent connections is more important than performance in terms of a raw data throughput. %package cache Summary: Apache HttpAsyncClient Cache Group: Development/Libraries/Java %description cache This package provides client side caching for %{name}. %package parent Summary: Apache HttpAsyncClient Parent POM Group: Development/Libraries/Java %description parent Apache HttpAsyncClient Parent POM. %package javadoc Summary: Javadoc for %{name} Group: Documentation/HTML %description javadoc This package contains javadoc for %{name}. %prep %setup -q # Cleanup find . -name "*.class" -delete find . -name "*.jar" -type f -delete # Use unavalable org.apache.httpcomponents:hc-stylecheck:jar:1 %pom_remove_plugin :maven-checkstyle-plugin # Unwanted %pom_remove_plugin :maven-site-plugin %pom_remove_plugin :maven-source-plugin %pom_remove_plugin -r :maven-javadoc-plugin # Unavailable %pom_remove_plugin :clirr-maven-plugin %pom_disable_module httpasyncclient-osgi # Prevent build failure %pom_remove_plugin -r :apache-rat-plugin # Unavalable test deps: org.easymock:easymockclassextension org.apache.httpcomponents:httpclient-cache:test-jar %pom_xpath_remove "pom:dependency[pom:type = 'test-jar']" httpasyncclient-cache %pom_xpath_remove "pom:dependency[pom:scope = 'test']" httpasyncclient-cache rm -r httpasyncclient-cache/src/test/java # Add OSGi support for p in httpasyncclient httpasyncclient-cache; do %pom_remove_plugin :maven-jar-plugin ${p} %pom_xpath_set "pom:project/pom:packaging" bundle ${p} %pom_add_plugin org.apache.felix:maven-bundle-plugin:2.3.7 ${p} " true * true " done %{mvn_file} org.apache.httpcomponents:httpasyncclient httpasyncclient %{mvn_file} org.apache.httpcomponents:httpasyncclient-cache httpasyncclient-cache %build %{mvn_build} -f -s -- \ -Dmaven.compiler.release=8 \ -Dproject.build.outputTimestamp=$(date -u -d @${SOURCE_DATE_EPOCH:-$(date +%%s)} +%%Y-%%m-%%dT%%H:%%M:%%SZ) \ -Dsource=8 -Dproject.build.sourceEncoding=UTF-8 %install %mvn_install %fdupes -s %{buildroot}%{_javadocdir} %files -f .mfiles-httpasyncclient %doc README.txt RELEASE_NOTES.txt %license LICENSE.txt NOTICE.txt %files cache -f .mfiles-httpasyncclient-cache %license LICENSE.txt NOTICE.txt %files parent -f .mfiles-%{name} %license LICENSE.txt NOTICE.txt %files javadoc -f .mfiles-javadoc %license LICENSE.txt NOTICE.txt %changelog * Mon Sep 11 2023 Fridrich Strba - Reproducible builds: use SOURCE_DATE_EPOCH for timestamp * Sat Apr 30 2022 Stefan Bluhm - Adapted for Enterprise Linux 9 * Tue Mar 22 2022 Fridrich Strba - Build with java source and target levels 8 * Wed Jul 22 2020 Fridrich Strba - Initial packaging of httpcomponents-asyncclient 4.1.4