Endpoint

Struct Endpoint 

Source
pub struct Endpoint { /* private fields */ }
Expand description

Tx5 endpoint.

Implementations§

Source§

impl Endpoint

Source

pub fn new(config: Arc<Config>) -> (Self, EndpointRecv)

Construct a new tx5 endpoint.

Source

pub async fn listen(&self, sig_url: SigUrl) -> Option<PeerUrl>

Connect to a signal server as a listener, allowing incoming connections. You probably only want to call this once.

Source

pub fn close(&self, peer_url: &PeerUrl)

Request that the peer connection identified by the given peer_url is closed.

Source

pub async fn send(&self, peer_url: PeerUrl, data: Vec<u8>) -> Result<()>

Send data to a remote on this tx5 endpoint.

The future returned from this method will resolve when the data is handed off to the networking backend or the connection attempt to the peer has failed.

Source

pub async fn broadcast(&self, data: &[u8])

Broadcast data to all connections that happen to be open.

If no connections are open, no data will be broadcast. The future returned from this method will resolve when all broadcast messages have been handed off to our networking backend (or have timed out).

Source

pub fn get_listening_addresses(&self) -> Vec<PeerUrl>

Get a list of listening addresses (PeerUrls) at which this endpoint is currently reachable.

Source

pub fn get_connected_peer_addresses(&self) -> Vec<PeerUrl>

Get the list of peers (PeerUrls) that this endpoint is currently connected to.

Source

pub fn get_stats(&self) -> Stats

Get stats.

Trait Implementations§

Source§

impl Debug for Endpoint

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

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
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,