nddipiazza opened a new pull request, #2502: URL: https://github.com/apache/tika/pull/2502
## JIRA Ticket https://issues.apache.org/jira/browse/TIKA-4604 ## Summary Adds a new Atlassian JWT fetcher plugin for Apache Tika pipes that enables fetching content from Atlassian products (Confluence, Jira) using JWT authentication. ## Changes - **Created plugin module**: `tika-pipes-atlassian-jwt` under `tika-pipes/tika-pipes-plugins/` - **Implemented classes**: - `AtlassianJwtFetcher` - Main fetcher with JWT authentication - `AtlassianJwtFetcherFactory` - Factory for creating fetcher instances - `AtlassianJwtFetcherConfig` - Configuration class with JSON support - `AtlassianJwtGenerator` - JWT token generation utility - `AtlassianJwtPipesPlugin` - PF4J plugin wrapper - **Configuration files**: - `pom.xml` with dependencies (nimbus-jose-jwt, guava, jackson) - `plugin.properties` for PF4J - `assembly.xml` for ZIP packaging - **Updated parent `pom.xml`** to include new module ## Architecture The implementation follows Apache Tika's plugin pattern: - Extends `AbstractTikaExtension` - Uses `ExtensionConfig` for JSON configuration - Implements `Fetcher` interface with `Metadata` parameters - Static `build()` method for instantiation - Proper initialization pattern ## Configuration Example ```json { "fetchers": { "atlassian-jwt-fetcher": { "my-confluence": { "sharedSecret": "your-shared-secret", "issuer": "your-app-key", "subject": "[email protected]", "jwtExpiresInSeconds": 3600, "connectTimeout": 30000, "socketTimeout": 120000 } } } } ``` ## Testing ✅ Code compiles successfully: ```bash mvn clean compile -DskipTests -pl tika-pipes/tika-pipes-plugins/tika-pipes-atlassian-jwt -am ``` ✅ Code formatted with spotless ## Source Ported from: https://github.com/nddipiazza/tika-pipes/tree/main/tika-pipes-fetchers/tika-fetcher-atlassian-jwt -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
