class Floodgate::Control
Attributes
app[RW]
config[RW]
Public Class Methods
new(app, app_id, api_token)
click to toggle source
# File lib/floodgate/control.rb, line 5 def initialize(app, app_id, api_token) Config.app_id = app_id Config.api_token = api_token @app = app @config = Config.new end
Public Instance Methods
call(env)
click to toggle source
# File lib/floodgate/control.rb, line 13 def call(env) return app.call(env) unless filter_traffic?(env) if redirect? [307, { 'Location' => redirect_url }, []] else [503, {}, ['Application Unavailable']] end end
filter_traffic?(env)
click to toggle source
# File lib/floodgate/control.rb, line 23 def filter_traffic?(env) config.filter_traffic?(env) end
redirect?()
click to toggle source
# File lib/floodgate/control.rb, line 27 def redirect? config.redirect? end
redirect_url()
click to toggle source
# File lib/floodgate/control.rb, line 31 def redirect_url config.redirect_url end