Class: Jober::SharedObject
- Inherits:
-
Object
- Object
- Jober::SharedObject
- Defined in:
- lib/jober/shared_object.rb
Class Method Summary collapse
- .[](name) ⇒ Object
- .[]=(name, obj) ⇒ Object
- .clear ⇒ Object
- .del(name) ⇒ Object
- .get(name, conn = Jober.redis) ⇒ Object
- .get_by_pure_key(name, conn = Jober.redis) ⇒ Object
- .inc(name, by = 1) ⇒ Object
- .key(name) ⇒ Object
- .keys(mask) ⇒ Object
- .raw_get(name) ⇒ Object
- .set(name, obj, conn = Jober.redis) ⇒ Object
- .values(mask) ⇒ Object
Class Method Details
.[](name) ⇒ Object
29 30 31 |
# File 'lib/jober/shared_object.rb', line 29 def [](name) get(name) end |
.[]=(name, obj) ⇒ Object
33 34 35 |
# File 'lib/jober/shared_object.rb', line 33 def []=(name, obj) set name, obj end |
.clear ⇒ Object
49 50 51 52 53 |
# File 'lib/jober/shared_object.rb', line 49 def clear Jober.catch do Jober.redis.keys(key('*')).each { |k| Jober.redis.del(k) } end end |
.del(name) ⇒ Object
43 44 45 46 47 |
# File 'lib/jober/shared_object.rb', line 43 def del(name) Jober.catch do Jober.redis.del key(name) end end |
.get(name, conn = Jober.redis) ⇒ Object
9 10 11 12 13 14 |
# File 'lib/jober/shared_object.rb', line 9 def get(name, conn = Jober.redis) Jober.catch do r = conn.get(key(name)) Marshal.load(r) if r end end |
.get_by_pure_key(name, conn = Jober.redis) ⇒ Object
16 17 18 19 20 21 |
# File 'lib/jober/shared_object.rb', line 16 def get_by_pure_key(name, conn = Jober.redis) Jober.catch do r = conn.get(name) Marshal.load(r) if r end end |
.inc(name, by = 1) ⇒ Object
37 38 39 40 41 |
# File 'lib/jober/shared_object.rb', line 37 def inc(name, by = 1) Jober.catch do Jober.redis.incrby(key(name), by) end end |
.key(name) ⇒ Object
67 68 69 70 71 72 73 74 |
# File 'lib/jober/shared_object.rb', line 67 def key(name) k = if name.start_with?('shared:') name else "shared:#{name}" end Jober.key(k) end |
.keys(mask) ⇒ Object
55 56 57 58 59 |
# File 'lib/jober/shared_object.rb', line 55 def keys(mask) Jober.catch do Jober.redis.keys(key(mask)) end end |
.raw_get(name) ⇒ Object
23 24 25 26 27 |
# File 'lib/jober/shared_object.rb', line 23 def raw_get(name) Jober.catch do Jober.redis.get(key(name)) end end |