Module: Kaffe::Error
- Included in:
- Base
- Defined in:
- lib/kaffe/error.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.included(base) ⇒ Object
55 56 57 |
# File 'lib/kaffe/error.rb', line 55 def self.included(base) base.extend(ClassMethods) end |
Instance Method Details
#dispatch_error! ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/kaffe/error.rb', line 26 def dispatch_error! e = env['kaffe.error'] || [500, "Unknown Server Error"] code = e.first block=nil self.class.errors.each do |name, id| case name when Fixnum block = method(id) if name == code break when Range block = method(id) if name.include? code break end end if(block) @response.status = code throw:success, if block.arity != 0 block.call(*e) else block.call end end throw :error, e end |
#error! ⇒ Object
51 52 53 |
# File 'lib/kaffe/error.rb', line 51 def error! dispatch_error! end |
#register_error(code, message) ⇒ Object
21 22 23 24 |
# File 'lib/kaffe/error.rb', line 21 def register_error(code, ) env['kaffe.error'] = [code, ] throw :error, env['kaffe.error'] end |