Class: Prefab::FeatureFlagClient

Inherits:
Object
  • Object
show all
Defined in:
lib/prefab/feature_flag_client.rb

Instance Method Summary collapse

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

Returns:

  • (Boolean)


9
10
11
# File 'lib/prefab/feature_flag_client.rb', line 9

def feature_is_on?(feature_name)
  feature_is_on_for?(feature_name, {})
end

#feature_is_on_for?(feature_name, properties) ⇒ Boolean

Returns:

  • (Boolean)


13
14
15
16
17
# File 'lib/prefab/feature_flag_client.rb', line 13

def feature_is_on_for?(feature_name, properties)
  variant = @base_client.config_client.get(feature_name, false, properties)

  is_on?(variant)
end

#get(feature_name, properties, default: false) ⇒ Object



19
20
21
22
23
# File 'lib/prefab/feature_flag_client.rb', line 19

def get(feature_name, properties, default: false)
  value = _get(feature_name, properties)

  value.nil? ? default : value
end