pub struct DirectoryClient { /* private fields */ }Expand description
Directory authority client for node discovery
Implementations§
Source§impl DirectoryClient
impl DirectoryClient
Sourcepub async fn get_public_key(
&self,
node_id: &[u8],
) -> Result<KEMPublicKey, String>
pub async fn get_public_key( &self, node_id: &[u8], ) -> Result<KEMPublicKey, String>
Get public key for a node
Sourcepub async fn select_random_nodes(
&self,
count: usize,
) -> Result<Vec<Vec<u8>>, OnionError>
pub async fn select_random_nodes( &self, count: usize, ) -> Result<Vec<Vec<u8>>, OnionError>
Select random nodes for circuit building
Sourcepub async fn measure_bandwidth(&self, node_id: &[u8]) -> Result<u64, OnionError>
pub async fn measure_bandwidth(&self, node_id: &[u8]) -> Result<u64, OnionError>
Measure bandwidth to a node
Trait Implementations§
Auto Trait Implementations§
impl Freeze for DirectoryClient
impl !RefUnwindSafe for DirectoryClient
impl Send for DirectoryClient
impl Sync for DirectoryClient
impl Unpin for DirectoryClient
impl !UnwindSafe for DirectoryClient
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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> 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 more