Class: ActiveStore::Connection
- Inherits:
-
Object
- Object
- ActiveStore::Connection
- Defined in:
- lib/active_store/connection.rb
Instance Attribute Summary collapse
-
#connection_string ⇒ Object
Returns the value of attribute connection_string.
-
#default_ttl ⇒ Object
Returns the value of attribute default_ttl.
-
#namespace ⇒ Object
Returns the value of attribute namespace.
- #store ⇒ Object
Instance Method Summary collapse
- #add(key, value, ttl = default_ttl) ⇒ Object
- #add_raw(key, value, ttl = default_ttl) ⇒ Object
- #cas(key, ttl = default_ttl) ⇒ Object
- #delete(*args) ⇒ Object
- #flush_all ⇒ Object
- #get(key) ⇒ Object
- #get_raw(key) ⇒ Object
- #incr(*args) ⇒ Object
-
#initialize(connection_string, namespace, default_ttl) ⇒ Connection
constructor
A new instance of Connection.
- #set(key, value, ttl = default_ttl) ⇒ Object
- #set_raw(key, value, ttl = default_ttl) ⇒ Object
Constructor Details
#initialize(connection_string, namespace, default_ttl) ⇒ Connection
Returns a new instance of Connection.
8 9 10 11 12 |
# File 'lib/active_store/connection.rb', line 8 def initialize(connection_string, namespace, default_ttl) @connection_string = connection_string @namespace = namespace @default_ttl = default_ttl end |
Instance Attribute Details
#connection_string ⇒ Object
Returns the value of attribute connection_string.
6 7 8 |
# File 'lib/active_store/connection.rb', line 6 def connection_string @connection_string end |
#default_ttl ⇒ Object
Returns the value of attribute default_ttl.
6 7 8 |
# File 'lib/active_store/connection.rb', line 6 def default_ttl @default_ttl end |
#namespace ⇒ Object
Returns the value of attribute namespace.
6 7 8 |
# File 'lib/active_store/connection.rb', line 6 def namespace @namespace end |
#store ⇒ Object
67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/active_store/connection.rb', line 67 def store unless @store @store = Dalli::Client.new(connection_string, :namespace => namespace, :expires_in => default_ttl, :socket_timeout => 1) begin @store.get('test') rescue Dalli::RingError => e @store = nil raise e end end @store end |
Instance Method Details
#add(key, value, ttl = default_ttl) ⇒ Object
44 45 46 |
# File 'lib/active_store/connection.rb', line 44 def add (key, value, ttl=default_ttl) add_raw(key, dump(value), ttl) end |
#add_raw(key, value, ttl = default_ttl) ⇒ Object
63 64 65 |
# File 'lib/active_store/connection.rb', line 63 def add_raw(key, value, ttl=default_ttl) store.add(key, value, ttl, :raw => true) end |
#cas(key, ttl = default_ttl) ⇒ Object
48 49 50 51 52 53 |
# File 'lib/active_store/connection.rb', line 48 def cas (key, ttl=default_ttl) store.cas(key, ttl, :raw => true) do |value| raw_output = yield load(value) dump(raw_output) end end |
#delete(*args) ⇒ Object
32 33 34 |
# File 'lib/active_store/connection.rb', line 32 def delete(*args) store.delete(*args) end |
#flush_all ⇒ Object
24 25 26 |
# File 'lib/active_store/connection.rb', line 24 def flush_all store.flush_all end |
#get(key) ⇒ Object
36 37 38 |
# File 'lib/active_store/connection.rb', line 36 def get (key) load(get_raw(key)) end |
#get_raw(key) ⇒ Object
55 56 57 |
# File 'lib/active_store/connection.rb', line 55 def get_raw(key) store.get(key) end |
#incr(*args) ⇒ Object
28 29 30 |
# File 'lib/active_store/connection.rb', line 28 def incr(*args) store.incr(*args) end |
#set(key, value, ttl = default_ttl) ⇒ Object
40 41 42 |
# File 'lib/active_store/connection.rb', line 40 def set (key, value, ttl=default_ttl) set_raw(key, dump(value), ttl) end |
#set_raw(key, value, ttl = default_ttl) ⇒ Object
59 60 61 |
# File 'lib/active_store/connection.rb', line 59 def set_raw(key, value, ttl=default_ttl) store.set(key, value, ttl, :raw => true) end |