You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2023/04/05 06:35:00 UTC

[camel-quarkus] 02/02: Fix #4470 to add back camel-quarkus-tika

This is an automated email from the ASF dual-hosted git repository.

jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit f1fce0adaabba695b04f96a7f22bb737c20dcf38
Author: Zheng Feng <zh...@gmail.com>
AuthorDate: Tue Apr 4 13:26:57 2023 +0800

    Fix #4470 to add back camel-quarkus-tika
---
 docs/modules/ROOT/examples/components/tika.yml     | 13 ++++
 docs/modules/ROOT/nav.adoc                         |  1 +
 .../ROOT/pages/reference/extensions/tika.adoc      | 78 ++++++++++++++++++++++
 extensions/pom.xml                                 |  2 +-
 integration-tests/pom.xml                          |  2 +-
 .../quarkus/component/tika/it/TikaResource.java    |  1 -
 pom.xml                                            |  2 +-
 poms/bom/pom.xml                                   | 14 ++--
 poms/bom/src/main/generated/flattened-full-pom.xml | 25 ++++++-
 .../src/main/generated/flattened-reduced-pom.xml   | 31 +++++++++
 .../generated/flattened-reduced-verbose-pom.xml    | 31 +++++++++
 tooling/scripts/test-categories.yaml               |  1 +
 12 files changed, 191 insertions(+), 10 deletions(-)

diff --git a/docs/modules/ROOT/examples/components/tika.yml b/docs/modules/ROOT/examples/components/tika.yml
new file mode 100644
index 0000000000..86cb3c8660
--- /dev/null
+++ b/docs/modules/ROOT/examples/components/tika.yml
@@ -0,0 +1,13 @@
+# Do not edit directly!
+# This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page
+cqArtifactId: camel-quarkus-tika
+cqArtifactIdBase: tika
+cqNativeSupported: true
+cqStatus: Stable
+cqDeprecated: false
+cqJvmSince: 1.0.0
+cqNativeSince: 1.0.0
+cqCamelPartName: tika
+cqCamelPartTitle: Tika
+cqCamelPartDescription: Parse documents and extract metadata and text using Apache Tika.
+cqExtensionPageTitle: Tika
diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc
index e651f97551..480beb1590 100644
--- a/docs/modules/ROOT/nav.adoc
+++ b/docs/modules/ROOT/nav.adoc
@@ -282,6 +282,7 @@
 *** xref:reference/extensions/telegram.adoc[Telegram]
 *** xref:reference/extensions/threadpoolfactory-vertx.adoc[ThreadPoolFactory Vert.x]
 *** xref:reference/extensions/thrift.adoc[Thrift]
+*** xref:reference/extensions/tika.adoc[Tika]
 *** xref:reference/extensions/timer.adoc[Timer]
 *** xref:reference/extensions/twilio.adoc[Twilio]
 *** xref:reference/extensions/twitter.adoc[Twitter]
diff --git a/docs/modules/ROOT/pages/reference/extensions/tika.adoc b/docs/modules/ROOT/pages/reference/extensions/tika.adoc
new file mode 100644
index 0000000000..bf5efdddc7
--- /dev/null
+++ b/docs/modules/ROOT/pages/reference/extensions/tika.adoc
@@ -0,0 +1,78 @@
+// Do not edit directly!
+// This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page
+[id="extensions-tika"]
+= Tika
+:page-aliases: extensions/tika.adoc
+:linkattrs:
+:cq-artifact-id: camel-quarkus-tika
+:cq-native-supported: true
+:cq-status: Stable
+:cq-status-deprecation: Stable
+:cq-description: Parse documents and extract metadata and text using Apache Tika.
+:cq-deprecated: false
+:cq-jvm-since: 1.0.0
+:cq-native-since: 1.0.0
+
+ifeval::[{doc-show-badges} == true]
+[.badges]
+[.badge-key]##JVM since##[.badge-supported]##1.0.0## [.badge-key]##Native since##[.badge-supported]##1.0.0##
+endif::[]
+
+Parse documents and extract metadata and text using Apache Tika.
+
+[id="extensions-tika-whats-inside"]
+== What's inside
+
+* xref:{cq-camel-components}::tika-component.adoc[Tika component], URI syntax: `tika:operation`
+
+Please refer to the above link for usage and configuration details.
+
+[id="extensions-tika-maven-coordinates"]
+== Maven coordinates
+
+https://{link-quarkus-code-generator}/?extension-search=camel-quarkus-tika[Create a new project with this extension on {link-quarkus-code-generator}, window="_blank"]
+
+Or add the coordinates to your existing project:
+
+[source,xml]
+----
+<dependency>
+    <groupId>org.apache.camel.quarkus</groupId>
+    <artifactId>camel-quarkus-tika</artifactId>
+</dependency>
+----
+ifeval::[{doc-show-user-guide-link} == true]
+Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications.
+endif::[]
+
+[id="extensions-tika-camel-quarkus-limitations"]
+== Camel Quarkus limitations
+
+Parameters `tikaConfig` and `tikaConfigUri` are not available in quarkus camel tika extension. Configuration
+can be changed only via `application.properties`.
+
+While you can use any of the available https://tika.apache.org/1.24.1/formats.html[Tika parsers] in JVM mode,
+only some of those are supported in native mode - see the https://quarkiverse.github.io/quarkiverse-docs/quarkus-tika/dev/index.html[Quarkus Tika guide].
+
+Use of the Tika parser without any configuration will initialize all available parsers. Unfortunately as some of them
+don't work in the native mode, the whole execution will fail.
+
+In order to make the Tika parser work in the native mode, selection of parsers for initialization should be used.
+
+* `quarkus.tika.parsers` Comma separated list of parsers (abbreviations). There are two predefined parsers:
+`pdf` and `odf`.
+* `quarkus.tika.parser.*` Adds new parser abbreviation to be used with previous property. Value is the full class of
+the parser.
+
+Example of `application.properties`:
+[source,properties]
+----
+quarkus.tika.parsers = pdf,odf,office
+quarkus.tika.parser.office = org.apache.tika.parser.microsoft.OfficeParser
+----
+
+For more information about selecting parsers see the https://quarkiverse.github.io/quarkiverse-docs/quarkus-tika/dev/index.html[Quarkus Tika guide].
+
+You may need to add the `quarkus-awt` extension to build the native image. For more information, see https://quarkiverse.github.io/quarkiverse-docs/quarkus-tika/dev/index.html[Quarkus Tika guide].
+
+
diff --git a/extensions/pom.xml b/extensions/pom.xml
index e0719852c8..39359ba779 100644
--- a/extensions/pom.xml
+++ b/extensions/pom.xml
@@ -232,7 +232,7 @@
         <module>syslog</module>
         <module>tarfile</module>
         <module>telegram</module>
-        <!--<module>tika</module> https://github.com/apache/camel-quarkus/issues/4470 -->
+        <module>tika</module>
         <module>timer</module>
         <module>twilio</module>
         <module>twitter</module>
diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml
index d65de2547b..c64e002d49 100644
--- a/integration-tests/pom.xml
+++ b/integration-tests/pom.xml
@@ -218,7 +218,7 @@
         <module>syslog</module>
         <module>tarfile</module>
         <module>telegram</module>
-        <!--<module>tika</module>-->
+        <module>tika</module>
         <!--<module>twilio</module> https://github.com/apache/camel-quarkus/issues/4527 -->
         <module>twitter</module>
         <module>univocity-parsers</module>
diff --git a/integration-tests/tika/src/main/java/org/apache/camel/quarkus/component/tika/it/TikaResource.java b/integration-tests/tika/src/main/java/org/apache/camel/quarkus/component/tika/it/TikaResource.java
index 55c66cc3b2..e751d48cc9 100644
--- a/integration-tests/tika/src/main/java/org/apache/camel/quarkus/component/tika/it/TikaResource.java
+++ b/integration-tests/tika/src/main/java/org/apache/camel/quarkus/component/tika/it/TikaResource.java
@@ -26,7 +26,6 @@ import jakarta.ws.rs.Path;
 import jakarta.ws.rs.Produces;
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.Response;
-
 import org.apache.camel.ProducerTemplate;
 import org.jboss.logging.Logger;
 
diff --git a/pom.xml b/pom.xml
index 2fd657e1de..a7a12f456b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -58,7 +58,7 @@
         <quarkiverse-minio.version>3.0.0.Alpha3</quarkiverse-minio.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/minio/quarkus-minio-parent/ -->
         <quarkiverse-mybatis.version>2.0.0.CR2</quarkiverse-mybatis.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/mybatis/quarkus-mybatis-parent/ -->
         <quarkiverse-pooled-jms.version>2.0.0.CR2</quarkiverse-pooled-jms.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/messaginghub/quarkus-pooled-jms-parent/ -->
-        <quarkiverse-tika.version>1.0.3</quarkiverse-tika.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/tika/quarkus-tika-parent/ -->
+        <quarkiverse-tika.version>2.0.0.CR2</quarkiverse-tika.version><!-- https://repo1.maven.org/maven2/io/quarkiverse/tika/quarkus-tika-parent/ -->
         <quarkus.version>3.0.0.CR1</quarkus.version><!-- https://repo1.maven.org/maven2/io/quarkus/quarkus-bom/ -->
         <quarkus-hazelcast-client.version>3.0.0</quarkus-hazelcast-client.version><!-- https://repo1.maven.org/maven2/com/hazelcast/quarkus-hazelcast-client-bom/ -->
         <quarkus-qpid-jms.version>2.0.0.Alpha3</quarkus-qpid-jms.version><!-- https://repo1.maven.org/maven2/org/amqphub/quarkus/quarkus-qpid-jms-bom/ -->
diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml
index 9628c184b8..bfc9477d23 100644
--- a/poms/bom/pom.xml
+++ b/poms/bom/pom.xml
@@ -2335,11 +2335,11 @@
                 <artifactId>camel-thrift</artifactId>
                 <version>${camel.version}</version>
             </dependency>
-            <!--<dependency>
+            <dependency>
                 <groupId>org.apache.camel</groupId>
                 <artifactId>camel-tika</artifactId>
                 <version>${camel.version}</version>
-            </dependency>-->
+            </dependency>
             <dependency>
                 <groupId>org.apache.camel</groupId>
                 <artifactId>camel-timer</artifactId>
@@ -5523,7 +5523,7 @@
                 <artifactId>camel-quarkus-thrift-deployment</artifactId>
                 <version>${camel-quarkus.version}</version>
             </dependency>
-            <!--<dependency>
+            <dependency>
                 <groupId>org.apache.camel.quarkus</groupId>
                 <artifactId>camel-quarkus-tika</artifactId>
                 <version>${camel-quarkus.version}</version>
@@ -5532,7 +5532,7 @@
                 <groupId>org.apache.camel.quarkus</groupId>
                 <artifactId>camel-quarkus-tika-deployment</artifactId>
                 <version>${camel-quarkus.version}</version>
-            </dependency>-->
+            </dependency>
             <dependency>
                 <groupId>org.apache.camel.quarkus</groupId>
                 <artifactId>camel-quarkus-timer</artifactId>
@@ -6266,6 +6266,12 @@
                 <groupId>io.quarkiverse.tika</groupId>
                 <artifactId>quarkus-tika</artifactId>
                 <version>${quarkiverse-tika.version}</version>
+                <exclusions>
+                    <exclusion>
+                        <groupId>commons-logging</groupId>
+                        <artifactId>commons-logging</artifactId>
+                    </exclusion>
+                </exclusions>
             </dependency>
             <dependency>
                 <groupId>io.quarkiverse.tika</groupId>
diff --git a/poms/bom/src/main/generated/flattened-full-pom.xml b/poms/bom/src/main/generated/flattened-full-pom.xml
index 4a7476948c..9b10fb4929 100644
--- a/poms/bom/src/main/generated/flattened-full-pom.xml
+++ b/poms/bom/src/main/generated/flattened-full-pom.xml
@@ -2268,6 +2268,11 @@
         <artifactId>camel-thrift</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>4.0.0-M2</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-tika</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>4.0.0-M2</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>org.apache.camel</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-timer</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -5419,6 +5424,16 @@
         <artifactId>camel-quarkus-thrift-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>3.0.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-tika</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.0.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-tika-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.0.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-timer</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -6148,12 +6163,18 @@
       <dependency>
         <groupId>io.quarkiverse.tika</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>quarkus-tika</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>1.0.3</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>2.0.0.CR2</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <exclusions>
+          <exclusion>
+            <groupId>commons-logging</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+            <artifactId>commons-logging</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+          </exclusion>
+        </exclusions>
       </dependency>
       <dependency>
         <groupId>io.quarkiverse.tika</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>quarkus-tika-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>1.0.3</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>2.0.0.CR2</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
       <dependency>
         <groupId>jakarta.jms</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
diff --git a/poms/bom/src/main/generated/flattened-reduced-pom.xml b/poms/bom/src/main/generated/flattened-reduced-pom.xml
index d28e17838b..10649dbfc1 100644
--- a/poms/bom/src/main/generated/flattened-reduced-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-pom.xml
@@ -2268,6 +2268,11 @@
         <artifactId>camel-thrift</artifactId>
         <version>4.0.0-M2</version>
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel</groupId>
+        <artifactId>camel-tika</artifactId>
+        <version>4.0.0-M2</version>
+      </dependency>
       <dependency>
         <groupId>org.apache.camel</groupId>
         <artifactId>camel-timer</artifactId>
@@ -5419,6 +5424,16 @@
         <artifactId>camel-quarkus-thrift-deployment</artifactId>
         <version>3.0.0-SNAPSHOT</version>
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-tika</artifactId>
+        <version>3.0.0-SNAPSHOT</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-tika-deployment</artifactId>
+        <version>3.0.0-SNAPSHOT</version>
+      </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId>
         <artifactId>camel-quarkus-timer</artifactId>
@@ -6145,6 +6160,22 @@
         <artifactId>quarkus-mybatis-deployment</artifactId>
         <version>2.0.0.CR2</version>
       </dependency>
+      <dependency>
+        <groupId>io.quarkiverse.tika</groupId>
+        <artifactId>quarkus-tika</artifactId>
+        <version>2.0.0.CR2</version>
+        <exclusions>
+          <exclusion>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging</artifactId>
+          </exclusion>
+        </exclusions>
+      </dependency>
+      <dependency>
+        <groupId>io.quarkiverse.tika</groupId>
+        <artifactId>quarkus-tika-deployment</artifactId>
+        <version>2.0.0.CR2</version>
+      </dependency>
       <dependency>
         <groupId>jakarta.jms</groupId>
         <artifactId>jakarta.jms-api</artifactId>
diff --git a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
index 462a3b4d3c..3f9d5ef687 100644
--- a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
@@ -2268,6 +2268,11 @@
         <artifactId>camel-thrift</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>4.0.0-M2</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-tika</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>4.0.0-M2</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>org.apache.camel</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-timer</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -5419,6 +5424,16 @@
         <artifactId>camel-quarkus-thrift-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>3.0.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-tika</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.0.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-tika-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.0.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-timer</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -6145,6 +6160,22 @@
         <artifactId>quarkus-mybatis-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>2.0.0.CR2</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
+      <dependency>
+        <groupId>io.quarkiverse.tika</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>quarkus-tika</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>2.0.0.CR2</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <exclusions>
+          <exclusion>
+            <groupId>commons-logging</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+            <artifactId>commons-logging</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+          </exclusion>
+        </exclusions>
+      </dependency>
+      <dependency>
+        <groupId>io.quarkiverse.tika</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>quarkus-tika-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>2.0.0.CR2</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>jakarta.jms</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>jakarta.jms-api</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
diff --git a/tooling/scripts/test-categories.yaml b/tooling/scripts/test-categories.yaml
index 7ce793083c..317734095e 100644
--- a/tooling/scripts/test-categories.yaml
+++ b/tooling/scripts/test-categories.yaml
@@ -124,6 +124,7 @@ group-08:
   - pdf
   - saxon
   - telegram
+  - tika
   - twitter
   - vertx
 group-09: