Sha256: bf1117a72e5ff370853f7ee2d56b73a744b94bcffb98d65be98936dac38d18a2

Contents?: true

Size: 610 Bytes

Versions: 6

Compression:

Stored size: 610 Bytes

Contents

gem 'activesupport'
require 'active_support/core_ext'

module CacheAdvance
  class Mapper
    def initialize(cache_set)
      @cache_set = cache_set
    end
    
    def qualifier(name, &proc)
      @cache_set.add_qualifier(name, proc)
    end
    
    def plugin(name)
      if name.is_a?(Symbol)
        plugin = name.to_s.camelcase.constantize.new
      elsif name.is_a?(Class)
        plugin = name.new
      else
        plugin = name
      end
      @cache_set.add_plugin(plugin)
    end
    
    def method_missing(method, options={})
      @cache_set.add_named_cache(method, options)
    end
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
aub-cache_advance-1.1.2 lib/cache_advance/mapper.rb
aub-cache_advance-1.1.3 lib/cache_advance/mapper.rb
cache_advance-2.0.1 lib/cache_advance/mapper.rb
cache_advance-2.0.0 lib/cache_advance/mapper.rb
cache_advance-1.1.5 lib/cache_advance/mapper.rb
cache_advance-1.1.4 lib/cache_advance/mapper.rb