Struct drmem_db_redis::RedisStore
source · pub struct RedisStore { /* private fields */ }
Expand description
Defines a context that uses redis for the back-end storage.
Implementations§
source§impl RedisStore
impl RedisStore
sourcepub async fn new(
cfg: &Config,
name: Option<String>,
pword: Option<String>
) -> Result<Self>
pub async fn new(
cfg: &Config,
name: Option<String>,
pword: Option<String>
) -> Result<Self>
Builds a new backend context which interacts with redis
.
The parameters in cfg
will be used to locate the redis
instance. If name
and pword
are not None
, they will be
used for credentials when connecting to redis
.
Trait Implementations§
source§impl Store for RedisStore
impl Store for RedisStore
source§fn register_read_only_device<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 mut self,
driver_name: &'life1 str,
name: &'life2 Name,
units: &'life3 Option<String>,
max_history: &'life4 Option<usize>
) -> Pin<Box<dyn Future<Output = Result<(ReportReading, Option<Value>)>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Self: 'async_trait,
fn register_read_only_device<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 mut self,
driver_name: &'life1 str,
name: &'life2 Name,
units: &'life3 Option<String>,
max_history: &'life4 Option<usize>
) -> Pin<Box<dyn Future<Output = Result<(ReportReading, Option<Value>)>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Self: 'async_trait,
Registers a device in the redis backend.
source§fn register_read_write_device<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 mut self,
driver_name: &'life1 str,
name: &'life2 Name,
units: &'life3 Option<String>,
max_history: &'life4 Option<usize>
) -> Pin<Box<dyn Future<Output = Result<(ReportReading, RxDeviceSetting, Option<Value>)>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Self: 'async_trait,
fn register_read_write_device<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 mut self,
driver_name: &'life1 str,
name: &'life2 Name,
units: &'life3 Option<String>,
max_history: &'life4 Option<usize>
) -> Pin<Box<dyn Future<Output = Result<(ReportReading, RxDeviceSetting, Option<Value>)>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Self: 'async_trait,
Used by a driver to define a read-write device.
name
specifies the final segment of the device name (the path
portion of the device name is specified in the driver’s
configuration.) On success, the function retrns a 3-tuple. The
first element is a closure which the driver uses to report new
values of the device. The second element is an
mpsc::Receiver<>
handle which the driver monitors for
incoming settings. The last item is the last value reported
for the device. If it’s a new device or the backend doesn’t
have a persistent store, then None
is provided. Read more