pub struct GrpcTransport { /* private fields */ }Expand description
gRPC transport for A2A clients.
Connects to a tonic-served gRPC endpoint and translates A2A method
calls into gRPC RPCs with JSON payloads. Implements the Transport
trait for use with crate::A2aClient.
Implementations§
Source§impl GrpcTransport
impl GrpcTransport
Sourcepub async fn connect(
endpoint: impl Into<String>,
) -> Result<GrpcTransport, ClientError>
pub async fn connect( endpoint: impl Into<String>, ) -> Result<GrpcTransport, ClientError>
Connects to a gRPC endpoint with default configuration.
The endpoint should be an http:// or https:// URL.
§Errors
Returns ClientError::Transport if the connection fails.
Sourcepub async fn connect_with_config(
endpoint: impl Into<String>,
config: GrpcTransportConfig,
) -> Result<GrpcTransport, ClientError>
pub async fn connect_with_config( endpoint: impl Into<String>, config: GrpcTransportConfig, ) -> Result<GrpcTransport, ClientError>
Connects to a gRPC endpoint with custom configuration.
§Errors
Returns ClientError::Transport if the connection fails.
Trait Implementations§
Source§impl Clone for GrpcTransport
impl Clone for GrpcTransport
Source§fn clone(&self) -> GrpcTransport
fn clone(&self) -> GrpcTransport
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for GrpcTransport
impl Debug for GrpcTransport
Source§impl Transport for GrpcTransport
impl Transport for GrpcTransport
Source§fn send_request<'a>(
&'a self,
method: &'a str,
params: Value,
extra_headers: &'a HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Value, ClientError>> + Send + 'a>>
fn send_request<'a>( &'a self, method: &'a str, params: Value, extra_headers: &'a HashMap<String, String>, ) -> Pin<Box<dyn Future<Output = Result<Value, ClientError>> + Send + 'a>>
Sends a non-streaming JSON-RPC or REST request. Read more
Source§fn send_streaming_request<'a>(
&'a self,
method: &'a str,
params: Value,
extra_headers: &'a HashMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<EventStream, ClientError>> + Send + 'a>>
fn send_streaming_request<'a>( &'a self, method: &'a str, params: Value, extra_headers: &'a HashMap<String, String>, ) -> Pin<Box<dyn Future<Output = Result<EventStream, ClientError>> + Send + 'a>>
Sends a streaming request and returns an
EventStream. Read moreAuto Trait Implementations§
impl Freeze for GrpcTransport
impl !RefUnwindSafe for GrpcTransport
impl Send for GrpcTransport
impl Sync for GrpcTransport
impl Unpin for GrpcTransport
impl UnsafeUnpin for GrpcTransport
impl !UnwindSafe for GrpcTransport
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request