Nicholas DiPiazza created TIKA-4595:
---------------------------------------

             Summary: Add dynamic fetcher management API to PipesClient
                 Key: TIKA-4595
                 URL: https://issues.apache.org/jira/browse/TIKA-4595
             Project: Tika
          Issue Type: New Feature
          Components: tika-pipes
            Reporter: Nicholas DiPiazza


h2. Overview

Add API to PipesClient for dynamically creating, updating, and deleting 
fetchers at runtime through PipesServer's ConfigStore.

h2. Current State

* PipesServer already has ConfigStore infrastructure
* FetcherManager and EmitterManager support runtime modifications
* But PipesClient has no API to expose these capabilities to users

h2. Desired Architecture

{noformat}
PipesClient API
    ↓
PipesServer (forked process)
    ↓
ConfigStore (memory, Ignite, etc.)
{noformat}

h2. Requirements

# PipesClient provides public API for fetcher CRUD operations
# All operations are sent to PipesServer via socket protocol  
# PipesServer handles requests and updates ConfigStore
# Static fetchers from tika-config.xml/json loaded at startup
# Dynamic fetchers managed through ConfigStore
# Both static and dynamic fetchers available for use

h2. Benefits

* Users can add/modify fetchers without restarting
* Supports multi-tenant scenarios with isolated fetcher configs
* Enables programmatic fetcher configuration
* Maintains backwards compatibility with static config

h2. Implementation Tasks

See linked sub-tasks for detailed implementation steps.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to