Runner

Struct Runner 

Source
pub struct Runner<S>
where S: KeyValueStorageWithColumnFamilies<ColumnFamilyIdentifier = ColumnFamilies, Error = StorageError> + Send + Sync + 'static,
{ /* private fields */ }
Expand description

Handle to launch the domain runtime.

The domain runtime is the event loop that processes events and executes operations. Without launching it, actions performed by the DomainClient cannot be executed, and reading state from Views is not guaranteed to be correct until initialization completes.

Implementations§

Source§

impl<S> Runner<S>
where S: KeyValueStorageWithColumnFamilies<ColumnFamilyIdentifier = ColumnFamilies, Error = StorageError> + Send + Sync + 'static,

Source

pub async fn run(self) -> Result<(), Error>

Launch the domain runtime until completion.

This method runs the domain runtime’s event loop and does not return until shutdown or error. Callers typically tokio::spawn this for more control over the task.

Note that initialization happens asynchronously after this method starts; Views may not return correct data until initialization completes. Use run_in_background if you need to wait for initialization.

If the admin-api feature is enabled, also launches the Admin API.

Source

pub async fn run_in_background(&self) -> Result<(), Error>

Launch the domain runtime in the background.

Spawns the domain runtime’s event loop and returns once initialization is complete. This is the recommended approach for tests and when you need to use Views immediately after starting the domain.

Unlike run, callers don’t have control over the spawned task.

If the admin-api feature is enabled, also launches the Admin API.

Trait Implementations§

Source§

impl<S> Debug for Runner<S>
where S: KeyValueStorageWithColumnFamilies<ColumnFamilyIdentifier = ColumnFamilies, Error = StorageError> + Send + Sync + 'static + Debug,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<S> Freeze for Runner<S>

§

impl<S> !RefUnwindSafe for Runner<S>

§

impl<S> Send for Runner<S>

§

impl<S> Sync for Runner<S>

§

impl<S> Unpin for Runner<S>

§

impl<S> !UnwindSafe for Runner<S>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

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

fn in_current_span(self) -> Instrumented<Self>

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

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

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

fn with_current_subscriber(self) -> WithDispatch<Self>

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