Module: FeatureFlagger::Model
- Defined in:
- lib/feature_flagger/model.rb
Overview
Model provides convinient methods for Rails Models class Account
include FeatureFlagger::Model
end
Example: Account.first.rollout?([:email_marketing, :new_awesome_feature]) #=> true
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #release(*feature_key) ⇒ Object
- #released?(*feature_key) ⇒ Boolean
- #releases ⇒ Object
- #unrelease(*feature_key) ⇒ Object
Class Method Details
.included(base) ⇒ Object
13 14 15 |
# File 'lib/feature_flagger/model.rb', line 13 def self.included(base) base.extend ClassMethods end |
Instance Method Details
#release(*feature_key) ⇒ Object
21 22 23 |
# File 'lib/feature_flagger/model.rb', line 21 def release(*feature_key) self.class.release_id(feature_flagger_identifier, *feature_key) end |
#released?(*feature_key) ⇒ Boolean
17 18 19 |
# File 'lib/feature_flagger/model.rb', line 17 def released?(*feature_key) self.class.released_id?(feature_flagger_identifier, feature_key) end |
#releases ⇒ Object
25 26 27 |
# File 'lib/feature_flagger/model.rb', line 25 def releases self.class.release_keys(feature_flagger_identifier) end |
#unrelease(*feature_key) ⇒ Object
29 30 31 32 |
# File 'lib/feature_flagger/model.rb', line 29 def unrelease(*feature_key) feature = Feature.new(feature_key, feature_flagger_name) FeatureFlagger.control.unrelease(feature.key, feature_flagger_name, id) end |