pub struct PassthroughHandler { /* private fields */ }Expand description
Passthrough handler that forwards messages to an upstream server
Implementations§
Source§impl PassthroughHandler
impl PassthroughHandler
Sourcepub fn new(config: PassthroughConfig) -> Self
pub fn new(config: PassthroughConfig) -> Self
Create a new passthrough handler
Sourcepub fn should_passthrough(&self, text: &str) -> bool
pub fn should_passthrough(&self, text: &str) -> bool
Check if a message should be passed through
Sourcepub fn upstream_url(&self) -> &str
pub fn upstream_url(&self) -> &str
Get the upstream URL
Trait Implementations§
Source§impl WsHandler for PassthroughHandler
impl WsHandler for PassthroughHandler
Source§fn on_message<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 mut WsContext,
msg: WsMessage,
) -> Pin<Box<dyn Future<Output = HandlerResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn on_message<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 mut WsContext,
msg: WsMessage,
) -> Pin<Box<dyn Future<Output = HandlerResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Called when a message is received
Source§fn on_connect<'life0, 'life1, 'async_trait>(
&'life0 self,
_ctx: &'life1 mut WsContext,
) -> Pin<Box<dyn Future<Output = HandlerResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn on_connect<'life0, 'life1, 'async_trait>(
&'life0 self,
_ctx: &'life1 mut WsContext,
) -> Pin<Box<dyn Future<Output = HandlerResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Called when a new WebSocket connection is established
Source§fn on_disconnect<'life0, 'life1, 'async_trait>(
&'life0 self,
_ctx: &'life1 mut WsContext,
) -> Pin<Box<dyn Future<Output = HandlerResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn on_disconnect<'life0, 'life1, 'async_trait>(
&'life0 self,
_ctx: &'life1 mut WsContext,
) -> Pin<Box<dyn Future<Output = HandlerResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Called when the connection is closed
Source§fn handles_path(&self, _path: &str) -> bool
fn handles_path(&self, _path: &str) -> bool
Check if this handler should handle the given path
Auto Trait Implementations§
impl Freeze for PassthroughHandler
impl RefUnwindSafe for PassthroughHandler
impl Send for PassthroughHandler
impl Sync for PassthroughHandler
impl Unpin for PassthroughHandler
impl UnwindSafe for PassthroughHandler
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
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request