Files
spymemcached/spymemcached.spec

99 lines
3.4 KiB
RPMSpec
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#
# spec file for package spymemcached
#
# 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: spymemcached
Version: 2.12.3
Release: 0
Summary: A simple, asynchronous, single-threaded memcached client
License: Apache-2.0
Group: Development/Libraries/Java
URL: http://code.google.com/p/%{name}/
Source0: https://github.com/couchbase/%{name}/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
BuildRequires: fdupes
BuildRequires: maven-local
BuildRequires: mvn(com.codahale.metrics:metrics-core)
BuildRequires: mvn(log4j:log4j)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildArch: noarch
%description
A simple, asynchronous, single-threaded memcached client written in java.
Efficient storage of objects. General serializable objects are stored in
their serialized form and optionally compressed if they meet criteria. Certain
native objects are stored as tightly as possible (for example, a Date object
generally consumes six bytes, and a Long can be anywhere from zero to eight
bytes).
Resilient to server and network outages. In many cases, a client operation
can be replayed against a server if it goes away and comes back. In cases where
it cant, it will communicate that as well. An exponential backoff reconnect
algorithm is applied when a memcached becomes unavailable, but asynchronous
operations will queue up for the server to be applied when it comes back
online.
Operations are asynchronous. It is possible to issue a store and continue
processing without having to wait for that operation to finish. It is even
possible to issue a get, do some further processing, check the result of the
get and cancel it if it doesnt return fast enough.
There is only one thread for all processing. Regardless of the number of
requests, threads using the client, or servers to which the client is
connected, only one thread will ever be allocated to a given MemcachedClient.
Aggressively optimized. There are many optimizations that combine to provide
high throughput.
%package javadoc
Summary: API documentation for %{name}
Group: Documentation/HTML
%description javadoc
API documentation for %{name}.
%prep
%setup -q
rm lib/*.jar
%pom_remove_dep org.springframework:spring-beans
%pom_remove_dep com.google.code.findbugs:findbugs ivy.xml
%pom_remove_dep org.springframework:spring-beans ivy.xml
%pom_remove_dep checkstyle:checkstyle ivy.xml
%pom_remove_dep jmock:jmock ivy.xml
%pom_remove_dep junit:junit ivy.xml
rm src/main/java/net/spy/memcached/spring/MemcachedClientFactoryBean.java
%{mvn_file} : %{name}
%build
%{mvn_build} -f
%install
%mvn_install
%fdupes %{buildroot}%{_javadocdir}/%{name}
%files -f .mfiles
%license LICENSE.txt
%doc README.markdown
%files javadoc -f .mfiles-javadoc
%license LICENSE.txt
%changelog