class Flipper::Configuration
Public Class Methods
new(options = {})
click to toggle source
# File lib/flipper/configuration.rb, line 3 def initialize(options = {}) @default = -> { Flipper.new(adapter) } @adapter = -> { Flipper::Adapters::Memory.new } end
Public Instance Methods
adapter(&block)
click to toggle source
The default adapter to use.
Pass a block to assign the adapter, and invoke without a block to return the configured adapter instance.
Flipper.configure do |config| config.adapter # => instance of default Memory adapter # Configure it to use the ActiveRecord adapter config.adapter do require "flipper/adapters/active_record" Flipper::Adapters::ActiveRecord.new end config.adapter # => instance of ActiveRecord adapter end
# File lib/flipper/configuration.rb, line 25 def adapter(&block) if block_given? @adapter = block else @adapter.call end end
default(&block)
click to toggle source
Controls the default instance for flipper. When used with a block it assigns a new default block to use to generate an instance. When used without a block, it performs a block invocation and returns the result.
configuration = Flipper::Configuration.new configuration.default # => Flipper::DSL instance using Memory adapter # sets the default block to generate a new instance using ActiveRecord adapter configuration.default do require "flipper/adapters/active_record" Flipper.new(Flipper::Adapters::ActiveRecord.new) end configuration.default # => Flipper::DSL instance using ActiveRecord adapter
Returns result of default block invocation if called without block. If called with block, assigns the default block.
# File lib/flipper/configuration.rb, line 50 def default(&block) if block_given? @default = block else @default.call end end