Module: Slavery
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/slavery.rb,
lib/slavery/railtie.rb,
lib/slavery/version.rb
Defined Under Namespace
Modules: ClassMethods
Classes: Error, Railtie
Constant Summary
collapse
- VERSION =
'1.4.3'
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.disabled ⇒ Object
Returns the value of attribute disabled.
19
20
21
|
# File 'lib/slavery.rb', line 19
def disabled
@disabled
end
|
.env ⇒ Object
46
47
48
|
# File 'lib/slavery.rb', line 46
def env
@env ||= defined?(Rails) ? Rails.env.to_s : 'development'
end
|
.spec_key ⇒ Object
22
23
24
25
26
27
28
|
# File 'lib/slavery.rb', line 22
def spec_key
case @spec_key
when String then @spec_key
when Proc then @spec_key = @spec_key.call
when NilClass then @spec_key = "#{Slavery.env}_slave"
end
end
|
Class Method Details
.on_master(&block) ⇒ Object
34
35
36
|
# File 'lib/slavery.rb', line 34
def on_master(&block)
run false, &block
end
|
.on_slave(&block) ⇒ Object
30
31
32
|
# File 'lib/slavery.rb', line 30
def on_slave(&block)
run true, &block
end
|
.run(new_value) ⇒ Object
38
39
40
41
42
43
44
|
# File 'lib/slavery.rb', line 38
def run(new_value)
old_value = Thread.current[:on_slave]
Thread.current[:on_slave] = new_value
yield
ensure
Thread.current[:on_slave] = old_value
end
|