class ConfigManager::Setting

Attributes

id[R]
tags[R]
value[R]

Public Class Methods

new(id, value, tags) click to toggle source
# File lib/config_manager/setting.rb, line 10
def initialize(id, value, tags)
        @id = id
        @value = value
        @tags = tags
end

Private Class Methods

generate_index(id) click to toggle source
# File lib/config_manager/setting.rb, line 43
def generate_index(id)
        "#{prefix}_index:#{id}"
end
generate_key(id) click to toggle source
# File lib/config_manager/setting.rb, line 35
def generate_key(id)
        "#{prefix}:#{id}"
end
generate_tags_key(id) click to toggle source
# File lib/config_manager/setting.rb, line 39
def generate_tags_key(id)
        "#{prefix}_tags:#{id}"
end
global_key() click to toggle source
# File lib/config_manager/setting.rb, line 47
def global_key
        "#{prefix}_global"
end
prefix() click to toggle source
# File lib/config_manager/setting.rb, line 55
def prefix
        "#{Rails.application.class.parent_name.underscore}_cm_settings"
end
store_key_by_index(index, key) click to toggle source
# File lib/config_manager/setting.rb, line 59
def store_key_by_index(index, key)
        $redis.sadd(index, generate_key(key))
end
tag_global_key() click to toggle source
# File lib/config_manager/setting.rb, line 51
def tag_global_key
        "#{prefix}_tags_index"
end

Public Instance Methods

formatted_tags() click to toggle source
# File lib/config_manager/setting.rb, line 20
def formatted_tags
        @tags && @tags.join(', ')
end
message() click to toggle source
# File lib/config_manager/setting.rb, line 24
def message
        return "missing name(id)" unless @id.present?
        return "missing value" unless !!@value
end
to_hash() click to toggle source
# File lib/config_manager/setting.rb, line 29
def to_hash
        {'id' => id, 'value' => value, 'tags' => formatted_tags}
end
valid?() click to toggle source
# File lib/config_manager/setting.rb, line 16
def valid?
        @id.present? && !!@value
end