pub struct CustomServer<B: Backend = NoBackend> { /* private fields */ }
Expand description

A BonsaiDb server.

Implementations

Listens for HTTP traffic on port. This port will also receive WebSocket connections if feature websockets is enabled.

Listens for HTTPS traffic on port. This port will also receive WebSocket connections if feature websockets is enabled. If feature acme is enabled, this connection will automatically manage the server’s private key and certificate, which is also used for the QUIC-based protocol.

Listens for websocket connections on addr.

Handles an established tokio-tungstenite WebSocket stream.

Opens a server using directory for storage.

Returns the path to the public pinned certificate, if this server has one. Note: this function will always succeed, but the file may not exist.

Returns the primary domain configured for this server.

Returns the administration database.

Installs an X.509 certificate used for general purpose connections.

Installs a certificate chain and private key used for TLS connections.

Installs a certificate chain and private key used for TLS connections.

Returns the current certificate chain.

Listens for incoming client connections. Does not return until the server shuts down.

Returns all of the currently connected clients.

Sends a custom API response to all connected clients.

Shuts the server down. If a timeout is provided, the server will stop accepting new connections and attempt to respond to any outstanding requests already being processed. After the timeout has elapsed or if no timeout was provided, the server is forcefully shut down.

Listens for signals from the operating system that the server should shut down and attempts to gracefully shut down.

Manually authenticates client as user. user can be the user’s id (u64) or the username (String/str). Returns the permissions that the user now has.

Methods from Deref<Target = Storage>

Stores a copy of all data in this instance to location.

Stores a copy of all data in this instance to location.

Returns the path of the database storage.

Returns the unique id of the server.

This value is set from the StorageConfiguration or randomly generated when creating a server. It shouldn’t be changed after a server is in use, as doing can cause issues. For example, the vault that manages encrypted storage uses the server ID to store the vault key. If the server ID changes, the vault key storage will need to be updated with the new server ID.

Registers a schema for use within the server.

Returns the administration database.

Trait Implementations

The error type returned from the functions on this trait.

Returns the previously written data for contacts, if any. This function should return None instead of erroring if data was not previously written for contacts. Read more

Writes data for contacts. The data being written is unique for the combined list of contacts. Read more

Writes a certificate retrieved from Acme. The parameters are: Read more

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

The resulting type after dereferencing.

Dereferences the value.

Choose a certificate chain and matching key given simplified ClientHello information. Read more

The type that represents a database for this implementation.

Creates a database named name using the SchemaName schema. Read more

Returns a reference to database name with schema DB.

Deletes a database named name. Read more

Lists the databases in this storage.

Lists the SchemaNames registered with this storage.

Creates a user.

Sets a user’s password.

Authenticates as a user with a authentication method.

Adds a user to a permission group.

Removes a user from a permission group.

Adds a user to a permission group.

Removes a user from a permission group.

Creates a database named name with the Schema provided. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more