Module: RailsFeatureFlip

Defined in:
lib/rails_feature_flip.rb,
lib/rails_feature_flip/helper.rb,
lib/rails_feature_flip/railtie.rb,
lib/rails_feature_flip/version.rb,
lib/rails_feature_flip/registry.rb,
lib/rails_feature_flip/test_helper.rb,
lib/rails_feature_flip/controller_methods.rb,
lib/generators/rails_feature_flip/feature/feature_generator.rb,
lib/generators/rails_feature_flip/install/install_generator.rb

Defined Under Namespace

Modules: ControllerMethods, Generators, Helper, Registry, TestHelper Classes: Error, Railtie

Constant Summary collapse

VERSION =
'1.0.0'

Class Method Summary collapse

Class Method Details

.disable(name) ⇒ Object

Disables a feature at runtime (in-memory, resets on restart).

Parameters:

  • name (Symbol, String) —

    the feature name



20
21
22
# File 'lib/rails_feature_flip.rb', line 20

def self.disable(name)
  Registry.find(name).enabled = false
end

.enable(name) ⇒ Object

Enables a feature at runtime (in-memory, resets on restart).

Parameters:

  • name (Symbol, String) —

    the feature name



13
14
15
# File 'lib/rails_feature_flip.rb', line 13

def self.enable(name)
  Registry.find(name).enabled = true
end

.toggle(name) ⇒ Boolean

Toggles a feature at runtime (in-memory, resets on restart).

Parameters:

  • name (Symbol, String) —

    the feature name

Returns:

  • (Boolean) —

    the new enabled state



28
29
30
31
# File 'lib/rails_feature_flip.rb', line 28

def self.toggle(name)
  feature = Registry.find(name)
  feature.enabled = !feature.enabled?
end