Class: Modware::Stack::Middleware
- Inherits:
-
Object
- Object
- Modware::Stack::Middleware
- Defined in:
- lib/modware/stack.rb
Instance Attribute Summary collapse
-
#_modware_next ⇒ Object
Returns the value of attribute _modware_next.
Instance Method Summary collapse
- #_modware_call(env, base_implementation) ⇒ Object
- #_modware_continue(env, base_implementation) ⇒ Object
-
#initialize(executor, mod) ⇒ Middleware
constructor
A new instance of Middleware.
Constructor Details
#initialize(executor, mod) ⇒ Middleware
66 67 68 69 |
# File 'lib/modware/stack.rb', line 66 def initialize(executor, mod) @executor = executor singleton_class.send :include, mod end |
Instance Attribute Details
#_modware_next ⇒ Object
Returns the value of attribute _modware_next.
64 65 66 |
# File 'lib/modware/stack.rb', line 64 def _modware_next @_modware_next end |
Instance Method Details
#_modware_call(env, base_implementation) ⇒ Object
71 72 73 74 75 76 77 78 79 |
# File 'lib/modware/stack.rb', line 71 def _modware_call(env, base_implementation) if respond_to? :around around(env) { |env| _modware_continue env, base_implementation } else _modware_continue env, base_implementation end end |
#_modware_continue(env, base_implementation) ⇒ Object
81 82 83 84 85 86 87 |
# File 'lib/modware/stack.rb', line 81 def _modware_continue(env, base_implementation) if self._modware_next self._modware_next._modware_call(env, base_implementation) else @executor.call_implementation env, base_implementation end end |