[
https://issues.apache.org/jira/browse/TIKA-4596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nicholas DiPiazza closed TIKA-4596.
-----------------------------------
Resolution: Duplicate
> Extend PipesClient/PipesServer socket protocol for fetcher management
> ---------------------------------------------------------------------
>
> Key: TIKA-4596
> URL: https://issues.apache.org/jira/browse/TIKA-4596
> Project: Tika
> Issue Type: Task
> Components: tika-pipes
> Reporter: Nicholas DiPiazza
> Priority: Major
>
> h2. Goal
> Extend the socket communication protocol between PipesClient and PipesServer
> to support fetcher management commands.
> h2. New Commands Needed
> Add to PipesClient.COMMANDS enum:
> * SAVE_FETCHER - Create or update a fetcher
> * DELETE_FETCHER - Remove a fetcher
> * LIST_FETCHERS - Get available fetcher IDs
> * GET_FETCHER - Get specific fetcher configuration
> h2. Protocol Design
> h3. SAVE_FETCHER
> # Client sends: SAVE_FETCHER command byte
> # Client sends: ExtensionConfig serialized object
> # Server processes: Calls fetcherManager.saveFetcher(config)
> # Server responds: Success/failure status + any error message
> # Client receives: ACK
> h3. DELETE_FETCHER
> # Client sends: DELETE_FETCHER command byte
> # Client sends: Fetcher ID string
> # Server processes: Calls fetcherManager.deleteFetcher(id)
> # Server responds: Success/failure status
> # Client receives: ACK
> h3. LIST_FETCHERS
> # Client sends: LIST_FETCHERS command byte
> # Server processes: Calls fetcherManager.getSupported()
> # Server responds: List of fetcher IDs
> # Client receives: ACK
> h3. GET_FETCHER
> # Client sends: GET_FETCHER command byte
> # Client sends: Fetcher ID string
> # Server processes: Calls fetcherManager.getConfig(id)
> # Server responds: ExtensionConfig or null
> # Client receives: ACK
> h2. Implementation Notes
> * Reuse existing socket communication patterns
> * Follow error handling conventions from existing commands
> * Ensure thread safety
> * Add appropriate logging
> h2. Testing
> * Unit tests for each command
> * Integration tests for client-server communication
> * Error handling tests
--
This message was sent by Atlassian Jira
(v8.20.10#820010)