Class: Rediska::Connection
- Inherits:
-
Object
- Object
- Rediska::Connection
show all
- Includes:
- Driver
- Defined in:
- lib/rediska/connection.rb
Instance Attribute Summary
Attributes included from Driver
#buffer, #database_id, #replies
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from Driver
#[], #[]=, #append, #auth, #bgrewriteaof, #bgsave, #connect_unix, #connected?, #dbsize, #decr, #decrby, #del, #disconnect, #echo, #exec, #exists, #expire, #expireat, #flushall, #flushdb, #get, #getbit, #getrange, #getset, #hdel, #hexists, #hget, #hgetall, #hincrby, #hincrbyfloat, #hkeys, #hlen, #hmget, #hmset, #hset, #hsetnx, #hvals, #incr, #incrby, #info, #keys, #lastsave, #lindex, #linsert, #llen, #lpop, #lpush, #lpushx, #lrange, #lrem, #lset, #ltrim, #mget, #monitor, #move, #mset, #msetnx, #multi, #persist, #ping, #quit, #randomkey, #read, #rename, #renamenx, #rpop, #rpoplpush, #rpush, #rpushx, #sadd, #save, #scan, #scard, #sdiff, #sdiffstore, #select, #set, #setbit, #setex, #setnx, #setrange, #shutdown, #sinter, #sinterstore, #sismember, #slaveof, #smembers, #smove, #sort, #spop, #srandmember, #srem, #strlen, #sunion, #sunionstore, #sync, #time, #timeout=, #ttl, #type, #unwatch, #watch, #write, #zadd, #zcard, #zcount, #zincrby, #zinterstore, #zrange, #zrangebyscore, #zrank, #zrem, #zremrangebyrank, #zremrangebyscore, #zrevrange, #zrevrangebyscore, #zrevrank, #zscore, #zunionstore
Constructor Details
#initialize(options = {}) ⇒ Connection
Returns a new instance of Connection.
33
34
35
36
|
# File 'lib/rediska/connection.rb', line 33
def initialize(options = {})
@options = options
@database_id = 0
end
|
Class Method Details
.connect(options = {}) ⇒ Object
28
29
30
|
# File 'lib/rediska/connection.rb', line 28
def connect(options = {})
new(options)
end
|
.databases ⇒ Object
13
14
15
|
# File 'lib/rediska/connection.rb', line 13
def databases
@databases ||= Hash.new {|h,k| h[k] = [] }
end
|
.reset ⇒ Object
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/rediska/connection.rb', line 17
def reset
if @databases
@databases.values do |db|
db.class.reset
db.each(&:clear)
end
@databases = nil
end
end
|
Instance Method Details
#data ⇒ Object
51
52
53
|
# File 'lib/rediska/connection.rb', line 51
def data
find_database
end
|
#database_instance_key ⇒ Object
38
39
40
41
|
# File 'lib/rediska/connection.rb', line 38
def database_instance_key
@database_instance_key ||= [@options[:host], @options[:port], Rediska.configuration.namespace].
compact.join(':')
end
|
#databases ⇒ Object
43
44
45
|
# File 'lib/rediska/connection.rb', line 43
def databases
self.class.databases[database_instance_key]
end
|
#find_database(id = database_id) ⇒ Object
47
48
49
|
# File 'lib/rediska/connection.rb', line 47
def find_database(id = database_id)
databases[id] ||= db_class.new(database_instance_key, id)
end
|