Module: BusinessRules::InstanceMethods

Defined in:
lib/business_rules.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#business_rules_errors(reload = false) ⇒ Object



47
48
49
50
# File 'lib/business_rules.rb', line 47

def business_rules_errors(reload = false)
  @business_rules_errors = nil if reload
  @business_rules_errors ||= {}
end

Instance Method Details

#business_rule(name, message = 'is invalid.', &block) ⇒ Object



33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/business_rules.rb', line 33

def business_rule(name, message = 'is invalid.', &block)
  begin
    returning yield do |value|
      unless value
        self.business_rules_errors[name] ||= []
        self.business_rules_errors[name] << message
      end
    end
  rescue Exception => e
    self.business_rules_errors[name] ||= []
    self.business_rules_errors[name] << message
  end
end