Module: Strelka::App::Filters
- Extended by:
- Plugin
- Defined in:
- lib/strelka/app/filters.rb
Overview
Request/response filters plugin for Strelka::App.
Defined Under Namespace
Modules: ClassMethods
Instance Attribute Summary
Attributes included from Plugin
Instance Method Summary collapse
-
#apply_request_filters(request) ⇒ Object
Apply :request and :both filters to
request. -
#apply_response_filters(response) ⇒ Object
Apply :both and :response filters to
response. -
#handle_request(request) ⇒ Object
Apply filters to the given
requestbefore yielding back to the App, then apply filters to the response that comes back.
Methods included from Plugin
extended, plugin_name, run_inside, run_outside
Instance Method Details
#apply_request_filters(request) ⇒ Object
Apply :request and :both filters to request.
79 80 81 82 83 84 85 |
# File 'lib/strelka/app/filters.rb', line 79 def apply_request_filters( request ) self.log.debug "Applying request filters:" self.class.request_filters.each do |filter| self.log.debug " filter: %p" % [ filter ] filter.call( request ) end end |
#apply_response_filters(response) ⇒ Object
Apply :both and :response filters to response.
89 90 91 92 93 94 95 |
# File 'lib/strelka/app/filters.rb', line 89 def apply_response_filters( response ) self.log.debug "Applying response filters:" self.class.response_filters.each do |filter| self.log.debug " filter: %p" % [ filter ] filter.call( response ) end end |
#handle_request(request) ⇒ Object
Apply filters to the given request before yielding back to the App, then apply
filters to the response that comes back.
67 68 69 70 71 72 73 74 75 |
# File 'lib/strelka/app/filters.rb', line 67 def handle_request( request ) self.log.debug "[:filters] Wrapping request with request/response filters." self.apply_request_filters( request ) response = super self.apply_response_filters( request.response ) return response end |