Class: Isono::Rack::ObjectMethod

Inherits:
Object
  • Object
show all
Includes:
Logger
Defined in:
lib/isono/rack/object_method.rb

Instance Method Summary collapse

Methods included from Logger

included, initialize

Constructor Details

#initialize(obj) ⇒ ObjectMethod

Returns a new instance of ObjectMethod.



8
9
10
# File 'lib/isono/rack/object_method.rb', line 8

def initialize(obj)
  @obj = obj
end

Instance Method Details

#call(req, res) ⇒ Object

Raises:



12
13
14
15
16
# File 'lib/isono/rack/object_method.rb', line 12

def call(req, res)
  m = @obj.method(req.command)
  raise UnknownMethodError, "#{req.command}" if m.nil?
  res.response(m.arity.abs > 0 ? m.call(*req.args) : m.call)
end