Struct mz_dataflow_types::client::grpc::GrpcClient
source · [−]pub struct GrpcClient<Client, PC, PR> { /* private fields */ }
Expand description
A client to a remote dataflow server using gRPC and protobuf based communication.
The client opens a connection using the proto client stubs that are generated by
tonic from the service definition in client.proto
. After creation, the client is in
disconnected state. To connect it, connect
has to be called. Once the client is
connected, it will call automatically the only RPC defined in the service description,
encapsulated by the BidiProtoClient
trait. This trait bound is not on the Client
type parameter here, but it IS on the impl blocks.
Bidirectional protobuf RPC sets up two streams that persist after the
RPC has returned: A Request (Command) stream (for us, backed by a unbounded mpsc queue)
going from this instance to the server and a response stream coming back
(represented directly as a Streaming
Implementations
sourceimpl<Client, PC, PR> GrpcClient<Client, PC, PR> where
Client: BidiProtoClient<ProtoCommand = PC, ProtoResponse = PR>,
impl<Client, PC, PR> GrpcClient<Client, PC, PR> where
Client: BidiProtoClient<ProtoCommand = PC, ProtoResponse = PR>,
Trait Implementations
sourceimpl<Client, PC, PR> FromAddr for GrpcClient<Client, PC, PR>
impl<Client, PC, PR> FromAddr for GrpcClient<Client, PC, PR>
sourceimpl<Client, C, R, PC, PR> GenericClient<C, R> for GrpcClient<Client, PC, PR> where
C: RustType<PC> + Send + Sync + 'static,
R: RustType<PR> + Send + Sync,
Client: BidiProtoClient<ProtoCommand = PC, ProtoResponse = PR> + Send + Debug,
PC: Send + Sync + Debug,
PR: Send + Sync + Debug,
impl<Client, C, R, PC, PR> GenericClient<C, R> for GrpcClient<Client, PC, PR> where
C: RustType<PC> + Send + Sync + 'static,
R: RustType<PR> + Send + Sync,
Client: BidiProtoClient<ProtoCommand = PC, ProtoResponse = PR> + Send + Debug,
PC: Send + Sync + Debug,
PR: Send + Sync + Debug,
sourcefn send<'life0, 'async_trait>(
&'life0 mut self,
cmd: C
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn send<'life0, 'async_trait>(
&'life0 mut self,
cmd: C
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Sends a command to the dataflow server. Read more
sourceimpl<Client: BidiProtoClient<ProtoCommand = PC, ProtoResponse = PR> + Send + Sync, PC: Send, PR> Reconnect for GrpcClient<Client, PC, PR>
impl<Client: BidiProtoClient<ProtoCommand = PC, ProtoResponse = PR> + Send + Sync, PC: Send, PR> Reconnect for GrpcClient<Client, PC, PR>
Auto Trait Implementations
impl<Client, PC, PR> !RefUnwindSafe for GrpcClient<Client, PC, PR>
impl<Client, PC, PR> Send for GrpcClient<Client, PC, PR> where
Client: Send,
PC: Send,
impl<Client, PC, PR> !Sync for GrpcClient<Client, PC, PR>
impl<Client, PC, PR> Unpin for GrpcClient<Client, PC, PR> where
Client: Unpin,
impl<Client, PC, PR> !UnwindSafe for GrpcClient<Client, PC, PR>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> FutureExt for T
impl<T> FutureExt for T
sourcefn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
sourcefn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
sourcefn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message T
in a tonic::Request
sourceimpl<P, R> ProtoType<R> for P where
R: RustType<P>,
impl<P, R> ProtoType<R> for P where
R: RustType<P>,
sourcefn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See RustType::from_proto
.
sourcefn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See RustType::into_proto
.
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more