Skip to main content

SessionActivationSpawner

Trait SessionActivationSpawner 

Source
pub trait SessionActivationSpawner: Send + Sync {
    // Required method
    fn reserve_activation<'life0, 'life1, 'async_trait>(
        &'life0 self,
        target_session_id: &'life1 str,
        inbox_generation: u64,
    ) -> Pin<Box<dyn Future<Output = Result<SessionActivationReserveOutcome, SessionActivationError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
}
Expand description

Adapter to the owning runtime’s existing runner reservation and spawn path.

Implementations must reserve through the same per-session runner registry as user/resume execution. They must not start a task before returning SessionActivationReserveOutcome::Reserved.

Required Methods§

Source

fn reserve_activation<'life0, 'life1, 'async_trait>( &'life0 self, target_session_id: &'life1 str, inbox_generation: u64, ) -> Pin<Box<dyn Future<Output = Result<SessionActivationReserveOutcome, SessionActivationError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl SessionActivationSpawner for ChildCompletionCoordinator

Real SessionInbox activation adapter. It reserves through the exact same runner registry as every existing resume path, but deliberately bypasses has_pending_user_message: the typed envelope is still in the durable inbox and will be admitted by the loop’s first safe turn boundary.