From a9630ecdc459068ca51ee2d7be3837d609840842 Mon Sep 17 00:00:00 2001 From: rtkay123 Date: Mon, 9 Feb 2026 17:54:46 +0200 Subject: feat: connect to database --- lib/shared-svc/src/cache/key.rs | 27 +++++++++++++++++++++++++++ lib/shared-svc/src/cache/mod.rs | 3 +++ 2 files changed, 30 insertions(+) create mode 100644 lib/shared-svc/src/cache/key.rs (limited to 'lib/shared-svc/src/cache') diff --git a/lib/shared-svc/src/cache/key.rs b/lib/shared-svc/src/cache/key.rs new file mode 100644 index 0000000..756b7d0 --- /dev/null +++ b/lib/shared-svc/src/cache/key.rs @@ -0,0 +1,27 @@ +use redis::{ToRedisArgs, ToSingleRedisArg}; + +#[derive(Clone, Copy)] +pub enum CacheKey<'a> { + Session(&'a str), +} + +impl CacheKey<'_> { + pub fn key(&self) -> &str { + match self { + CacheKey::Session(_) => "session:*", + } + } +} + +impl ToRedisArgs for CacheKey<'_> { + fn write_redis_args(&self, out: &mut W) + where + W: ?Sized + redis::RedisWrite, + { + out.write_arg_fmt(match self { + CacheKey::Session(id) => format!("session:{id}"), + }) + } +} + +impl ToSingleRedisArg for CacheKey<'_> {} diff --git a/lib/shared-svc/src/cache/mod.rs b/lib/shared-svc/src/cache/mod.rs index cd15463..90cab04 100644 --- a/lib/shared-svc/src/cache/mod.rs +++ b/lib/shared-svc/src/cache/mod.rs @@ -1,6 +1,9 @@ mod cluster; mod config; +mod key; mod sentinel; +pub use key::*; +pub use redis; pub use sentinel::SentinelConfig; pub use config::*; -- cgit v1.2.3