pub struct ClientWrapper<RB, T>(/* private fields */)
where
T: GenericClient<RB>;Expand description
Wrapper type for generic HTTP clients.
This wrapper provides a unified interface for creating HTTP requests across different backend implementations. It provides convenience methods for common HTTP methods like GET, POST, PUT, etc.
Most users should use the type aliases exported by this crate (ReqwestClient,
SimulatorClient, etc.) rather than using this wrapper directly.
Implementations§
Source§impl ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
impl ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
Sourcepub fn new() -> ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
pub fn new() -> ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
Create a new HTTP client with default configuration.
§Panics
- If the empty
ClientBuildersomehow fails to build
Sourcepub const fn builder() -> ClientBuilderWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>, ClientBuilder>
pub const fn builder() -> ClientBuilderWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>, ClientBuilder>
Create a new client builder for configuring the HTTP client.
Sourcepub fn get(
&self,
url: &str,
) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
pub fn get( &self, url: &str, ) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
Create a GET request builder for the specified URL.
Sourcepub fn post(
&self,
url: &str,
) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
pub fn post( &self, url: &str, ) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
Create a POST request builder for the specified URL.
Sourcepub fn put(
&self,
url: &str,
) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
pub fn put( &self, url: &str, ) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
Create a PUT request builder for the specified URL.
Sourcepub fn patch(
&self,
url: &str,
) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
pub fn patch( &self, url: &str, ) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
Create a PATCH request builder for the specified URL.
Sourcepub fn delete(
&self,
url: &str,
) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
pub fn delete( &self, url: &str, ) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
Create a DELETE request builder for the specified URL.
Sourcepub fn head(
&self,
url: &str,
) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
pub fn head( &self, url: &str, ) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
Create a HEAD request builder for the specified URL.
Sourcepub fn options(
&self,
url: &str,
) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
pub fn options( &self, url: &str, ) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
Create an OPTIONS request builder for the specified URL.
Sourcepub fn request(
&self,
method: Method,
url: &str,
) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
pub fn request( &self, method: Method, url: &str, ) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
Create a request builder with the specified HTTP method and URL.
Trait Implementations§
Source§impl Default for ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
impl Default for ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
Source§fn default() -> ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
fn default() -> ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
Source§impl GenericClient<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>> for ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
impl GenericClient<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>> for ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>
Source§fn request(
&self,
method: Method,
url: &str,
) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
fn request( &self, method: Method, url: &str, ) -> RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>
Source§impl GenericClientBuilder<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>> for ClientBuilder
impl GenericClientBuilder<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>> for ClientBuilder
Source§fn build(
self,
) -> Result<ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>, Error>
fn build( self, ) -> Result<ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>, Error>
Source§impl GenericClientBuilder<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>> for ClientBuilderWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>, ClientBuilder>
impl GenericClientBuilder<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>> for ClientBuilderWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>, ClientBuilder>
Source§fn build(
self,
) -> Result<ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>, Error>
fn build( self, ) -> Result<ClientWrapper<RequestBuilderWrapper<ResponseWrapper<Response>, RequestBuilder>, Client>, Error>
Auto Trait Implementations§
impl<RB, T> Freeze for ClientWrapper<RB, T>where
T: Freeze,
impl<RB, T> RefUnwindSafe for ClientWrapper<RB, T>where
T: RefUnwindSafe,
RB: RefUnwindSafe,
impl<RB, T> Send for ClientWrapper<RB, T>where
RB: Send,
impl<RB, T> Sync for ClientWrapper<RB, T>where
RB: Sync,
impl<RB, T> Unpin for ClientWrapper<RB, T>
impl<RB, T> UnsafeUnpin for ClientWrapper<RB, T>where
T: UnsafeUnpin,
impl<RB, T> UnwindSafe for ClientWrapper<RB, T>where
T: UnwindSafe,
RB: UnwindSafe,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> ⓘ
impl<T> HandlerSend for T
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> ⓘ
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> ⓘ
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>
T in a tonic::Request