pub struct HttpProxy { /* private fields */ }Implementations§
Source§impl HttpProxy
impl HttpProxy
pub fn new( registry: Registry, sessions: Rc<RefCell<SessionManager>>, pool: Rc<RefCell<Pool>>, backends: Rc<RefCell<BackendMap>>, ) -> HttpProxy
pub fn add_listener( &mut self, config: HttpListenerConfig, token: Token, ) -> Result<Token, ProxyError>
pub fn get_listener(&self, token: &Token) -> Option<Rc<RefCell<HttpListener>>>
pub fn remove_listener( &mut self, remove: RemoveListener, ) -> Result<(), ProxyError>
pub fn activate_listener( &self, addr: &SocketAddr, tcp_listener: Option<MioTcpListener>, ) -> Result<Token, ProxyError>
pub fn give_back_listeners(&mut self) -> Vec<(SocketAddr, MioTcpListener)>
pub fn give_back_listener( &mut self, address: SocketAddr, ) -> Result<(Token, MioTcpListener), ProxyError>
Sourcepub fn update_listener(
&mut self,
patch: UpdateHttpListenerConfig,
) -> Result<(), ProxyError>
pub fn update_listener( &mut self, patch: UpdateHttpListenerConfig, ) -> Result<(), ProxyError>
Apply a partial-update patch to the identified HTTP listener.
pub fn add_cluster(&mut self, cluster: Cluster) -> Result<(), ProxyError>
pub fn remove_cluster(&mut self, cluster_id: &str) -> Result<(), ProxyError>
pub fn add_http_frontend( &mut self, front: RequestHttpFrontend, ) -> Result<(), ProxyError>
pub fn remove_http_frontend( &mut self, front: RequestHttpFrontend, ) -> Result<(), ProxyError>
pub fn soft_stop(&mut self) -> Result<(), ProxyError>
pub fn hard_stop(&mut self) -> Result<(), ProxyError>
Trait Implementations§
Source§impl L7Proxy for HttpProxy
impl L7Proxy for HttpProxy
fn kind(&self) -> ListenerType
fn register_socket( &self, source: &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
Source§fn remove_session(&self, token: Token) -> bool
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
fn backends(&self) -> Rc<RefCell<BackendMap>>
fn clusters(&self) -> &HashMap<ClusterId, Cluster>
Source§impl ProxyConfiguration for HttpProxy
impl ProxyConfiguration for HttpProxy
fn notify(&mut self, request: WorkerRequest) -> WorkerResponse
fn accept(&mut self, token: ListenToken) -> Result<TcpStream, AcceptError>
fn create_session( &mut self, frontend_sock: TcpStream, listener_token: ListenToken, wait_time: Duration, proxy: Rc<RefCell<Self>>, ) -> Result<(), AcceptError>
Auto Trait Implementations§
impl !RefUnwindSafe for HttpProxy
impl !Send for HttpProxy
impl !Sync for HttpProxy
impl !UnwindSafe for HttpProxy
impl Freeze for HttpProxy
impl Unpin for HttpProxy
impl UnsafeUnpin for HttpProxy
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> 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