method
write_entry
v5.2.3 -
Show latest stable
- Class:
ActiveSupport::Cache::MemoryStore
write_entry(key, entry, options)private
No documentation available.
# File activesupport/lib/active_support/cache/memory_store.rb, line 131
def write_entry(key, entry, options)
entry.dup_value!
synchronize do
old_entry = @data[key]
return false if @data.key?(key) && options[:unless_exist]
if old_entry
@cache_size -= (old_entry.size - entry.size)
else
@cache_size += cached_size(key, entry)
end
@key_access[key] = Time.now.to_f
@data[key] = entry
prune(@max_size * 0.75, @max_prune_time) if @cache_size > @max_size
true
end
end