Module: ArtirixDataModels::CacheService::CacheStoreHelper
- Defined in:
- lib/artirix_data_models/cache_service.rb
Overview
we use ‘delete_matched` method -> it will work fine with Redis but it seems that it won’t with Memcached
Class Method Summary collapse
- .delete_matched(pattern = nil, add_wildcard: true, add_prefix: true) ⇒ Object
- .final_key(key_value) ⇒ Object
- .final_pattern(pattern, add_wildcard: true, add_prefix: true) ⇒ Object
- .prefix ⇒ Object
Class Method Details
.delete_matched(pattern = nil, add_wildcard: true, add_prefix: true) ⇒ Object
166 167 168 169 170 171 172 |
# File 'lib/artirix_data_models/cache_service.rb', line 166 def self.delete_matched(pattern = nil, add_wildcard: true, add_prefix: true) return false unless ArtirixDataModels.cache.present? p = final_pattern(pattern, add_wildcard: add_wildcard, add_prefix: add_prefix) ArtirixDataModels.cache.delete_matched p end |
.final_key(key_value) ⇒ Object
155 156 157 |
# File 'lib/artirix_data_models/cache_service.rb', line 155 def self.final_key(key_value) "#{prefix}__#{key_value}" end |
.final_pattern(pattern, add_wildcard: true, add_prefix: true) ⇒ Object
159 160 161 162 163 164 |
# File 'lib/artirix_data_models/cache_service.rb', line 159 def self.final_pattern(pattern, add_wildcard: true, add_prefix: true) p = pattern p = p.present? ? "#{p}*" : '' if add_wildcard p = "*#{prefix}*#{p}" if add_prefix p end |
.prefix ⇒ Object
174 175 176 |
# File 'lib/artirix_data_models/cache_service.rb', line 174 def self.prefix SimpleConfig.for(:site).try(:cache_app_prefix) end |