class GlobalLock::Config

Attributes

default_backoff_time[RW]
default_retry_time[RW]
default_ttl[RW]
redis_connection[RW]
redis_pool[RW]
redis_prefix[RW]

Public Class Methods

new(opts = {}) click to toggle source
# File lib/global_lock/config.rb, line 9
def initialize(opts = {})
  self.default_ttl          = opts[:default_ttl]          || 60 * 60 * 24
  self.default_retry_time   = opts[:default_retry_time]   || 30
  self.default_backoff_time = opts[:default_backoff_time] || 0.01
  self.redis_prefix         = opts[:redis_prefix]         || "GlobalLock/"
  self.redis_connection     = opts[:redis_connection]     || Redis.new
  self.redis_pool           = opts[:redis_pool]           || ConnectionPool.new { self.redis_connection }
end

Public Instance Methods

lock_opts() click to toggle source
# File lib/global_lock/config.rb, line 18
def lock_opts
  {
    ttl: default_ttl,
    retry_time: default_retry_time,
    backoff_time: default_backoff_time,
    redis_prefix: redis_prefix,
    redis_connection: redis_connection,
    redis_pool: redis_pool
  }
end
with_redis(&block) click to toggle source
# File lib/global_lock/config.rb, line 29
def with_redis(&block)
  redis_pool.with(&block)
end