pub trait ClientPersistence {
fn open(&mut self, client_id: &str, server_uri: &str) -> MqttResult<()>;
fn close(&mut self) -> MqttResult<()>;
fn put(&mut self, key: &str, buffers: Vec<&[u8]>) -> MqttResult<()>;
fn get(&self, key: &str) -> MqttResult<Vec<u8>>;
fn remove(&mut self, key: &str) -> MqttResult<()>;
fn keys(&self) -> MqttResult<Vec<String>>;
fn clear(&mut self) -> MqttResult<()>;
fn contains_key(&self, key: &str) -> bool;
}
Expand description
Trait to implement custom persistence in the client.
Required Methods
sourcefn open(&mut self, client_id: &str, server_uri: &str) -> MqttResult<()>
fn open(&mut self, client_id: &str, server_uri: &str) -> MqttResult<()>
Open and initialize the persistent store. @param client_id The unique client identifier. @param server_uri The address of the server to which the client is connected.
sourcefn close(&mut self) -> MqttResult<()>
fn close(&mut self) -> MqttResult<()>
Close the persistence store.
sourcefn put(&mut self, key: &str, buffers: Vec<&[u8]>) -> MqttResult<()>
fn put(&mut self, key: &str, buffers: Vec<&[u8]>) -> MqttResult<()>
Put data into the persistence store. @param key The key to the data. @param The data to place into the store.
sourcefn get(&self, key: &str) -> MqttResult<Vec<u8>>
fn get(&self, key: &str) -> MqttResult<Vec<u8>>
Gets data from the persistence store. @param key They key for the desired data.
sourcefn remove(&mut self, key: &str) -> MqttResult<()>
fn remove(&mut self, key: &str) -> MqttResult<()>
Removes data for the specified key. @param key The key for the data to remove.
sourcefn keys(&self) -> MqttResult<Vec<String>>
fn keys(&self) -> MqttResult<Vec<String>>
Gets the keys that are currently in the persistence store
sourcefn clear(&mut self) -> MqttResult<()>
fn clear(&mut self) -> MqttResult<()>
Clear the persistence store so that it no longer contains any data.
sourcefn contains_key(&self, key: &str) -> bool
fn contains_key(&self, key: &str) -> bool
Determines if the persistence store contains the key. @param key The key @return true if the key is found in the store, false otherwise.