pub struct WebRtcPeerLinkFactory { /* private fields */ }Expand description
WebRTC peer-link factory for the default production transport stack.
Implementations§
Trait Implementations§
Source§impl Default for WebRtcPeerLinkFactory
impl Default for WebRtcPeerLinkFactory
Source§impl PeerLinkFactory for WebRtcPeerLinkFactory
impl PeerLinkFactory for WebRtcPeerLinkFactory
Source§fn create_offer<'life0, 'life1, 'async_trait>(
&'life0 self,
target_peer_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(Arc<dyn PeerLink>, String), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn create_offer<'life0, 'life1, 'async_trait>(
&'life0 self,
target_peer_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(Arc<dyn PeerLink>, String), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Create an outgoing negotiated link.
Returns
(our_link, offer_sdp).Source§fn accept_offer<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
from_peer_id: &'life1 str,
offer_sdp: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<(Arc<dyn PeerLink>, String), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn accept_offer<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
from_peer_id: &'life1 str,
offer_sdp: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<(Arc<dyn PeerLink>, String), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Accept an incoming negotiated link.
Returns
(our_link, answer_sdp).Source§fn handle_answer<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
target_peer_id: &'life1 str,
answer_sdp: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Arc<dyn PeerLink>, TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn handle_answer<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
target_peer_id: &'life1 str,
answer_sdp: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Arc<dyn PeerLink>, TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Complete a link after receiving the answer.
Source§fn handle_candidate<'life0, 'life1, 'async_trait>(
&'life0 self,
_peer_id: &'life1 str,
_candidate: IceCandidate,
) -> Pin<Box<dyn Future<Output = Result<(), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_candidate<'life0, 'life1, 'async_trait>(
&'life0 self,
_peer_id: &'life1 str,
_candidate: IceCandidate,
) -> Pin<Box<dyn Future<Output = Result<(), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Apply a trickle candidate update for an in-flight link, if relevant.
Source§fn handle_candidates<'life0, 'life1, 'async_trait>(
&'life0 self,
peer_id: &'life1 str,
candidates: Vec<IceCandidate>,
) -> Pin<Box<dyn Future<Output = Result<(), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_candidates<'life0, 'life1, 'async_trait>(
&'life0 self,
peer_id: &'life1 str,
candidates: Vec<IceCandidate>,
) -> Pin<Box<dyn Future<Output = Result<(), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Apply a batch of trickle candidate updates.
Source§fn remove_peer<'life0, 'life1, 'async_trait>(
&'life0 self,
_peer_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn remove_peer<'life0, 'life1, 'async_trait>(
&'life0 self,
_peer_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), TransportError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Drop any factory-owned state for a peer that has been removed.
Auto Trait Implementations§
impl !Freeze for WebRtcPeerLinkFactory
impl !RefUnwindSafe for WebRtcPeerLinkFactory
impl Send for WebRtcPeerLinkFactory
impl Sync for WebRtcPeerLinkFactory
impl Unpin for WebRtcPeerLinkFactory
impl UnsafeUnpin for WebRtcPeerLinkFactory
impl !UnwindSafe for WebRtcPeerLinkFactory
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