pub trait ClientPersistence {
    fn open(&mut self, client_id: &str, server_uri: &str) -> Result<()>;
fn close(&mut self) -> Result<()>;
fn put(&mut self, key: &str, buffers: Vec<&[u8]>) -> Result<()>;
fn get(&mut self, key: &str) -> Result<Vec<u8>>;
fn remove(&mut self, key: &str) -> Result<()>;
fn keys(&mut self) -> Result<Vec<String>>;
fn clear(&mut self) -> Result<()>;
fn contains_key(&mut self, key: &str) -> bool; }
Expand description

Trait to implement custom persistence in the client.

Required methods

Open and initialize the persistent store. client_id The unique client identifier. server_uri The address of the server to which the client is connected.

Close the persistence store.

Put data into the persistence store. key The key to the data. buffers The data to place into the store. Note that these can be concatenated into a single, contiguous unit if helpful.

Gets data from the persistence store. key They key for the desired data.

Removes data for the specified key. key The key for the data to remove.

Gets the keys that are currently in the persistence store

Clear the persistence store so that it no longer contains any data.

Determines if the persistence store contains the key. key The key to look for.

Implementors