module SwitchPoint::ClassMethods
Public Instance Methods
config()
click to toggle source
# File lib/switch_point.rb, line 13 def config @config ||= Config.new end
configure(&block)
click to toggle source
# File lib/switch_point.rb, line 9 def configure(&block) block.call(config) end
readonly!(name)
click to toggle source
# File lib/switch_point.rb, line 23 def readonly!(name) ProxyRepository.checkout(name).readonly! end
readonly_all!()
click to toggle source
# File lib/switch_point.rb, line 17 def readonly_all! config.each_key do |name| readonly!(name) end end
with_mode(mode, *names, &block)
click to toggle source
# File lib/switch_point.rb, line 53 def with_mode(mode, *names, &block) names.reverse.inject(block) do |func, name| lambda do ProxyRepository.checkout(name).with_mode(mode, &func) end end.call end
with_readonly(*names, &block)
click to toggle source
# File lib/switch_point.rb, line 37 def with_readonly(*names, &block) with_mode(:readonly, *names, &block) end
with_readonly_all(&block)
click to toggle source
# File lib/switch_point.rb, line 41 def with_readonly_all(&block) with_readonly(*config.keys, &block) end
with_writable(*names, &block)
click to toggle source
# File lib/switch_point.rb, line 45 def with_writable(*names, &block) with_mode(:writable, *names, &block) end
with_writable_all(&block)
click to toggle source
# File lib/switch_point.rb, line 49 def with_writable_all(&block) with_writable(*config.keys, &block) end
writable!(name)
click to toggle source
# File lib/switch_point.rb, line 33 def writable!(name) ProxyRepository.checkout(name).writable! end
writable_all!()
click to toggle source
# File lib/switch_point.rb, line 27 def writable_all! config.each_key do |name| writable!(name) end end