public class FnApiControlClientPoolService extends org.apache.beam.model.fnexecution.v1.BeamFnControlGrpc.BeamFnControlImplBase implements FnService
Modifier and Type | Method and Description |
---|---|
void |
close()
.
|
io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.InstructionResponse> |
control(io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.InstructionRequest> requestObserver)
Called by gRPC for each incoming connection from an SDK harness, and enqueue an available SDK
harness client.
|
static FnApiControlClientPoolService |
offeringClientsToPool(java.util.concurrent.BlockingQueue<FnApiControlClient> clientPool)
Creates a new
FnApiControlClientPoolService which will enqueue and vend new SDK harness
connections. |
bindService
public static FnApiControlClientPoolService offeringClientsToPool(java.util.concurrent.BlockingQueue<FnApiControlClient> clientPool)
FnApiControlClientPoolService
which will enqueue and vend new SDK harness
connections.
Clients placed into the clientPool
are owned by whichever consumer owns the pool.
That consumer is responsible for closing the clients when they are no longer needed.
public io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.InstructionResponse> control(io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.InstructionRequest> requestObserver)
Note: currently does not distinguish what sort of SDK it is, so a separate instance is required for each.
control
in class org.apache.beam.model.fnexecution.v1.BeamFnControlGrpc.BeamFnControlImplBase
public void close() throws java.lang.Exception
FnService
There 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.