Skip to main content

WakeAdapter

Trait WakeAdapter 

Source
pub trait WakeAdapter: Send {
    // Required methods
    fn kind(&self) -> SessionKind;
    fn probe(&self, session: &ProviderSession) -> Result<(), WakeError>;
    fn wake(
        &mut self,
        session: &ProviderSession,
        letter: &WakeLetter<'_>,
    ) -> Result<WakeOutcome, WakeError>;
}
Expand description

Vendor/surface-specific wake. One instance per session.

The caller keeps the per-event_id sent set. Implementations must not spawn a provider, must not answer permission prompts, and must not log letter.body or a credential.

Required Methods§

Source

fn kind(&self) -> SessionKind

Session kind this adapter wakes.

Source

fn probe(&self, session: &ProviderSession) -> Result<(), WakeError>

Cheap readiness check (socket exists, server configured, routine key present). Called before register and on every full drive.

Source

fn wake( &mut self, session: &ProviderSession, letter: &WakeLetter<'_>, ) -> Result<WakeOutcome, WakeError>

Puts one letter in front of the session.

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§