[ https://issues.apache.org/jira/browse/TIKA-4181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17832568#comment-17832568 ]
ASF GitHub Bot commented on TIKA-4181: -------------------------------------- bartek commented on code in PR #1702: URL: https://github.com/apache/tika/pull/1702#discussion_r1545596130 ########## tika-pipes/tika-grpc/src/main/proto/tika.proto: ########## @@ -0,0 +1,90 @@ +// Copyright 2015 The gRPC Authors +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +syntax = "proto3"; + +option java_multiple_files = true; +option java_package = "org.apache.tika"; +option java_outer_classname = "TikaProto"; +option objc_class_prefix = "HLW"; + +package tika; + +service Tika { + rpc CreateFetcher(CreateFetcherRequest) returns (CreateFetcherReply) {} + rpc UpdateFetcher(UpdateFetcherRequest) returns (UpdateFetcherReply) {} + rpc GetFetcher(GetFetcherRequest) returns (GetFetcherReply) {} + rpc ListFetchers(ListFetchersRequest) returns (ListFetchersReply) {} + rpc DeleteFetcher(DeleteFetcherRequest) returns (DeleteFetcherReply) {} + rpc FetchAndParse(FetchAndParseRequest) returns (FetchAndParseReply) {} + rpc FetchAndParseServerSideStreaming(FetchAndParseRequest) returns (stream FetchAndParseReply) {} + rpc FetchAndParseBiDirectionalStreaming(stream FetchAndParseRequest) returns (stream FetchAndParseReply) {} +} + +message CreateFetcherRequest { + string name = 1; Review Comment: Must `name` be unique across all initialized fetchers? `name` to me implies it's a descriptive label, is this more of an ID? Use case I am thinking of if I create multiple fetchers with the same class. Right now I would create a unique name for each one. Is that the correct expectation? > Grpc + Tika Pipes - pipe iterator and emitter > --------------------------------------------- > > 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 > > > 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! -- This message was sent by Atlassian Jira (v8.20.10#820010)