Class: RailsKvsDriver::RedisDriver::Driver
- Inherits:
-
Base
- Object
- Base
- RailsKvsDriver::RedisDriver::Driver
- Defined in:
- lib/rails_kvs_driver/redis_driver.rb
Instance Method Summary collapse
-
#[](key) ⇒ String
get value from kvs.
-
#[]=(key, value) ⇒ Boolean
set value to kvs.
-
#add_sorted_set(key, member, score) ⇒ Boolean
add sorted set to kvs.
-
#all_keys ⇒ Array<String>
get all keys from kvs.
-
#connect ⇒ Boolean
connect with driver config.
-
#count_sorted_set_member(key) ⇒ Integer
count members of sorted set.
-
#delete(key) ⇒ Boolean
delete key from kvs.
-
#delete_all ⇒ Boolean
delete all keys from kvs.
-
#increment_sorted_set(key, member, score) ⇒ Float
abstract
increment score of member from sorted set.
-
#remove_sorted_set(key, member) ⇒ Boolean
abstract
remove sorted set from kvs.
-
#sorted_set(key, start = 0, stop = -1,, reverse = false) ⇒ Array<String, Float>
abstract
get array of sorted set.
-
#sorted_set_score(key, member) ⇒ Float
abstract
get the score of member.
Instance Method Details
#[](key) ⇒ String
get value from kvs.
21 22 23 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 21 def [](key) @kvs_inst.get(safe_key(key)) end |
#[]=(key, value) ⇒ Boolean
set value to kvs.
29 30 31 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 29 def []=(key, value) @kvs_inst.set(safe_key(key), value) end |
#add_sorted_set(key, member, score) ⇒ Boolean
same as sorted set of redis. refer to redis.
add sorted set to kvs. when the key doesn’t exist, it’s made newly.
70 71 72 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 70 def add_sorted_set(key, member, score) @kvs_inst.zadd(safe_key(key), score, member) end |
#all_keys ⇒ Array<String>
get all keys from kvs.
35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 35 def all_keys result = Array.new pattern = safe_key('*') header_len = pattern.length - 1 @kvs_inst.keys(pattern).each do |key| result.push key[header_len .. -1] end return result end |
#connect ⇒ Boolean
connect with driver config.
9 10 11 12 13 14 15 16 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 9 def connect begin @kvs_inst = Redis.new(host: @driver_config[:host], port: @driver_config[:port]) return true rescue return false end end |
#count_sorted_set_member(key) ⇒ Integer
same as sorted set of redis. refer to redis.
count members of sorted set
131 132 133 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 131 def count_sorted_set_member(key) @kvs_inst.zcard(safe_key(key)) end |
#delete(key) ⇒ Boolean
delete key from kvs.
49 50 51 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 49 def delete(key) (@kvs_inst.del(safe_key(key)) == 1) end |
#delete_all ⇒ Boolean
delete all keys from kvs.
55 56 57 58 59 60 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 55 def delete_all keys = @kvs_inst.keys(safe_key('*')) del_num = @kvs_inst.del(keys) if keys.length > 0 (del_num == keys.length) end |
#increment_sorted_set(key, member, score) ⇒ Float
increment score of member from sorted set.
same as sorted set of redis. refer to redis.
increment score of member from sorted set.
94 95 96 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 94 def increment_sorted_set(key, member, score) @kvs_inst.zincrby(safe_key(key), score, member) end |
#remove_sorted_set(key, member) ⇒ Boolean
remove sorted set from kvs.
same as sorted set of redis. refer to redis.
remove sorted set from kvs. This function doesn’t delete a key.
82 83 84 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 82 def remove_sorted_set(key, member) @kvs_inst.zrem(safe_key(key), member) end |
#sorted_set(key, start = 0, stop = -1,, reverse = false) ⇒ Array<String, Float>
get array of sorted set.
same as sorted set of redis. refer to redis.
get array of sorted set.
118 119 120 121 122 123 124 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 118 def sorted_set(key, start=0, stop=-1, reverse=false) if reverse @kvs_inst.zrevrange(safe_key(key), start, stop, with_scores: true) else @kvs_inst.zrange(safe_key(key), start, stop, with_scores: true) end end |
#sorted_set_score(key, member) ⇒ Float
get the score of member.
same as sorted set of redis. refer to redis.
get the score of member.
105 106 107 |
# File 'lib/rails_kvs_driver/redis_driver.rb', line 105 def sorted_set_score(key, member) @kvs_inst.zscore(safe_key(key), member) end |