[ https://issues.apache.org/jira/browse/TIKA-4181?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nicholas DiPiazza updated TIKA-4181: ------------------------------------ Description: Create a Tika Grpc server. You should be able to create Tike Pipes fetchers, then use those fetchers. You can then use those fetchers to FetchAndParse in 3 ways: * synchronous fashion - you send a single request to fetch a file, and get a single FetchAndParse response tuple. * streaming output - you send a single request and stream back the FetchAndParse response tuple. * bi-directional streaming - You stream in 1 or more Fetch requests and stream back FetchAndParse response tuples. Requires we create a service contract that specifies the inputs we require from each method. Then we will need to implement the different components with a grpc client generated using the contract. This would enable developers to run tika-pipes as a persistently running daemon instead of just a single batch app, because it can continue to stream out more inputs. !image-2024-02-06-07-54-50-116.png! was: Add full tika-pipes support of grpc * pipe iterator * fetcher * emitter Requires we create a service contract that specifies the inputs we require from each method. Then we will need to implement the different components with a grpc client generated using the contract. This would enable developers to run tika-pipes as a persistently running daemon instead of just a single batch app, because it can continue to stream out more inputs. !image-2024-02-06-07-54-50-116.png! > Grpc + Tika Pipes > ----------------- > > Key: TIKA-4181 > URL: https://issues.apache.org/jira/browse/TIKA-4181 > Project: Tika > Issue Type: New Feature > Components: tika-pipes > Reporter: Nicholas DiPiazza > Priority: Major > Attachments: image-2024-02-06-07-54-50-116.png > > > Create a Tika Grpc server. > You should be able to create Tike Pipes fetchers, then use those fetchers. > You can then use those fetchers to FetchAndParse in 3 ways: > * synchronous fashion - you send a single request to fetch a file, and get a > single FetchAndParse response tuple. > * streaming output - you send a single request and stream back the > FetchAndParse response tuple. > * bi-directional streaming - You stream in 1 or more Fetch requests and > stream back FetchAndParse response tuples. > Requires we create a service contract that specifies the inputs we require > from each method. > Then we will need to implement the different components with a grpc client > generated using the contract. > This would enable developers to run tika-pipes as a persistently running > daemon instead of just a single batch app, because it can continue to stream > out more inputs. > !image-2024-02-06-07-54-50-116.png! -- This message was sent by Atlassian Jira (v8.20.10#820010)