pub trait ProxyConfiguration {
// Required methods
fn notify(&mut self, message: WorkerRequest) -> WorkerResponse;
fn accept(
&mut self,
token: ListenToken,
) -> Result<(TcpStream, SocketAddr), AcceptError>;
fn create_session(
&mut self,
socket: TcpStream,
peer: SocketAddr,
token: ListenToken,
wait_time: Duration,
proxy: Rc<RefCell<Self>>,
) -> Result<(), AcceptError>;
}Required Methods§
fn notify(&mut self, message: WorkerRequest) -> WorkerResponse
Sourcefn accept(
&mut self,
token: ListenToken,
) -> Result<(TcpStream, SocketAddr), AcceptError>
fn accept( &mut self, token: ListenToken, ) -> Result<(TcpStream, SocketAddr), AcceptError>
Accept one connection on the listener behind token, returning the
socket together with the peer address accept(2) reported for it.
Sourcefn create_session(
&mut self,
socket: TcpStream,
peer: SocketAddr,
token: ListenToken,
wait_time: Duration,
proxy: Rc<RefCell<Self>>,
) -> Result<(), AcceptError>
fn create_session( &mut self, socket: TcpStream, peer: SocketAddr, token: ListenToken, wait_time: Duration, proxy: Rc<RefCell<Self>>, ) -> Result<(), AcceptError>
Build the session for a socket Self::accept returned. peer is the
address accept(2) returned with it, so the session never has to ask
the kernel again with getpeername(2).
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".