Class: Prefab::FeatureFlagClient
- Inherits:
-
Object
- Object
- Prefab::FeatureFlagClient
- Defined in:
- lib/prefab/feature_flag_client.rb
Constant Summary collapse
- MAX_32_FLOAT =
4294967294.0
Instance Method Summary collapse
- #feature_is_on?(feature_name) ⇒ Boolean
- #feature_is_on_for?(feature_name, lookup_key, attributes: []) ⇒ Boolean
-
#initialize(base_client) ⇒ FeatureFlagClient
constructor
A new instance of FeatureFlagClient.
- #upsert(feature_name, feature_obj) ⇒ Object
Constructor Details
#initialize(base_client) ⇒ FeatureFlagClient
Returns a new instance of FeatureFlagClient.
5 6 7 |
# File 'lib/prefab/feature_flag_client.rb', line 5 def initialize(base_client) @base_client = base_client end |
Instance Method Details
#feature_is_on?(feature_name) ⇒ Boolean
13 14 15 |
# File 'lib/prefab/feature_flag_client.rb', line 13 def feature_is_on?(feature_name) feature_is_on_for?(feature_name, nil) end |
#feature_is_on_for?(feature_name, lookup_key, attributes: []) ⇒ Boolean
17 18 19 20 21 22 |
# File 'lib/prefab/feature_flag_client.rb', line 17 def feature_is_on_for?(feature_name, lookup_key, attributes: []) @base_client.stats.increment("prefab.featureflag.on", tags: ["feature:#{feature_name}"]) feature_obj = @base_client.config_client.get(feature_name) return is_on?(feature_name, lookup_key, attributes, feature_obj) end |
#upsert(feature_name, feature_obj) ⇒ Object
9 10 11 |
# File 'lib/prefab/feature_flag_client.rb', line 9 def upsert(feature_name, feature_obj) @base_client.config_client.upsert(feature_name, Prefab::ConfigValue.new(feature_flag: feature_obj)) end |