Trait sozu_lib::L7Proxy

source ·
pub trait L7Proxy {
    // Required methods
    fn kind(&self) -> ListenerType;
    fn register_socket(
        &self,
        socket: &mut TcpStream,
        token: Token,
        interest: Interest
    ) -> Result<(), Error>;
    fn deregister_socket(&self, tcp_stream: &mut TcpStream) -> Result<(), Error>;
    fn add_session(&self, session: Rc<RefCell<dyn ProxySession>>) -> Token;
    fn remove_session(&self, token: Token) -> bool;
    fn backends(&self) -> Rc<RefCell<BackendMap>>;
    fn clusters(&self) -> &HashMap<ClusterId, Cluster>;
}

Required Methods§

source

fn kind(&self) -> ListenerType

source

fn register_socket( &self, socket: &mut TcpStream, token: Token, interest: Interest ) -> Result<(), Error>

source

fn deregister_socket(&self, tcp_stream: &mut TcpStream) -> Result<(), Error>

source

fn add_session(&self, session: Rc<RefCell<dyn ProxySession>>) -> Token

source

fn remove_session(&self, token: Token) -> bool

Remove the session from the session manager slab. Returns true if the session was actually there before deletion

source

fn backends(&self) -> Rc<RefCell<BackendMap>>

source

fn clusters(&self) -> &HashMap<ClusterId, Cluster>

Implementors§