Sha256: f1abc2917f40290f2568cd7e57cb0e02ec8e8e08d3ce833a312516adbad338f3
Contents?: true
Size: 871 Bytes
Versions: 2
Compression:
Stored size: 871 Bytes
Contents
module CanTango class AbilityExecutor < CanTango::Ability attr_reader :rules def initialize candidate, options = {} raise "Candidate must be something!" if !candidate @candidate, @options = [candidate, options] @rules = cached_rules + non_cached_rules @rules.flatten!.compact! end def cached_rules cache_mode? ? cached_ability.send(:rules) : [] end def non_cached_rules no_cache_mode? ? non_cached_ability.send(:rules) : [] end def cached_ability CanTango::CachedAbility.new candidate, options end def non_cached_ability CanTango::Ability.new candidate, options end protected def no_cache_mode? modes.include?(:no_cache) end def cache_mode? modes.include?(:cache) end def modes CanTango.config.ability.modes end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
cantango-0.9.4.3 | lib/cantango/ability_executor.rb |
cantango-0.9.4.2 | lib/cantango/ability_executor.rb |