Skip to main content

ClientMiddleware

Trait ClientMiddleware 

Source
pub trait ClientMiddleware<State, Context> {
    // Provided methods
    fn pre_startup(
        &mut self,
        _context: &Context,
        _state: &mut State,
        message: PreStartupMessage,
    ) -> PreStartupMessage { ... }
    fn startup(
        &mut self,
        _context: &Context,
        _state: &mut State,
        message: StartupMessage,
    ) -> StartupMessage { ... }
    fn frontend(
        &mut self,
        _context: &Context,
        _state: &mut State,
        message: FrontendMessage,
    ) -> FrontendMessage { ... }
    fn backend(
        &mut self,
        _context: &Context,
        _state: &mut State,
        message: BackendMessage,
    ) -> BackendMessage { ... }
}
Expand description

Middleware for a PostgreSQL client role. Implement only the directions used.

Provided Methods§

Source

fn pre_startup( &mut self, _context: &Context, _state: &mut State, message: PreStartupMessage, ) -> PreStartupMessage

Intercepts a client-originated pre-startup negotiation packet.

Source

fn startup( &mut self, _context: &Context, _state: &mut State, message: StartupMessage, ) -> StartupMessage

Intercepts the owned startup message before it is sent.

Source

fn frontend( &mut self, _context: &Context, _state: &mut State, message: FrontendMessage, ) -> FrontendMessage

Intercepts one message sent by the client.

Source

fn backend( &mut self, _context: &Context, _state: &mut State, message: BackendMessage, ) -> BackendMessage

Intercepts one message received from the server.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<S, C> ClientMiddleware<S, C> for IdentityHandler

Source§

impl<State, Context, First, Second> ClientMiddleware<State, Context> for MiddlewareChain<First, Second>
where First: ClientMiddleware<State, Context>, Second: ClientMiddleware<State, Context>,

Source§

impl<State, Context> ClientMiddleware<State, Context> for IdentityMiddleware