class Togls::RuleTypeRepository
Public Class Methods
new(drivers)
click to toggle source
# File lib/togls/rule_type_repository.rb, line 3 def initialize(drivers) @drivers = drivers end
Public Instance Methods
get_klass(type_id)
click to toggle source
# File lib/togls/rule_type_repository.rb, line 24 def get_klass(type_id) klass_string = fetch_klass_string(type_id.to_s) return Object.const_get(klass_string) if klass_string klass_string end
get_type_id(klass)
click to toggle source
# File lib/togls/rule_type_repository.rb, line 30 def get_type_id(klass) fetch_type_id(klass.to_s) end
include?(type_id)
click to toggle source
# File lib/togls/rule_type_repository.rb, line 14 def include?(type_id) type = get_klass(type_id) type ? true : false end
include_klass?(klass)
click to toggle source
# File lib/togls/rule_type_repository.rb, line 19 def include_klass?(klass) type = get_type_id(klass) type ? true : false end
store(type_id, klass)
click to toggle source
# File lib/togls/rule_type_repository.rb, line 7 def store(type_id, klass) @drivers.each do |driver| driver.store(type_id.to_s, klass.to_s, klass.title, klass.description, klass.target_type.to_s) end end
Private Instance Methods
fetch_klass_string(type_id)
click to toggle source
# File lib/togls/rule_type_repository.rb, line 45 def fetch_klass_string(type_id) reverse_drivers do |driver| driver.get_klass(type_id) end end
fetch_type_id(klass_str)
click to toggle source
# File lib/togls/rule_type_repository.rb, line 51 def fetch_type_id(klass_str) reverse_drivers do |driver| driver.get_type_id(klass_str) end end
reverse_drivers(&block)
click to toggle source
# File lib/togls/rule_type_repository.rb, line 36 def reverse_drivers(&block) val = nil @drivers.reverse.each do |driver| val = block.call(driver) if block_given? break if val end val end