Module: Flag
Defined Under Namespace
Classes: Feature, Members
Constant Summary
collapse
- FEATURES =
"_flag:features".freeze
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.store ⇒ Object
Returns the value of attribute store.
110
111
112
|
# File 'lib/flag.rb', line 110
def store
@store
end
|
Class Method Details
.enabled ⇒ Object
118
119
120
|
# File 'lib/flag.rb', line 118
def enabled
features.select { |k, v| k if v.on? }.keys
end
|
.features ⇒ Object
127
128
129
130
131
132
133
134
135
|
# File 'lib/flag.rb', line 127
def features
@_features ||= Hash.new { |h, k| h[k] = Feature.new(k) }
self.store.call("HGETALL", FEATURES).each_slice(2) do |slice|
@_features[slice.first.to_sym]
end
@_features
end
|
.flush ⇒ Object
112
113
114
115
116
|
# File 'lib/flag.rb', line 112
def flush
@_group = nil
features.each { |_, f| f.reset }
self.store.call("DEL", FEATURES)
end
|
.group ⇒ Object
123
|
# File 'lib/flag.rb', line 123
def group; @_group ||= Hash.new { |h, k| h[k] = lambda { |id| } } end
|
.groups ⇒ Object
125
|
# File 'lib/flag.rb', line 125
def groups; group.keys end
|