Class: Kameleoon::Configuration::DataFile
- Inherits:
-
Object
- Object
- Kameleoon::Configuration::DataFile
- Defined in:
- lib/kameleoon/configuration/data_file.rb
Instance Attribute Summary collapse
-
#custom_data_info ⇒ Object
readonly
Returns the value of attribute custom_data_info.
-
#experiment_ids_with_js_css_variable ⇒ Object
readonly
Returns the value of attribute experiment_ids_with_js_css_variable.
-
#feature_flag_by_id ⇒ Object
readonly
Returns the value of attribute feature_flag_by_id.
-
#feature_flags ⇒ Object
readonly
Returns the value of attribute feature_flags.
-
#has_any_targeted_delivery_rule ⇒ Object
readonly
Returns the value of attribute has_any_targeted_delivery_rule.
-
#rule_by_segment_id ⇒ Object
readonly
Returns the value of attribute rule_by_segment_id.
-
#settings ⇒ Object
readonly
Returns the value of attribute settings.
-
#variation_by_id ⇒ Object
readonly
Returns the value of attribute variation_by_id.
Instance Method Summary collapse
- #experiment_js_css_variable?(experiment_id) ⇒ Boolean
- #get_feature_flag(feature_key) ⇒ Object
-
#initialize(environment, configuration = nil) ⇒ DataFile
constructor
A new instance of DataFile.
- #to_s ⇒ Object
Constructor Details
#initialize(environment, configuration = nil) ⇒ DataFile
Returns a new instance of DataFile.
22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/kameleoon/configuration/data_file.rb', line 22 def initialize(environment, configuration = nil) Logging::KameleoonLogger.debug('CALL: DataFile.new(environment: %s)', environment) @environment = environment if configuration.nil? init_default else init(configuration) end collect_indices Logging::KameleoonLogger.debug('RETURN: DataFile.new(environment: %s)', environment) end |
Instance Attribute Details
#custom_data_info ⇒ Object (readonly)
Returns the value of attribute custom_data_info.
11 12 13 |
# File 'lib/kameleoon/configuration/data_file.rb', line 11 def custom_data_info @custom_data_info end |
#experiment_ids_with_js_css_variable ⇒ Object (readonly)
Returns the value of attribute experiment_ids_with_js_css_variable.
11 12 13 |
# File 'lib/kameleoon/configuration/data_file.rb', line 11 def experiment_ids_with_js_css_variable @experiment_ids_with_js_css_variable end |
#feature_flag_by_id ⇒ Object (readonly)
Returns the value of attribute feature_flag_by_id.
11 12 13 |
# File 'lib/kameleoon/configuration/data_file.rb', line 11 def feature_flag_by_id @feature_flag_by_id end |
#feature_flags ⇒ Object (readonly)
Returns the value of attribute feature_flags.
11 12 13 |
# File 'lib/kameleoon/configuration/data_file.rb', line 11 def feature_flags @feature_flags end |
#has_any_targeted_delivery_rule ⇒ Object (readonly)
Returns the value of attribute has_any_targeted_delivery_rule.
11 12 13 |
# File 'lib/kameleoon/configuration/data_file.rb', line 11 def has_any_targeted_delivery_rule @has_any_targeted_delivery_rule end |
#rule_by_segment_id ⇒ Object (readonly)
Returns the value of attribute rule_by_segment_id.
11 12 13 |
# File 'lib/kameleoon/configuration/data_file.rb', line 11 def rule_by_segment_id @rule_by_segment_id end |
#settings ⇒ Object (readonly)
Returns the value of attribute settings.
11 12 13 |
# File 'lib/kameleoon/configuration/data_file.rb', line 11 def settings @settings end |
#variation_by_id ⇒ Object (readonly)
Returns the value of attribute variation_by_id.
11 12 13 |
# File 'lib/kameleoon/configuration/data_file.rb', line 11 def variation_by_id @variation_by_id end |
Instance Method Details
#experiment_js_css_variable?(experiment_id) ⇒ Boolean
42 43 44 |
# File 'lib/kameleoon/configuration/data_file.rb', line 42 def experiment_js_css_variable?(experiment_id) @experiment_ids_with_js_css_variable.include?(experiment_id) end |
#get_feature_flag(feature_key) ⇒ Object
34 35 36 37 38 39 40 |
# File 'lib/kameleoon/configuration/data_file.rb', line 34 def get_feature_flag(feature_key) ff = @feature_flags[feature_key] raise Exception::FeatureNotFound, feature_key if ff.nil? raise Exception::FeatureEnvironmentDisabled.new(feature_key, @environment) unless ff.environment_enabled ff end |
#to_s ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/kameleoon/configuration/data_file.rb', line 14 def to_s 'DataFile{' \ "environment:#{@environment}," \ "feature_flags:#{@feature_flags.size}," \ "settings:#{@settings}" \ '}' end |