Class: CustomCache::SessionCache
- Includes:
- Singleton
- Defined in:
- lib/custom_cache/session_cache.rb
Instance Attribute Summary collapse
-
#session_id ⇒ Object
Returns the value of attribute session_id.
Class Method Summary collapse
Instance Method Summary collapse
Instance Attribute Details
#session_id ⇒ Object
Returns the value of attribute session_id.
7 8 9 |
# File 'lib/custom_cache/session_cache.rb', line 7 def session_id @session_id end |
Class Method Details
.clear! ⇒ Object
36 37 38 |
# File 'lib/custom_cache/session_cache.rb', line 36 def self.clear! self.instance.clear end |
.create(session_id) ⇒ Object
9 10 11 |
# File 'lib/custom_cache/session_cache.rb', line 9 def self.create(session_id) self.instance.session_id = session_id end |
Instance Method Details
#cache_key ⇒ Object
13 14 15 |
# File 'lib/custom_cache/session_cache.rb', line 13 def cache_key "_session_#{session_id}_cache" if session_id.present? end |
#clear ⇒ Object
32 33 34 |
# File 'lib/custom_cache/session_cache.rb', line 32 def clear Rails.cache.delete(cache_key) if cache_key.present? end |
#read(key) ⇒ Object
17 18 19 20 21 22 |
# File 'lib/custom_cache/session_cache.rb', line 17 def read(key) if cache_key.present? content = Rails.cache.read(cache_key) content[key] if content.present? end end |
#write(key, content) ⇒ Object
24 25 26 27 28 29 30 |
# File 'lib/custom_cache/session_cache.rb', line 24 def write(key, content) if cache_key.present? cached_content = Rails.cache.read(cache_key) || {} cached_content[key] = content Rails.cache.write(cache_key, cached_content) end end |