public class FnApiControlClientPoolService extends org.apache.beam.model.fnexecution.v1.BeamFnControlGrpc.BeamFnControlImplBase implements FnService
Modifier and Type | Method and Description |
---|---|
void |
close()
.
|
org.apache.beam.vendor.grpc.v1p60p1.io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.InstructionResponse> |
control(org.apache.beam.vendor.grpc.v1p60p1.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.
|
void |
getProcessBundleDescriptor(org.apache.beam.model.fnexecution.v1.BeamFnApi.GetProcessBundleDescriptorRequest request,
org.apache.beam.vendor.grpc.v1p60p1.io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.ProcessBundleDescriptor> responseObserver) |
static FnApiControlClientPoolService |
offeringClientsToPool(ControlClientPool.Sink clientPool,
HeaderAccessor headerAccessor)
Creates a new
FnApiControlClientPoolService which will enqueue and vend new SDK harness
connections. |
bindService
public static FnApiControlClientPoolService offeringClientsToPool(ControlClientPool.Sink clientPool, HeaderAccessor headerAccessor)
FnApiControlClientPoolService
which will enqueue and vend new SDK harness
connections.
Clients placed into the clientSink
are owned by whoever consumes them from the other
end of the pool. That consumer is responsible for closing the clients when they are no longer
needed.
public org.apache.beam.vendor.grpc.v1p60p1.io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.InstructionResponse> control(org.apache.beam.vendor.grpc.v1p60p1.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 interface org.apache.beam.model.fnexecution.v1.BeamFnControlGrpc.AsyncService
public void getProcessBundleDescriptor(org.apache.beam.model.fnexecution.v1.BeamFnApi.GetProcessBundleDescriptorRequest request, org.apache.beam.vendor.grpc.v1p60p1.io.grpc.stub.StreamObserver<org.apache.beam.model.fnexecution.v1.BeamFnApi.ProcessBundleDescriptor> responseObserver)
getProcessBundleDescriptor
in interface org.apache.beam.model.fnexecution.v1.BeamFnControlGrpc.AsyncService
public void close()
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.