Files

Padrino::Cache

This component enables caching of an application’s response contents on both page- and fragment-levels. Output cached in this manner is persisted, until it expires or is actively expired, in a configurable store of your choosing. Several common caching stores are supported out of the box.

Public Class Methods

included(app) click to toggle source
Alias for: registered
padrino_route_added(route, verb, path, args, options, block) click to toggle source

@private

# File lib/padrino-cache.rb, line 100
def padrino_route_added(route, verb, path, args, options, block) # @private
  Padrino::Cache::Helpers::Page.padrino_route_added(route, verb, path, args, options, block)
end
registered(app) click to toggle source

Register these helpers:

Padrino::Cache::Helpers::CacheStore
Padrino::Cache::Helpers::Fragment
Padrino::Cache::Helpers::Page

for Padrino::Application.

By default we use FileStore as showed below:

set :cache, Padrino::Cache::Store::File.new(File.join(app.root, 'tmp', 'cache'))

However, you can also change the file store easiily in your app.rb:

set :cache, Padrino::Cache::Store::Memcache.new(::Memcached.new('127.0.0.1:11211', :exception_retry_limit => 1))
set :cache, Padrino::Cache::Store::Memcache.new(::Dalli::Client.new('127.0.0.1:11211', :exception_retry_limit => 1))
set :cache, Padrino::Cache::Store::Redis.new(::Redis.new(:host => '127.0.0.1', :port => 6379, :db => 0))
set :cache, Padrino::Cache::Store::Mongo.new(::Mongo::Connection.new('127.0.0.1', 27017).db('padrino'), :username => 'username', :password => 'password', :size => 64, :max => 100, :collection => 'cache')
set :cache, Padrino::Cache::Store::Memory.new(50)
set :cache, Padrino::Cache::Store::File.new(Padrino.root('tmp', app_name.to_s, 'cache')) # default choice

You can manage your cache from anywhere in your app:

MyApp.cache.set('val', 'test')
MyApp.cache.get('val') # => 'test'
MyApp.cache.delete('val')
MyApp.cache.flush

@api public

# File lib/padrino-cache.rb, line 90
def registered(app)
  app.helpers Padrino::Cache::Helpers::CacheStore
  app.helpers Padrino::Cache::Helpers::Fragment
  app.helpers Padrino::Cache::Helpers::Page
  app.set :cache, Padrino::Cache::Store::File.new(Padrino.root('tmp', app.app_name.to_s ,'cache'))
  app.disable :caching
end
Also aliased as: included

[Validate]

Generated with the Darkfish Rdoc Generator 2.