Class: RailsFlags::Configuration
- Inherits:
-
Object
- Object
- RailsFlags::Configuration
- Defined in:
- lib/rails_flags/configuration.rb
Instance Attribute Summary collapse
-
#adapter ⇒ Object
Returns the value of attribute adapter.
Instance Method Summary collapse
- #all_flags ⇒ Object
- #delete(flag) ⇒ Object
- #disable(flag) ⇒ Object
- #enable(flag) ⇒ Object
- #enabled?(flag) ⇒ Boolean
-
#initialize(adapter: nil) ⇒ Configuration
constructor
A new instance of Configuration.
- #register(name, enabled: false, description: nil) ⇒ Object
- #registered?(flag) ⇒ Boolean
Constructor Details
#initialize(adapter: nil) ⇒ Configuration
Returns a new instance of Configuration.
9 10 11 |
# File 'lib/rails_flags/configuration.rb', line 9 def initialize(adapter: nil) @adapter = adapter || Adapters::MemoryAdapter.new end |
Instance Attribute Details
#adapter ⇒ Object
Returns the value of attribute adapter.
7 8 9 |
# File 'lib/rails_flags/configuration.rb', line 7 def adapter @adapter end |
Instance Method Details
#all_flags ⇒ Object
54 55 56 |
# File 'lib/rails_flags/configuration.rb', line 54 def all_flags @adapter.all end |
#delete(flag) ⇒ Object
45 46 47 48 |
# File 'lib/rails_flags/configuration.rb', line 45 def delete(flag) validate_flag_exists!(flag) @adapter.delete(flag.to_sym) end |
#disable(flag) ⇒ Object
38 39 40 41 42 43 |
# File 'lib/rails_flags/configuration.rb', line 38 def disable(flag) validate_flag_exists!(flag) data = @adapter.read(flag.to_sym).dup data[:enabled] = false @adapter.write(flag.to_sym, data) end |
#enable(flag) ⇒ Object
31 32 33 34 35 36 |
# File 'lib/rails_flags/configuration.rb', line 31 def enable(flag) validate_flag_exists!(flag) data = @adapter.read(flag.to_sym).dup data[:enabled] = true @adapter.write(flag.to_sym, data) end |
#enabled?(flag) ⇒ Boolean
25 26 27 28 29 |
# File 'lib/rails_flags/configuration.rb', line 25 def enabled?(flag) validate_flag_exists!(flag) data = @adapter.read(flag.to_sym) data ? data[:enabled] == true : false end |
#register(name, enabled: false, description: nil) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/rails_flags/configuration.rb', line 13 def register(name, enabled: false, description: nil) validate_flag_name!(name) data = { enabled: enabled, description: description, created_at: Time.now } @adapter.write(name.to_sym, data) data end |
#registered?(flag) ⇒ Boolean
50 51 52 |
# File 'lib/rails_flags/configuration.rb', line 50 def registered?(flag) @adapter.read(flag.to_sym) ? true : false end |