Struct hyperdriver::discovery::RegistryTransport
source · pub struct RegistryTransport { /* private fields */ }Available on crate feature
discovery only.Expand description
A connection transport which uses roomservice’s internal service registry.
Implementations§
source§impl RegistryTransport
impl RegistryTransport
sourcepub fn builder(registry: ServiceRegistry) -> TransportBuilder
pub fn builder(registry: ServiceRegistry) -> TransportBuilder
Create a new RegistryTransport builder with the given service registry.
The builder can be used to add custom schemes to the transport.
sourcepub fn with_default_schemes(registry: ServiceRegistry) -> Self
pub fn with_default_schemes(registry: ServiceRegistry) -> Self
Create a new RegistryTransport with the given service registry and default schemes.
The default schemes are svc and grpc, which follow the conventions of the svc protocol (using the host to
determine the service) and the gRPC protocol (using the first path component to determine the service).
sourcepub fn registry(&self) -> &ServiceRegistry
pub fn registry(&self) -> &ServiceRegistry
The inner service registry
Trait Implementations§
source§impl Clone for RegistryTransport
impl Clone for RegistryTransport
source§fn clone(&self) -> RegistryTransport
fn clone(&self) -> RegistryTransport
Returns a copy 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 RegistryTransport
impl Debug for RegistryTransport
source§impl Service<Uri> for RegistryTransport
impl Service<Uri> for RegistryTransport
§type Response = TransportStream<Stream>
type Response = TransportStream<Stream>
Responses given by the service.
§type Error = ConnectionError
type Error = ConnectionError
Errors produced by the service.
§type Future = Pin<Box<dyn Future<Output = Result<<RegistryTransport as Service<Uri>>::Response, <RegistryTransport as Service<Uri>>::Error>> + Send>>
type Future = Pin<Box<dyn Future<Output = Result<<RegistryTransport as Service<Uri>>::Response, <RegistryTransport as Service<Uri>>::Error>> + Send>>
The future response value.
Auto Trait Implementations§
impl Freeze for RegistryTransport
impl !RefUnwindSafe for RegistryTransport
impl Send for RegistryTransport
impl Sync for RegistryTransport
impl Unpin for RegistryTransport
impl !UnwindSafe for RegistryTransport
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)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> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
source§impl<S, R> ServiceExt<R> for Swhere
S: Service<R>,
impl<S, R> ServiceExt<R> for Swhere
S: Service<R>,
source§fn into_make_service(self) -> IntoMakeService<S>
fn into_make_service(self) -> IntoMakeService<S>
Convert this service into a
MakeService, that is a Service whose
response is another service. Read moresource§fn into_make_service_with_connect_info<C>(
self,
) -> IntoMakeServiceWithConnectInfo<S, C>
fn into_make_service_with_connect_info<C>( self, ) -> IntoMakeServiceWithConnectInfo<S, C>
Available on crate feature
tokio only.Convert this service into a
MakeService, that will store C’s
associated ConnectInfo in a request extension such that ConnectInfo
can extract it. Read moresource§fn handle_error<F, T>(self, f: F) -> HandleError<Self, F, T>
fn handle_error<F, T>(self, f: F) -> HandleError<Self, F, T>
Convert this service into a
HandleError, that will handle errors
by converting them into responses. Read moresource§impl<T, Request> ServiceExt<Request> for T
impl<T, Request> ServiceExt<Request> for T
source§fn ready(&mut self) -> Ready<'_, Self, Request>where
Self: Sized,
fn ready(&mut self) -> Ready<'_, Self, Request>where
Self: Sized,
Yields a mutable reference to the service when it is ready to accept a request.
source§fn ready_and(&mut self) -> Ready<'_, Self, Request>where
Self: Sized,
fn ready_and(&mut self) -> Ready<'_, Self, Request>where
Self: Sized,
👎Deprecated since 0.4.6: please use the
ServiceExt::ready method insteadYields a mutable reference to the service when it is ready to accept a request.
source§fn ready_oneshot(self) -> ReadyOneshot<Self, Request>where
Self: Sized,
fn ready_oneshot(self) -> ReadyOneshot<Self, Request>where
Self: Sized,
Yields the service when it is ready to accept a request.
source§fn oneshot(self, req: Request) -> Oneshot<Self, Request>where
Self: Sized,
fn oneshot(self, req: Request) -> Oneshot<Self, Request>where
Self: Sized,
Consume this
Service, calling with the providing request once it is ready.source§fn and_then<F>(self, f: F) -> AndThen<Self, F>
fn and_then<F>(self, f: F) -> AndThen<Self, F>
Executes a new future after this service’s future resolves. This does
not alter the behaviour of the
poll_ready method. Read moresource§fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F>
fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F>
Maps this service’s response value to a different value. This does not
alter the behaviour of the
poll_ready method. Read moresource§fn map_err<F, Error>(self, f: F) -> MapErr<Self, F>
fn map_err<F, Error>(self, f: F) -> MapErr<Self, F>
Maps this service’s error value to a different value. This does not
alter the behaviour of the
poll_ready method. Read moresource§fn map_result<F, Response, Error>(self, f: F) -> MapResult<Self, F>
fn map_result<F, Response, Error>(self, f: F) -> MapResult<Self, F>
Maps this service’s result type (
Result<Self::Response, Self::Error>)
to a different value, regardless of whether the future succeeds or
fails. Read moresource§fn map_request<F, NewRequest>(self, f: F) -> MapRequest<Self, F>
fn map_request<F, NewRequest>(self, f: F) -> MapRequest<Self, F>
Composes a function in front of the service. Read more
source§fn then<F, Response, Error, Fut>(self, f: F) -> Then<Self, F>
fn then<F, Response, Error, Fut>(self, f: F) -> Then<Self, F>
Composes an asynchronous function after this service. Read more
source§fn map_future<F, Fut, Response, Error>(self, f: F) -> MapFuture<Self, F>
fn map_future<F, Fut, Response, Error>(self, f: F) -> MapFuture<Self, F>
Composes a function that transforms futures produced by the service. Read more
source§impl<T, IO> Transport for T
impl<T, IO> Transport for T
§type Error = <T as Service<Uri>>::Error
type Error = <T as Service<Uri>>::Error
Available on crate feature
client only.Error returned when connection fails
§type Future = <T as Service<Uri>>::Future
type Future = <T as Service<Uri>>::Future
Available on crate feature
client only.The future type returned by this service
source§impl<T> TransportExt for Twhere
T: Transport,
impl<T> TransportExt for Twhere
T: Transport,
source§fn into_stream(self) -> IntoStream<Self>
fn into_stream(self) -> IntoStream<Self>
Available on crate features
client and stream only.Wrap the transport in a converter which produces a Stream
source§fn with_tls(self, config: Arc<ClientConfig>) -> TlsTransport<Self>where
Self: Sized,
fn with_tls(self, config: Arc<ClientConfig>) -> TlsTransport<Self>where
Self: Sized,
Available on crate features
client and tls only.Wrap the transport in a TLS layer.
source§fn with_default_tls(self) -> TlsTransport<Self>where
Self: Sized,
fn with_default_tls(self) -> TlsTransport<Self>where
Self: Sized,
Available on crate features
client and tls only.Wrap the transport in a TLS layer configured with a default client configuration.
source§fn without_tls(self) -> TlsTransport<Self>where
Self: Sized,
fn without_tls(self) -> TlsTransport<Self>where
Self: Sized,
Available on crate feature
client only.Wrap the transport in a no-TLS layer.
source§fn with_optional_tls(
self,
config: Option<Arc<ClientConfig>>,
) -> TlsTransport<Self>where
Self: Sized,
fn with_optional_tls(
self,
config: Option<Arc<ClientConfig>>,
) -> TlsTransport<Self>where
Self: Sized,
Available on crate features
client and tls only.Wrap the transport in a TLS layer if the given config is
Some, otherwise wrap it in a no-TLS layer.