Class: Rack::TrafficSignal::Config
- Inherits:
-
Object
- Object
- Rack::TrafficSignal::Config
- Defined in:
- lib/rack/traffic_signal/config.rb
Instance Attribute Summary collapse
-
#default_body ⇒ Object
Returns the value of attribute default_body.
-
#default_content_type ⇒ Object
Returns the value of attribute default_content_type.
-
#default_status ⇒ Object
Returns the value of attribute default_status.
-
#internal_ips ⇒ Object
Returns the value of attribute internal_ips.
-
#maintenance_group ⇒ Object
Returns the value of attribute maintenance_group.
-
#secret_word ⇒ Object
Returns the value of attribute secret_word.
-
#skip_paths ⇒ Object
Returns the value of attribute skip_paths.
-
#skip_proc ⇒ Object
Returns the value of attribute skip_proc.
-
#skip_with_warning_proc ⇒ Object
Returns the value of attribute skip_with_warning_proc.
Instance Method Summary collapse
-
#initialize ⇒ Config
constructor
A new instance of Config.
- #maintenance_status ⇒ Object
- #maintenance_status_by(&block) ⇒ Object
- #skip_by(&block) ⇒ Object
- #skip_with_warning_by(&block) ⇒ Object
Constructor Details
#initialize ⇒ Config
Returns a new instance of Config.
17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/rack/traffic_signal/config.rb', line 17 def initialize @internal_ips = [] @maintenance_group = { } @default_status = 503 @default_content_type = 'application/json' @default_body = '' @secret_word = '' @skip_paths = [/^\/assets/] @maintenance_status_proc = ->{ [] } @skip_proc = ->(env){ false } @skip_with_warning_proc = ->(env){ false } end |
Instance Attribute Details
#default_body ⇒ Object
Returns the value of attribute default_body.
8 9 10 |
# File 'lib/rack/traffic_signal/config.rb', line 8 def default_body @default_body end |
#default_content_type ⇒ Object
Returns the value of attribute default_content_type.
8 9 10 |
# File 'lib/rack/traffic_signal/config.rb', line 8 def default_content_type @default_content_type end |
#default_status ⇒ Object
Returns the value of attribute default_status.
8 9 10 |
# File 'lib/rack/traffic_signal/config.rb', line 8 def default_status @default_status end |
#internal_ips ⇒ Object
Returns the value of attribute internal_ips.
8 9 10 |
# File 'lib/rack/traffic_signal/config.rb', line 8 def internal_ips @internal_ips end |
#maintenance_group ⇒ Object
Returns the value of attribute maintenance_group.
7 8 9 |
# File 'lib/rack/traffic_signal/config.rb', line 7 def maintenance_group @maintenance_group end |
#secret_word ⇒ Object
Returns the value of attribute secret_word.
8 9 10 |
# File 'lib/rack/traffic_signal/config.rb', line 8 def secret_word @secret_word end |
#skip_paths ⇒ Object
Returns the value of attribute skip_paths.
8 9 10 |
# File 'lib/rack/traffic_signal/config.rb', line 8 def skip_paths @skip_paths end |
#skip_proc ⇒ Object
Returns the value of attribute skip_proc.
8 9 10 |
# File 'lib/rack/traffic_signal/config.rb', line 8 def skip_proc @skip_proc end |
#skip_with_warning_proc ⇒ Object
Returns the value of attribute skip_with_warning_proc.
8 9 10 |
# File 'lib/rack/traffic_signal/config.rb', line 8 def skip_with_warning_proc @skip_with_warning_proc end |
Instance Method Details
#maintenance_status ⇒ Object
39 40 41 42 43 44 45 46 |
# File 'lib/rack/traffic_signal/config.rb', line 39 def maintenance_status @maintenance_status_proc.call.tap do |status| raise Rack::TrafficSignal::Exceptions::InvalidMaintenanceStatus unless status.is_a? Array raise Rack::TrafficSignal::Exceptions::InvalidMaintenanceStatus unless status.all? do |state| state.is_a?(Symbol) && (state == :all || state.to_s =~ /\A[A-Za-z0-9]+_[A-Za-z0-9]+\z/) end end end |
#maintenance_status_by(&block) ⇒ Object
35 36 37 |
# File 'lib/rack/traffic_signal/config.rb', line 35 def maintenance_status_by(&block) @maintenance_status_proc = block end |
#skip_by(&block) ⇒ Object
48 49 50 |
# File 'lib/rack/traffic_signal/config.rb', line 48 def skip_by(&block) @skip_proc = block end |
#skip_with_warning_by(&block) ⇒ Object
52 53 54 |
# File 'lib/rack/traffic_signal/config.rb', line 52 def skip_with_warning_by(&block) @skip_with_warning_proc = block end |