Method: Merb::Cache::FileStore#cache_set

Defined in:
lib/merb-cache/cache-store/file.rb

#cache_set(key, data, from_now = nil) ⇒ Object

Store data to the file using the specified key

Parameters

key<Sting>

The key identifying the cache entry

data<String>

The data to be put in cache

from_now<~minutes>

The number of minutes (from now) the cache should persist



92
93
94
95
96
97
98
99
100
# File 'lib/merb-cache/cache-store/file.rb', line 92

def cache_set(key, data, from_now = nil)
  cache_file = @config[:cache_directory] / "#{key}.cache"
  cache_directory = File.dirname(cache_file)
  FileUtils.mkdir_p(cache_directory)
  _expire = from_now ? from_now.minutes.from_now : nil
  cache_write(cache_file, Marshal.dump([data, _expire]))
  Merb.logger.info("cache: set (#{key})")
  true
end