class ExcessFlow::Configuration
ExcessFlow::Configuration
¶ ↑
Holds configuration for rate limiter with writeable attributes allowing dynamic change of configuration during runtime
Attributes
connection_pool[RW]
connection_timeout[RW]
redis_url[RW]
sentinels[RW]
Public Class Methods
new()
click to toggle source
# File lib/excess_flow/configuration.rb, line 30 def initialize @connection_pool = extract_connection_pool @connection_timeout = extract_connection_timeout @redis_url = extract_redis_url @sentinels = process_sentinels end
Private Instance Methods
extract_connection_pool()
click to toggle source
# File lib/excess_flow/configuration.rb, line 39 def extract_connection_pool ENV.fetch( 'EXCESS_FLOW_CONNECTION_POOL', ExcessFlow::DEFAULT_CONNECTION_POOL ).to_i end
extract_connection_timeout()
click to toggle source
# File lib/excess_flow/configuration.rb, line 46 def extract_connection_timeout ENV.fetch( 'EXCESS_FLOW_CONNECTION_TIMEOUT', ExcessFlow::DEFAULT_CONNECTION_TIMEOUT ).to_i end
extract_redis_url()
click to toggle source
# File lib/excess_flow/configuration.rb, line 53 def extract_redis_url ENV.fetch( 'EXCESS_FLOW_REDIS_URL', ExcessFlow::DEFAULT_REDIS_URL ) end
process_sentinels()
click to toggle source
# File lib/excess_flow/configuration.rb, line 60 def process_sentinels ENV.fetch('EXCESS_FLOW_REDIS_SENTINELS', '').split(',').map do |sentinel| host, port = sentinel.split(':') { host: host, port: port.to_i } end end