public class GrpcDataService extends org.apache.beam.model.fnexecution.v1.BeamFnDataGrpc.BeamFnDataImplBase implements FnService, FnDataService
FnDataService implemented via gRPC.
This service allows for multiple clients to transmit BeamFnApi.Elements messages.
This service transmits all outgoing BeamFnApi.Elements messages to the first client
that connects.
| Modifier and Type | Method and Description |
|---|---|
void |
close()
.
|
static GrpcDataService |
create(java.util.concurrent.ExecutorService executor) |
io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.Elements> |
data(io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.Elements> outboundElementObserver) |
<T> InboundDataClient |
receive(LogicalEndpoint inputLocation,
Coder<org.apache.beam.sdk.util.WindowedValue<T>> coder,
FnDataReceiver<org.apache.beam.sdk.util.WindowedValue<T>> listener)
Registers a receiver to be notified upon any incoming elements.
|
<T> CloseableFnDataReceiver<org.apache.beam.sdk.util.WindowedValue<T>> |
send(LogicalEndpoint outputLocation,
Coder<org.apache.beam.sdk.util.WindowedValue<T>> coder)
Creates a receiver to which you can write data values and have them sent over this data plane
service.
|
bindServicepublic static GrpcDataService create(java.util.concurrent.ExecutorService executor)
public io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.Elements> data(io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.Elements> outboundElementObserver)
data in class org.apache.beam.model.fnexecution.v1.BeamFnDataGrpc.BeamFnDataImplBasepublic void close()
throws java.lang.Exception
FnServiceThere should be no more calls to any service method by the time a call to FnService.close()
begins. Specifically, this means that a Server that this service is bound to
should have completed a call to the Server.shutdown() method, and all future
incoming calls will be rejected.
public <T> InboundDataClient receive(LogicalEndpoint inputLocation, Coder<org.apache.beam.sdk.util.WindowedValue<T>> coder, FnDataReceiver<org.apache.beam.sdk.util.WindowedValue<T>> listener)
FnDataServiceThe provided coder is used to decode inbound elements. The decoded elements are passed to the provided receiver.
Any failure during decoding or processing of the element will complete the returned future exceptionally. On successful termination of the stream, the returned future is completed successfully.
The provided receiver is not required to be thread safe.
receive in interface FnDataServicepublic <T> CloseableFnDataReceiver<org.apache.beam.sdk.util.WindowedValue<T>> send(LogicalEndpoint outputLocation, Coder<org.apache.beam.sdk.util.WindowedValue<T>> coder)
FnDataServiceThe provided coder is used to encode elements on the outbound stream.
Closing the returned receiver signals the end of the stream.
The returned receiver is not thread safe.
send in interface FnDataService