Class: SettingsModel
- Inherits:
-
Object
- Object
- SettingsModel
- Defined in:
- lib/wingify/models/settings/settings_model.rb
Instance Attribute Summary collapse
-
#account_id ⇒ Object
readonly
Returns the value of attribute account_id.
-
#campaign_groups ⇒ Object
readonly
Returns the value of attribute campaign_groups.
-
#campaigns ⇒ Object
readonly
Returns the value of attribute campaigns.
-
#collection_prefix ⇒ Object
readonly
Returns the value of attribute collection_prefix.
-
#features ⇒ Object
readonly
Returns the value of attribute features.
-
#groups ⇒ Object
readonly
Returns the value of attribute groups.
-
#is_web_connectivity_enabled ⇒ Object
readonly
Returns the value of attribute is_web_connectivity_enabled.
-
#poll_interval ⇒ Object
readonly
Returns the value of attribute poll_interval.
-
#sdk_key ⇒ Object
readonly
Returns the value of attribute sdk_key.
-
#usage_stats_account_id ⇒ Object
readonly
Returns the value of attribute usage_stats_account_id.
-
#version ⇒ Object
readonly
Returns the value of attribute version.
Instance Method Summary collapse
- #get_account_id ⇒ Object
- #get_campaign_groups ⇒ Object
- #get_campaigns ⇒ Object
- #get_collection_prefix ⇒ Object
- #get_features ⇒ Object
- #get_groups ⇒ Object
- #get_is_web_connectivity_enabled ⇒ Object
- #get_poll_interval ⇒ Object
- #get_sdk_key ⇒ Object
- #get_usage_stats_account_id ⇒ Object
- #get_version ⇒ Object
-
#initialize(settings) ⇒ SettingsModel
constructor
A new instance of SettingsModel.
- #process_campaigns(settings) ⇒ Object
- #process_features(settings) ⇒ Object
Constructor Details
#initialize(settings) ⇒ SettingsModel
Returns a new instance of SettingsModel.
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/wingify/models/settings/settings_model.rb', line 23 def initialize(settings) @sdk_key = settings["sdkKey"] @account_id = settings["accountId"] @usage_stats_account_id = settings["usageStatsAccountId"] @version = settings["version"] @collection_prefix = settings["collectionPrefix"] @poll_interval = settings["pollInterval"] || Constants::POLLING_INTERVAL @features = [] @campaigns = [] @campaign_groups = settings["campaignGroups"] || {} @groups = settings["groups"] || {} @is_web_connectivity_enabled = settings.fetch("isWebConnectivityEnabled", true) process_features(settings) process_campaigns(settings) end |
Instance Attribute Details
#account_id ⇒ Object (readonly)
Returns the value of attribute account_id.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def account_id @account_id end |
#campaign_groups ⇒ Object (readonly)
Returns the value of attribute campaign_groups.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def campaign_groups @campaign_groups end |
#campaigns ⇒ Object (readonly)
Returns the value of attribute campaigns.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def campaigns @campaigns end |
#collection_prefix ⇒ Object (readonly)
Returns the value of attribute collection_prefix.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def collection_prefix @collection_prefix end |
#features ⇒ Object (readonly)
Returns the value of attribute features.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def features @features end |
#groups ⇒ Object (readonly)
Returns the value of attribute groups.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def groups @groups end |
#is_web_connectivity_enabled ⇒ Object (readonly)
Returns the value of attribute is_web_connectivity_enabled.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def is_web_connectivity_enabled @is_web_connectivity_enabled end |
#poll_interval ⇒ Object (readonly)
Returns the value of attribute poll_interval.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def poll_interval @poll_interval end |
#sdk_key ⇒ Object (readonly)
Returns the value of attribute sdk_key.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def sdk_key @sdk_key end |
#usage_stats_account_id ⇒ Object (readonly)
Returns the value of attribute usage_stats_account_id.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def usage_stats_account_id @usage_stats_account_id end |
#version ⇒ Object (readonly)
Returns the value of attribute version.
20 21 22 |
# File 'lib/wingify/models/settings/settings_model.rb', line 20 def version @version end |
Instance Method Details
#get_account_id ⇒ Object
60 61 62 |
# File 'lib/wingify/models/settings/settings_model.rb', line 60 def get_account_id @account_id end |
#get_campaign_groups ⇒ Object
48 49 50 |
# File 'lib/wingify/models/settings/settings_model.rb', line 48 def get_campaign_groups @campaign_groups end |
#get_campaigns ⇒ Object
40 41 42 |
# File 'lib/wingify/models/settings/settings_model.rb', line 40 def get_campaigns @campaigns end |
#get_collection_prefix ⇒ Object
72 73 74 |
# File 'lib/wingify/models/settings/settings_model.rb', line 72 def get_collection_prefix @collection_prefix end |
#get_features ⇒ Object
44 45 46 |
# File 'lib/wingify/models/settings/settings_model.rb', line 44 def get_features @features end |
#get_groups ⇒ Object
52 53 54 |
# File 'lib/wingify/models/settings/settings_model.rb', line 52 def get_groups @groups end |
#get_is_web_connectivity_enabled ⇒ Object
98 99 100 |
# File 'lib/wingify/models/settings/settings_model.rb', line 98 def get_is_web_connectivity_enabled @is_web_connectivity_enabled end |
#get_poll_interval ⇒ Object
76 77 78 |
# File 'lib/wingify/models/settings/settings_model.rb', line 76 def get_poll_interval @poll_interval end |
#get_sdk_key ⇒ Object
56 57 58 |
# File 'lib/wingify/models/settings/settings_model.rb', line 56 def get_sdk_key @sdk_key end |
#get_usage_stats_account_id ⇒ Object
64 65 66 |
# File 'lib/wingify/models/settings/settings_model.rb', line 64 def get_usage_stats_account_id @usage_stats_account_id end |
#get_version ⇒ Object
68 69 70 |
# File 'lib/wingify/models/settings/settings_model.rb', line 68 def get_version @version end |
#process_campaigns(settings) ⇒ Object
89 90 91 92 93 94 95 96 |
# File 'lib/wingify/models/settings/settings_model.rb', line 89 def process_campaigns(settings) campaign_list = settings["campaigns"] return unless campaign_list.is_a?(Array) campaign_list.each do |campaign| @campaigns << CampaignModel.new.model_from_dictionary(campaign) end end |
#process_features(settings) ⇒ Object
80 81 82 83 84 85 86 87 |
# File 'lib/wingify/models/settings/settings_model.rb', line 80 def process_features(settings) feature_list = settings["features"] return unless feature_list.is_a?(Array) feature_list.each do |feature| @features << FeatureModel.new.model_from_dictionary(feature) end end |