pub struct TransportFactory { /* private fields */ }Expand description
Creates DuplexStreams that directly connect to the associated proxy’s
nodes.
This is an alternative method of establishing a transport layer connection to the proxy nodes. The purpose of this alternative method is to allow writing tests that use tokio’s paused time feature. The advantage of using a channel is that, when some data is sent on the channel, the waiting task will be immediately notified and scheduled for execution. For system sockets this is not guaranteed and the receiving task may be notified after a real-time delay, which can trick tokio’s timer auto-advance and make it move the time forward, even if the task on the receiving side would have been notified earlier in a real scenario.
Implementations§
Source§impl TransportFactory
impl TransportFactory
pub fn connect( &self, connect_address: SocketAddr, source_ip: Option<IpAddr>, source_port: Option<u16>, ) -> Result<DuplexStream, Error>
Auto Trait Implementations§
impl Freeze for TransportFactory
impl RefUnwindSafe for TransportFactory
impl Send for TransportFactory
impl Sync for TransportFactory
impl Unpin for TransportFactory
impl UnsafeUnpin for TransportFactory
impl UnwindSafe for TransportFactory
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> ErasedDestructor for Twhere
T: 'static,
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