Module: MultiRedis
- Defined in:
- lib/multi_redis.rb,
lib/multi_redis/data.rb,
lib/multi_redis/context.rb
Defined Under Namespace
Modules: Extension
Classes: Context, Data, Executor, Operation, Step
Constant Summary
collapse
- VERSION =
'0.2.0'
Class Method Summary
collapse
Class Method Details
.execute(*args, &block) ⇒ Object
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# File 'lib/multi_redis.rb', line 22
def self.execute *args, &block
operations, arguments = @mutex.synchronize do
@operations = args.dup
@arguments = []
@executing = true
yield if block_given?
@executing = false
[ @operations.dup.tap{ |ops| @operations.clear }, @arguments ]
end
Executor.new(operations, args: arguments).execute
end
|
.executing? ⇒ Boolean
36
37
38
|
# File 'lib/multi_redis.rb', line 36
def self.executing?
@executing
end
|
.redis ⇒ Object
18
19
20
|
# File 'lib/multi_redis.rb', line 18
def self.redis
@redis
end
|
.redis=(redis) ⇒ Object
14
15
16
|
# File 'lib/multi_redis.rb', line 14
def self.redis= redis
@redis = redis
end
|
.register_operation(op, *args) ⇒ Object
40
41
42
43
44
45
|
# File 'lib/multi_redis.rb', line 40
def self.register_operation op, *args
op.tap do |op|
@operations << op
@arguments << args
end
end
|