Struct ginepro::DnsResolver
source · [−]pub struct DnsResolver { /* private fields */ }
Expand description
Implements LookupService
by using DNS queries to lookup ServiceDefinition::hostname
.
Implementations
sourceimpl DnsResolver
impl DnsResolver
sourcepub async fn from_system_config() -> Result<Self, Error>
pub async fn from_system_config() -> Result<Self, Error>
Construct a new DnsResolver
from env and system configration, e.g resolv.conf
.
Trait Implementations
sourceimpl LookupService for DnsResolver
impl LookupService for DnsResolver
sourcefn resolve_service_endpoints<'life0, 'life1, 'async_trait>(
&'life0 self,
definition: &'life1 ServiceDefinition
) -> Pin<Box<dyn Future<Output = Result<HashSet<SocketAddr>, Error>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn resolve_service_endpoints<'life0, 'life1, 'async_trait>(
&'life0 self,
definition: &'life1 ServiceDefinition
) -> Pin<Box<dyn Future<Output = Result<HashSet<SocketAddr>, Error>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Return a list of unique SocketAddr
associated with the provided
ServiceDefinition
containing the hostname
port
of the service.
If no ip addresses were resolved, an empty HashSet is returned. Read more
Auto Trait Implementations
impl !RefUnwindSafe for DnsResolver
impl Send for DnsResolver
impl Sync for DnsResolver
impl Unpin for DnsResolver
impl !UnwindSafe for DnsResolver
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> 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
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
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