class LockManager::RedisConnection
Attributes
port[R]
server[R]
Public Class Methods
new(options = {})
click to toggle source
Calls superclass method
LockManager::Connection::new
# File lib/lock_manager/redis_connection.rb, line 7 def initialize(options = {}) super raise ArgumentError, ':server option is mandatory for redis connections' unless options[:server] @server = options[:server] @port = options[:port] end
Public Instance Methods
connect_redis(redis_server, redis_port = 6379)
click to toggle source
Create a connection to redis.
# File lib/lock_manager/redis_connection.rb, line 39 def connect_redis(redis_server, redis_port = 6379) redis = Redis.new(host: redis_server, port: redis_port) redis.ping redis end
handle()
click to toggle source
# File lib/lock_manager/redis_connection.rb, line 34 def handle @handle ||= connect_redis(server, port) end
key_from_host(host)
click to toggle source
# File lib/lock_manager/redis_connection.rb, line 30 def key_from_host(host) "node_lock_#{host}" end
read(host)
click to toggle source
# File lib/lock_manager/redis_connection.rb, line 14 def read(host) handle.get key_from_host(host) end
remove(host)
click to toggle source
# File lib/lock_manager/redis_connection.rb, line 26 def remove(host) handle.del key_from_host(host) end
write(host, value)
click to toggle source
# File lib/lock_manager/redis_connection.rb, line 22 def write(host, value) handle.set(key_from_host(host), value) end
write_if_not_exists(host, value)
click to toggle source
# File lib/lock_manager/redis_connection.rb, line 18 def write_if_not_exists(host, value) handle.setnx(key_from_host(host), value) end