Skip to main content

SessionPlugin

Trait SessionPlugin 

Source
pub trait SessionPlugin: Send + Sync {
    // Required methods
    fn id(&self) -> &'static str;
    fn register(&self, reg: &mut PluginRegistrar) -> Result<(), PluginError>;

    // Provided methods
    fn version(&self) -> &'static str { ... }
    fn snapshot(
        &self,
        _writer: &mut dyn SnapshotWriter,
    ) -> Result<PluginSnapshotMeta, PluginError> { ... }
    fn snapshot_revision(&self) -> u64 { ... }
    fn restore(
        &self,
        _meta: &PluginSnapshotMeta,
        _reader: &dyn SnapshotReader,
    ) -> Result<(), PluginError> { ... }
    fn session_ready(
        &self,
        _ctx: SessionReadyContext,
    ) -> Result<(), PluginError> { ... }
}

Required Methods§

Source

fn id(&self) -> &'static str

Source

fn register(&self, reg: &mut PluginRegistrar) -> Result<(), PluginError>

Provided Methods§

Source

fn version(&self) -> &'static str

Source

fn snapshot( &self, _writer: &mut dyn SnapshotWriter, ) -> Result<PluginSnapshotMeta, PluginError>

Source

fn snapshot_revision(&self) -> u64

Source

fn restore( &self, _meta: &PluginSnapshotMeta, _reader: &dyn SnapshotReader, ) -> Result<(), PluginError>

Source

fn session_ready(&self, _ctx: SessionReadyContext) -> Result<(), PluginError>

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§