Class: DiscordRDA::CacheStore
- Inherits:
-
Object
- Object
- DiscordRDA::CacheStore
- Defined in:
- lib/discord_rda/cache/store.rb
Overview
Cache store interface. Implementations must provide get, set, delete, and clear methods.
Direct Known Subclasses
Instance Method Summary collapse
-
#clear ⇒ void
Clear all cached values.
-
#delete(key) ⇒ void
Delete a value from cache.
-
#exist?(key) ⇒ Boolean
Check if key exists.
-
#get(key) ⇒ Object?
Get a value from cache.
-
#keys(pattern) ⇒ Array<String>
Get keys matching a pattern.
-
#mget(keys) ⇒ Hash
Get multiple values.
-
#set(key, value, ttl: nil) ⇒ void
Set a value in cache.
Instance Method Details
#clear ⇒ void
This method returns an undefined value.
Clear all cached values
40 41 42 |
# File 'lib/discord_rda/cache/store.rb', line 40 def clear raise NotImplementedError end |
#delete(key) ⇒ void
This method returns an undefined value.
Delete a value from cache
27 28 29 |
# File 'lib/discord_rda/cache/store.rb', line 27 def delete(key) raise NotImplementedError end |
#exist?(key) ⇒ Boolean
Check if key exists
34 35 36 |
# File 'lib/discord_rda/cache/store.rb', line 34 def exist?(key) !get(key).nil? end |
#get(key) ⇒ Object?
Get a value from cache
11 12 13 |
# File 'lib/discord_rda/cache/store.rb', line 11 def get(key) raise NotImplementedError end |
#keys(pattern) ⇒ Array<String>
Get keys matching a pattern
54 55 56 |
# File 'lib/discord_rda/cache/store.rb', line 54 def keys(pattern) raise NotImplementedError end |
#mget(keys) ⇒ Hash
Get multiple values
47 48 49 |
# File 'lib/discord_rda/cache/store.rb', line 47 def mget(keys) keys.to_h { |k| [k, get(k)] } end |
#set(key, value, ttl: nil) ⇒ void
This method returns an undefined value.
Set a value in cache
20 21 22 |
# File 'lib/discord_rda/cache/store.rb', line 20 def set(key, value, ttl: nil) raise NotImplementedError end |