pub struct HttpServerState { /* private fields */ }Expand description
HTTP server state wrapping the shared AppState.
Spawns a fresh actor per request to avoid serializing all HTTP requests through a single actor mailbox.
Implementations§
Source§impl HttpServerState
impl HttpServerState
pub fn new(state: AppState) -> Self
pub fn state(&self) -> &AppState
Sourcepub fn spawn_actor(
&self,
) -> (ActorRef<ServerMessage>, ActorHandle<ServerMessage>)
pub fn spawn_actor( &self, ) -> (ActorRef<ServerMessage>, ActorHandle<ServerMessage>)
Spawn a short-lived actor for one request and return its ref + handle.
The caller must keep the ActorHandle alive until the reply is received;
dropping it shuts down the actor.
Methods from Deref<Target = AppState>§
Sourcepub fn clone_with_config(&self, config: StateConfig) -> AppState
pub fn clone_with_config(&self, config: StateConfig) -> AppState
Clone this state with a different configuration, preserving the interceptor chain and other shared resources.
Sourcepub fn actor_system(&self) -> ActorSystem
pub fn actor_system(&self) -> ActorSystem
Get a clone of the actor system.
This is cheap since ActorSystem uses Arc internally.
Sourcepub fn engine(&self) -> &StandardEngine
pub fn engine(&self) -> &StandardEngine
Get a reference to the database engine.
Sourcepub fn engine_clone(&self) -> StandardEngine
pub fn engine_clone(&self) -> StandardEngine
Get a clone of the database engine.
This is cheap since StandardEngine uses Arc internally.
Sourcepub fn config(&self) -> &StateConfig
pub fn config(&self) -> &StateConfig
Get a reference to the query configuration.
Sourcepub fn query_timeout(&self) -> Duration
pub fn query_timeout(&self) -> Duration
Get the query timeout from configuration.
Sourcepub fn request_timeout(&self) -> Duration
pub fn request_timeout(&self) -> Duration
Get the request timeout from configuration.
Sourcepub fn max_connections(&self) -> usize
pub fn max_connections(&self) -> usize
Get the maximum connections from configuration.
Sourcepub fn admin_enabled(&self) -> bool
pub fn admin_enabled(&self) -> bool
Get whether admin operations are enabled.
Sourcepub fn request_interceptors(&self) -> &RequestInterceptorChain
pub fn request_interceptors(&self) -> &RequestInterceptorChain
Get a reference to the request interceptor chain.
Sourcepub fn auth_service(&self) -> &AuthService
pub fn auth_service(&self) -> &AuthService
Get a reference to the authentication service.
Sourcepub fn spawn_server_actor(
&self,
) -> (ActorRef<ServerMessage>, PoolActorHandle<ServerMessage>)
pub fn spawn_server_actor( &self, ) -> (ActorRef<ServerMessage>, PoolActorHandle<ServerMessage>)
Spawn a short-lived server actor for one request and return its ref + handle.
The caller must keep the ActorHandle alive until the reply is received;
dropping it shuts down the actor.
Trait Implementations§
Source§impl Clone for HttpServerState
impl Clone for HttpServerState
Source§fn clone(&self) -> HttpServerState
fn clone(&self) -> HttpServerState
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for HttpServerState
impl !RefUnwindSafe for HttpServerState
impl Send for HttpServerState
impl Sync for HttpServerState
impl Unpin for HttpServerState
impl UnsafeUnpin for HttpServerState
impl !UnwindSafe for HttpServerState
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
self file descriptor. Read moreSource§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>
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 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>
T in a tonic::Request