Trait LockBackend

Source
pub trait LockBackend {
    // Required methods
    fn create(&self, path: &Bytes) -> Result<Box<dyn Lock>, Error>;
    fn from_path(&self, path: &Bytes) -> Result<Option<Box<dyn Lock>>, Error>;
    fn from_id(&self, id: &str) -> Result<Option<Box<dyn Lock>>, Error>;
    fn iter<'a>(
        &'a self,
    ) -> Box<dyn Iterator<Item = Result<Box<dyn Lock>, Error>> + 'a>;

    // Provided method
    fn unlock(&self, lock: Box<dyn Lock>) -> Result<(), Error> { ... }
}

Required Methods§

Source

fn create(&self, path: &Bytes) -> Result<Box<dyn Lock>, Error>

Source

fn from_path(&self, path: &Bytes) -> Result<Option<Box<dyn Lock>>, Error>

Source

fn from_id(&self, id: &str) -> Result<Option<Box<dyn Lock>>, Error>

Source

fn iter<'a>( &'a self, ) -> Box<dyn Iterator<Item = Result<Box<dyn Lock>, Error>> + 'a>

Provided Methods§

Source

fn unlock(&self, lock: Box<dyn Lock>) -> Result<(), Error>

Implementors§