Subject: [PATCH 10/14] gnu: Add java-axiom-api.

From: Hartmut Goebel <[email-masked]>
Date: Sun, 22 Dec 2024 23:51:42 +0100

* gnu/packages/java-xml.scm (java-axiom-api): New variable.
---
 gnu/packages/java-xml.scm | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/java-xml.scm b/gnu/packages/java-xml.scm
index 9a1c56d3cd..ecff0d1521 100644
--- a/gnu/packages/java-xml.scm
+++ b/gnu/packages/java-xml.scm
@@ -736,6 +736,45 @@ (define-public java-mxparser
 
 ;;; ----- Apache Axiom ------
 
+(define-public java-axiom-api
+  (package
+    (name "java-axiom-api")
+    (version "1.4.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://repo1.maven.org/maven2/"
+                    "org/apache/ws/commons/axiom/axiom-api/" version
+                    "/axiom-api-" version "-sources.jar"))
+              (sha256
+               (base32
+                "0xp2skssl8qa82437wqwbkcczhvgg3pkvr16b2j1yaqspcwsj55h"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:tests? #f  ;; tests requre too many yet unpackaged packages
+       #:jar-name "axiom-api.jar"))
+    (native-inputs
+     (list java-commons-logging-minimal
+           java-jakarta-activation-api
+           java-jaxen
+           java-mime4j-core
+           java-osgi-framework
+           java-osgi-util-tracker
+           java-stax2-api))
+    (home-page "https://ws.apache.org/axiom/")
+    (synopsis "API for Apache Axiom – StAX-based XML Infoset compliant object model")
+    (description "Apache Axiom provides an XML Infoset compliant object model
+implementation which supports on-demand building of the object tree.  It
+supports a novel \"pull-through\" model which allows one to turn off the tree
+building and directly access the underlying pull event stream using the StAX
+API.  It also has built in support for XML Optimized Packaging (XOP) and MTOM,
+the combination of which allows XML to carry binary data efficiently and in a
+transparent manner.  The combination of these is an easy to use API with a very
+high performant architecture.
+
+This package provides the API for Apache Axiom.")
+    (license license:asl2.0)))
+
 (define-public java-axiom-base64-utils
   (package
     (name "java-axiom-base64-utils")
-- 
2.41.1