#[non_exhaustive]pub struct ServerConfiguration<B: Backend = NoBackend> {
pub backend: B,
pub server_name: String,
pub client_simultaneous_request_limit: usize,
pub request_workers: usize,
pub storage: StorageConfiguration,
pub default_permissions: DefaultPermissions,
pub acme: AcmeConfiguration,
/* private fields */
}
Expand description
Configuration options for Server
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.backend: B
The Backend
for the server.
server_name: String
The DNS name of the server.
client_simultaneous_request_limit: usize
Number of sumultaneous requests a single client can have in flight at a
time. Default value is 16. It is important to have this number be tuned
relative to request_workers
such that one client cannot overwhelm the
entire queue.
request_workers: usize
Number of simultaneous requests to be processed. Default value is 16.
storage: StorageConfiguration
Configuration options for individual databases.
default_permissions: DefaultPermissions
The permissions granted to all connections to this server.
acme: AcmeConfiguration
The ACME settings for automatic TLS certificate management.
Implementations§
Source§impl<B: Backend> ServerConfiguration<B>
impl<B: Backend> ServerConfiguration<B>
Sourcepub fn default_for(backend: B) -> Self
pub fn default_for(backend: B) -> Self
Returns a default configuration for the given backend.
Sourcepub fn new_with_backend<P: AsRef<Path>>(path: P, backend: B) -> Self
pub fn new_with_backend<P: AsRef<Path>>(path: P, backend: B) -> Self
Returns a default configuration for the given backend and path.
Sourcepub fn server_name(self, server_name: impl Into<String>) -> Self
pub fn server_name(self, server_name: impl Into<String>) -> Self
Sets Self::server_name
to server_name
and returns self.
Sourcepub const fn client_simultaneous_request_limit(
self,
request_limit: usize,
) -> Self
pub const fn client_simultaneous_request_limit( self, request_limit: usize, ) -> Self
Sets Self::client_simultaneous_request_limit
to request_limit
and returns self.
Sourcepub const fn request_workers(self, workers: usize) -> Self
pub const fn request_workers(self, workers: usize) -> Self
Sets Self::request_workers
to workers
and returns self.
Sourcepub fn default_permissions<P: Into<DefaultPermissions>>(
self,
default_permissions: P,
) -> Self
pub fn default_permissions<P: Into<DefaultPermissions>>( self, default_permissions: P, ) -> Self
Sets Self::default_permissions
to default_permissions
and returns self.
Sourcepub fn acme_contact_email(self, contact_email: impl Into<String>) -> Self
pub fn acme_contact_email(self, contact_email: impl Into<String>) -> Self
Sets AcmeConfiguration::contact_email
to contact_email
and returns self.
Sourcepub fn acme_directory(self, directory: impl Into<String>) -> Self
pub fn acme_directory(self, directory: impl Into<String>) -> Self
Sets AcmeConfiguration::directory
to directory
and returns self.
Trait Implementations§
Source§impl<B: Backend> Builder for ServerConfiguration<B>
impl<B: Backend> Builder for ServerConfiguration<B>
Source§fn memory_only(self) -> Self
fn memory_only(self) -> Self
StorageConfiguration::memory_only
to true and returns self.Source§fn path<P: AsRef<Path>>(self, path: P) -> Self
fn path<P: AsRef<Path>>(self, path: P) -> Self
StorageConfiguration::path
to path
and returns self.Source§fn unique_id(self, unique_id: u64) -> Self
fn unique_id(self, unique_id: u64) -> Self
StorageConfiguration::unique_id
to unique_id
and returns self.Source§fn vault_key_storage<VaultKeyStorage: AnyVaultKeyStorage>(
self,
key_storage: VaultKeyStorage,
) -> Self
fn vault_key_storage<VaultKeyStorage: AnyVaultKeyStorage>( self, key_storage: VaultKeyStorage, ) -> Self
StorageConfiguration::vault_key_storage
to key_storage
and returns self.Source§fn default_encryption_key(self, key: KeyId) -> Self
fn default_encryption_key(self, key: KeyId) -> Self
StorageConfiguration::default_encryption_key
to path
and returns self.Source§fn tasks_worker_count(self, worker_count: usize) -> Self
fn tasks_worker_count(self, worker_count: usize) -> Self
Tasks::worker_count
to worker_count
and returns self.Source§fn tasks_parallelization(self, parallelization: usize) -> Self
fn tasks_parallelization(self, parallelization: usize) -> Self
Tasks::parallelization
to parallelization
and returns self.Source§fn check_view_integrity_on_open(self, check: bool) -> Self
fn check_view_integrity_on_open(self, check: bool) -> Self
Views::check_integrity_on_open
to check
and returns self.Source§fn default_compression(self, compression: Compression) -> Self
fn default_compression(self, compression: Compression) -> Self
StorageConfiguration::default_compression
to path
and returns self.Source§fn key_value_persistence(self, persistence: KeyValuePersistence) -> Self
fn key_value_persistence(self, persistence: KeyValuePersistence) -> Self
StorageConfiguration::key_value_persistence
to persistence
and returns self.Source§fn authenticated_permissions<P: Into<Permissions>>(
self,
authenticated_permissions: P,
) -> Self
fn authenticated_permissions<P: Into<Permissions>>( self, authenticated_permissions: P, ) -> Self
Self::authenticated_permissions
to authenticated_permissions
and returns self.Source§fn argon(self, argon: ArgonConfiguration) -> Self
fn argon(self, argon: ArgonConfiguration) -> Self
StorageConfiguration::argon
to argon
and returns self.Source§impl<B: Clone + Backend> Clone for ServerConfiguration<B>
impl<B: Clone + Backend> Clone for ServerConfiguration<B>
Source§fn clone(&self) -> ServerConfiguration<B>
fn clone(&self) -> ServerConfiguration<B>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl<B> Freeze for ServerConfiguration<B>where
B: Freeze,
impl<B = NoBackend> !RefUnwindSafe for ServerConfiguration<B>
impl<B> Send for ServerConfiguration<B>
impl<B> Sync for ServerConfiguration<B>
impl<B> Unpin for ServerConfiguration<B>where
B: Unpin,
impl<B = NoBackend> !UnwindSafe for ServerConfiguration<B>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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