Struct WebSocketAcceptor
pub struct WebSocketAcceptor { /* private fields */ }
Expand description
An acceptor that can be used for upgrades os WebSockets on the server side.
Implementations§
§impl WebSocketAcceptor
impl WebSocketAcceptor
pub fn new() -> WebSocketAcceptor
pub fn new() -> WebSocketAcceptor
Create a new default WebSocketAcceptor
.
pub fn with_protocols_flex(self, flexible: bool) -> WebSocketAcceptor
pub fn with_protocols_flex(self, flexible: bool) -> WebSocketAcceptor
Define if the protocols validation and actioning is flexible.
- In case no protocols are defined by server it implies that the server will accept any incoming protocol instead of denying protocols.
- Or in case server did specify a protocol allow list it will also accept incoming requests which do not define a protocol.
pub fn set_protocols_flex(&mut self, flexible: bool) -> &mut WebSocketAcceptor
pub fn set_protocols_flex(&mut self, flexible: bool) -> &mut WebSocketAcceptor
Define if the protocols validation and actioning is flexible.
- In case no protocols are defined by server it implies that the server will accept any incoming protocol instead of denying protocols.
- Or in case server did specify a protocol allow list it will also accept incoming requests which do not define a protocol.
pub fn maybe_with_protocols(
self,
protocols: Option<SecWebSocketProtocol>,
) -> WebSocketAcceptor
pub fn maybe_with_protocols( self, protocols: Option<SecWebSocketProtocol>, ) -> WebSocketAcceptor
Define the WebSocket protocols.
The protocols defined by the server (matcher) act as an allow list. You can make protocols optional in case you also wish to allow no protocols to be defined by marking protocols as flexible.
pub fn maybe_set_protocols(
&mut self,
protocols: Option<SecWebSocketProtocol>,
) -> &mut WebSocketAcceptor
pub fn maybe_set_protocols( &mut self, protocols: Option<SecWebSocketProtocol>, ) -> &mut WebSocketAcceptor
Define the WebSocket protocols.
The protocols defined by the server (matcher) act as an allow list. You can make protocols optional in case you also wish to allow no protocols to be defined by marking protocols as flexible.
pub fn with_protocols(
self,
protocols: SecWebSocketProtocol,
) -> WebSocketAcceptor
pub fn with_protocols( self, protocols: SecWebSocketProtocol, ) -> WebSocketAcceptor
Define the WebSocket protocols.
The protocols defined by the server (matcher) act as an allow list. You can make protocols optional in case you also wish to allow no protocols to be defined by marking protocols as flexible.
pub fn set_protocols(
&mut self,
protocols: SecWebSocketProtocol,
) -> &mut WebSocketAcceptor
pub fn set_protocols( &mut self, protocols: SecWebSocketProtocol, ) -> &mut WebSocketAcceptor
Define the WebSocket protocols.
The protocols defined by the server (matcher) act as an allow list. You can make protocols optional in case you also wish to allow no protocols to be defined by marking protocols as flexible.
pub fn without_protocols(self) -> WebSocketAcceptor
pub fn without_protocols(self) -> WebSocketAcceptor
Define the WebSocket protocols.
The protocols defined by the server (matcher) act as an allow list. You can make protocols optional in case you also wish to allow no protocols to be defined by marking protocols as flexible.
pub fn unset_protocols(&mut self) -> &mut WebSocketAcceptor
pub fn unset_protocols(&mut self) -> &mut WebSocketAcceptor
Define the WebSocket protocols.
The protocols defined by the server (matcher) act as an allow list. You can make protocols optional in case you also wish to allow no protocols to be defined by marking protocols as flexible.
pub fn with_echo_protocols(self) -> WebSocketAcceptor
pub fn with_echo_protocols(self) -> WebSocketAcceptor
Define the WebSocket rama echo protocols.
pub fn set_echo_protocols(&mut self) -> &mut WebSocketAcceptor
pub fn set_echo_protocols(&mut self) -> &mut WebSocketAcceptor
Define the WebSocket rama echo protocols.
pub fn maybe_with_extensions(
self,
extensions: Option<SecWebSocketExtensions>,
) -> WebSocketAcceptor
pub fn maybe_with_extensions( self, extensions: Option<SecWebSocketExtensions>, ) -> WebSocketAcceptor
Define the WebSocket extensions to be supported by the server.
pub fn maybe_set_extensions(
&mut self,
extensions: Option<SecWebSocketExtensions>,
) -> &mut WebSocketAcceptor
pub fn maybe_set_extensions( &mut self, extensions: Option<SecWebSocketExtensions>, ) -> &mut WebSocketAcceptor
Define the WebSocket extensions to be supported by the server.
pub fn with_extensions(
self,
extensions: SecWebSocketExtensions,
) -> WebSocketAcceptor
pub fn with_extensions( self, extensions: SecWebSocketExtensions, ) -> WebSocketAcceptor
Define the WebSocket extensions to be supported by the server.
pub fn set_extensions(
&mut self,
extensions: SecWebSocketExtensions,
) -> &mut WebSocketAcceptor
pub fn set_extensions( &mut self, extensions: SecWebSocketExtensions, ) -> &mut WebSocketAcceptor
Define the WebSocket extensions to be supported by the server.
pub fn without_extensions(self) -> WebSocketAcceptor
pub fn without_extensions(self) -> WebSocketAcceptor
Define the WebSocket extensions to be supported by the server.
pub fn unset_extensions(&mut self) -> &mut WebSocketAcceptor
pub fn unset_extensions(&mut self) -> &mut WebSocketAcceptor
Define the WebSocket extensions to be supported by the server.
pub fn with_per_message_deflate(self) -> WebSocketAcceptor
pub fn with_per_message_deflate(self) -> WebSocketAcceptor
Set or add the deflate WebSocket extension with the default config
pub fn set_per_message_deflate(&mut self) -> &mut WebSocketAcceptor
pub fn set_per_message_deflate(&mut self) -> &mut WebSocketAcceptor
Set or add the deflate WebSocket extension with the default config
pub fn with_per_message_deflate_overwrite_extensions(self) -> WebSocketAcceptor
pub fn with_per_message_deflate_overwrite_extensions(self) -> WebSocketAcceptor
Set the deflate WebSocket extension with the default config, erasing existing if it already exists.
pub fn set_per_message_deflate_overwrite_extensions(
&mut self,
) -> &mut WebSocketAcceptor
pub fn set_per_message_deflate_overwrite_extensions( &mut self, ) -> &mut WebSocketAcceptor
Set the deflate WebSocket extension with the default config, erasing existing if it already exists.
pub fn with_per_message_deflate_with_config(
self,
config: impl Into<PerMessageDeflateConfig>,
) -> WebSocketAcceptor
pub fn with_per_message_deflate_with_config( self, config: impl Into<PerMessageDeflateConfig>, ) -> WebSocketAcceptor
Set or add the deflate WebSocket extension with the given config, erasing existing if it already exists.
pub fn set_per_message_deflate_with_config(
&mut self,
config: impl Into<PerMessageDeflateConfig>,
) -> &mut WebSocketAcceptor
pub fn set_per_message_deflate_with_config( &mut self, config: impl Into<PerMessageDeflateConfig>, ) -> &mut WebSocketAcceptor
Set or add the deflate WebSocket extension with the given config, erasing existing if it already exists.
pub fn with_per_message_deflate_with_config_overwrite_extensions(
self,
config: impl Into<PerMessageDeflateConfig>,
) -> WebSocketAcceptor
pub fn with_per_message_deflate_with_config_overwrite_extensions( self, config: impl Into<PerMessageDeflateConfig>, ) -> WebSocketAcceptor
Set or add the deflate WebSocket extension with the given config, erasing existing if it already exists.
pub fn set_per_message_deflate_with_config_overwrite_extensions(
&mut self,
config: impl Into<PerMessageDeflateConfig>,
) -> &mut WebSocketAcceptor
pub fn set_per_message_deflate_with_config_overwrite_extensions( &mut self, config: impl Into<PerMessageDeflateConfig>, ) -> &mut WebSocketAcceptor
Set or add the deflate WebSocket extension with the given config, erasing existing if it already exists.
§impl WebSocketAcceptor
impl WebSocketAcceptor
pub fn into_service<S>(self, service: S) -> WebSocketAcceptorService<S>
pub fn into_service<S>(self, service: S) -> WebSocketAcceptorService<S>
Consume self
into an WebSocketAcceptorService
ready to serve.
Use the UpgradeLayer
in case the ws upgrade is optional.
pub fn into_echo_service(self) -> WebSocketAcceptorService<WebSocketEchoService>
pub fn into_echo_service(self) -> WebSocketAcceptorService<WebSocketEchoService>
Turn this WebSocketAcceptor
into an echo WebSocketAcceptorService
].
Trait Implementations§
§impl Clone for WebSocketAcceptor
impl Clone for WebSocketAcceptor
§fn clone(&self) -> WebSocketAcceptor
fn clone(&self) -> WebSocketAcceptor
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for WebSocketAcceptor
impl Debug for WebSocketAcceptor
§impl Default for WebSocketAcceptor
impl Default for WebSocketAcceptor
§fn default() -> WebSocketAcceptor
fn default() -> WebSocketAcceptor
§impl<Body> Service<Request<Body>> for WebSocketAcceptorwhere
Body: Send + 'static,
impl<Body> Service<Request<Body>> for WebSocketAcceptorwhere
Body: Send + 'static,
§type Response = (Response<Body>, Context, Request<Body>)
type Response = (Response<Body>, Context, Request<Body>)
§async fn serve(
&self,
ctx: Context,
req: Request<Body>,
) -> Result<<WebSocketAcceptor as Service<Request<Body>>>::Response, <WebSocketAcceptor as Service<Request<Body>>>::Error>
async fn serve( &self, ctx: Context, req: Request<Body>, ) -> Result<<WebSocketAcceptor as Service<Request<Body>>>::Response, <WebSocketAcceptor as Service<Request<Body>>>::Error>
§fn boxed(self) -> BoxService<Request, Self::Response, Self::Error>
fn boxed(self) -> BoxService<Request, Self::Response, Self::Error>
Auto Trait Implementations§
impl Freeze for WebSocketAcceptor
impl RefUnwindSafe for WebSocketAcceptor
impl Send for WebSocketAcceptor
impl Sync for WebSocketAcceptor
impl Unpin for WebSocketAcceptor
impl UnwindSafe for WebSocketAcceptor
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§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> ⓘ
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> ⓘ
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 more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Policy
that returns Action::Follow
only if self
and other
return
Action::Follow
. Read more