public class SdkHarnessClient
extends java.lang.Object
This provides a Java-friendly wrapper around FnApiControlClient
and CloseableFnDataReceiver
, which handle lower-level gRPC message wrangling.
Modifier and Type | Class and Description |
---|---|
static class |
SdkHarnessClient.ActiveBundle<InputT>
An active bundle for a particular
BeamFnApi.ProcessBundleDescriptor . |
class |
SdkHarnessClient.BundleProcessor
A processor capable of creating bundles for some registered
BeamFnApi.ProcessBundleDescriptor . |
static interface |
SdkHarnessClient.IdGenerator
A supply of unique identifiers, used internally.
|
static class |
SdkHarnessClient.RemoteInputDestination<T>
A pair of
Coder and BeamFnApi.Target which can be handled by the remote SDK
harness to receive elements sent from the runner. |
static class |
SdkHarnessClient.RemoteOutputReceiver<T>
A pair of
Coder and FnDataReceiver which can be registered to receive elements
for a LogicalEndpoint . |
Modifier and Type | Method and Description |
---|---|
SdkHarnessClient.BundleProcessor |
getProcessor(org.apache.beam.model.fnexecution.v1.BeamFnApi.ProcessBundleDescriptor descriptor) |
java.util.Map<java.lang.String,SdkHarnessClient.BundleProcessor> |
register(java.lang.Iterable<org.apache.beam.model.fnexecution.v1.BeamFnApi.ProcessBundleDescriptor> processBundleDescriptors)
Registers a
BeamFnApi.ProcessBundleDescriptor for future processing. |
static SdkHarnessClient |
usingFnApiClient(org.apache.beam.runners.fnexecution.control.FnApiControlClient fnApiControlClient)
Creates a client for a particular SDK harness.
|
SdkHarnessClient |
withIdGenerator(SdkHarnessClient.IdGenerator idGenerator) |
public static SdkHarnessClient usingFnApiClient(org.apache.beam.runners.fnexecution.control.FnApiControlClient fnApiControlClient)
public SdkHarnessClient withIdGenerator(SdkHarnessClient.IdGenerator idGenerator)
public SdkHarnessClient.BundleProcessor getProcessor(org.apache.beam.model.fnexecution.v1.BeamFnApi.ProcessBundleDescriptor descriptor)
public java.util.Map<java.lang.String,SdkHarnessClient.BundleProcessor> register(java.lang.Iterable<org.apache.beam.model.fnexecution.v1.BeamFnApi.ProcessBundleDescriptor> processBundleDescriptors)
BeamFnApi.ProcessBundleDescriptor
for future processing.
A client may block on the result future, but may also proceed without blocking.