Class: Shokkenki::Consumer::Stubber::RestfulMiddleware
- Inherits:
-
Object
- Object
- Shokkenki::Consumer::Stubber::RestfulMiddleware
show all
- Defined in:
- lib/shokkenki/consumer/stubber/restful_middleware.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.delete(&block) ⇒ Object
10
11
12
|
# File 'lib/shokkenki/consumer/stubber/restful_middleware.rb', line 10
def self.delete &block
handlers[:delete] = block
end
|
.get(&block) ⇒ Object
14
15
16
|
# File 'lib/shokkenki/consumer/stubber/restful_middleware.rb', line 14
def self.get &block
handlers[:get] = block
end
|
.handlers ⇒ Object
18
19
20
|
# File 'lib/shokkenki/consumer/stubber/restful_middleware.rb', line 18
def self.handlers
@handlers ||= {}
end
|
.post(&block) ⇒ Object
6
7
8
|
# File 'lib/shokkenki/consumer/stubber/restful_middleware.rb', line 6
def self.post &block
handlers[:post] = block
end
|
Instance Method Details
#allowed_methods ⇒ Object
27
28
29
|
# File 'lib/shokkenki/consumer/stubber/restful_middleware.rb', line 27
def allowed_methods
self.class.handlers.keys.map {|k| k.to_s.upcase }
end
|
#call(env) ⇒ Object
22
23
24
25
|
# File 'lib/shokkenki/consumer/stubber/restful_middleware.rb', line 22
def call env
handler = self.class.handlers[env['REQUEST_METHOD'].downcase.to_sym]
handler ? instance_exec(env, &handler) : [405, {'Allow' => allowed_methods.join(', ')}, []]
end
|