class Prop::Middleware

Convenience middleware that conveys the message configured on a Prop handle as well as time left before the current window has passed in a Retry-After header.

Public Class Methods

new(app, options = {}) click to toggle source
# File lib/prop/middleware.rb, line 18
def initialize(app, options = {})
  @app     = app
  @options = options
  @handler = options[:error_handler] || DefaultErrorHandler
end

Public Instance Methods

call(env) click to toggle source
# File lib/prop/middleware.rb, line 24
def call(env)
  begin
    @app.call(env)
  rescue Prop::RateLimited => e
    render_response(env, e)
  end
end

Protected Instance Methods

render_response(env, error) click to toggle source
# File lib/prop/middleware.rb, line 34
def render_response(env, error)
  @handler.call(env, error)
end