method

write_entry

rails 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 209
        def write_entry(key, entry, **options)
          payload = serialize_entry(entry, **options)
          synchronize do
            return false if options[:unless_exist] && exist?(key, namespace: nil)

            old_payload = @data[key]
            if old_payload
              @cache_size -= (old_payload.bytesize - payload.bytesize)
            else
              @cache_size += cached_size(key, payload)
            end
            @data[key] = payload
            prune(@max_size * 0.75, @max_prune_time) if @cache_size > @max_size
            true
          end
        end