Files
java-dataloader/java-dataloader.spec

77 lines
2.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 java-dataloader
#
# Copyright (c) 2022 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: java-dataloader
Version: 3.2.0
Release: 0
Summary: A Java 8 port of Facebook DataLoader
License: Apache-2.0
Group: Development/Libraries/Java
URL: https://github.com/graphql-java/%{name}
Source0: %{url}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: https://repo1.maven.org/maven2/com/graphql-java/%{name}/%{version}/%{name}-%{version}.pom
BuildRequires: fdupes
BuildRequires: maven-local
BuildArch: noarch
%description
This small and simple utility library is a pure Java 8 port of Facebook
DataLoader.
It can serve as integral part of your application's data layer to provide a
consistent API over various back-ends and reduce message communication overhead
through batching and caching.
An important use case for java-dataloader is improving the efficiency of
GraphQL query execution. Graphql fields are resolved independently and, with a
true graph of objects, you may be fetching the same object many times.
A naive implementation of graphql data fetchers can easily lead to the dreaded
“n+1” fetch problem.
Most of the code is ported directly from Facebooks reference implementation,
with one IMPORTANT adaptation to make it work for Java 8.
%package javadoc
Summary: API documentation for %{name}
Group: Documentation/HTML
%description javadoc
API documentation for %{name}.
%prep
%setup -q
cp %{SOURCE1} pom.xml
%{mvn_file} : %{name}
%build
%{mvn_build} -f -- -Dmaven.compiler.{source,target}=8
%install
%mvn_install
%fdupes %{buildroot}%{_javadocdir}/%{name}
%files -f .mfiles
%license LICENSE
%doc README.md
%files javadoc -f .mfiles-javadoc
%license LICENSE
%changelog