module RolloutUi2

Constants

VERSION

Attributes

finderss[R]
rollouts[R]

Public Class Methods

delete(feature, key = :default) click to toggle source
# File lib/rollout_ui2.rb, line 43
def delete(feature, key = :default)
  return rollout(key).delete(feature.name) if rollout(key).respond_to?(:delete)
  rollout(key).deactivate(feature.name)
end
finder(key = :default) click to toggle source
# File lib/rollout_ui2.rb, line 27
def finder(key = :default)
  @finders[key] if @finders
end
get(name, key = :default) click to toggle source
# File lib/rollout_ui2.rb, line 35
def get(name, key = :default)
  Feature.new(rollout(key).get(name))
end
index(key = :default) click to toggle source
# File lib/rollout_ui2.rb, line 31
def index(key = :default)
  rollout(key).features.empty? ? [] : multi(rollout(key).features.sort, rollout(key))
end
keys() click to toggle source
# File lib/rollout_ui2.rb, line 48
def keys
  @rollouts.keys.reject { |i| i == :default}
end
rollout(key = :default) click to toggle source
# File lib/rollout_ui2.rb, line 23
def rollout(key = :default)
  @rollouts[key]
end
save(feature, key = :default) click to toggle source
# File lib/rollout_ui2.rb, line 39
def save(feature, key = :default)
  rollout(key).send(:save, feature)
end
with_finder(finder, key: :default) click to toggle source
# File lib/rollout_ui2.rb, line 10
def with_finder(finder, key: :default)
  @finders ||= { default: finder }
  @finders[key] = finder
  self
end
wrap(rollout, key: :default, finder: nil) click to toggle source
# File lib/rollout_ui2.rb, line 16
def wrap(rollout, key: :default, finder: nil)
  @rollouts ||= { default: rollout }
  @rollouts[key] = rollout
  with_finder(finder, key: key) if finder
  self
end

Private Class Methods

multi(keys, rollout) click to toggle source
# File lib/rollout_ui2.rb, line 54
def multi(keys, rollout)
  features = if rollout.respond_to?(:multi_get)
               rollout.multi_get(*keys)
             else
               keys.map { |key| get(key) }
             end
  features.map { |f| Feature.new(f) }
end