Class: Jieshun::Parking::RedisClient

Inherits:
Object
  • Object
show all
Defined in:
lib/jieshun/parking/redis/redis_client.rb

Instance Method Summary collapse

Constructor Details

#initialize(redis_config) ⇒ RedisClient

Returns a new instance of RedisClient.



7
8
9
10
11
12
# File 'lib/jieshun/parking/redis/redis_client.rb', line 7

def initialize(redis_config)
  unless $redis
    $redis = Redis.new(redis_config)
  end
  $redis
end

Instance Method Details

#redis_clientObject



14
15
16
# File 'lib/jieshun/parking/redis/redis_client.rb', line 14

def redis_client
  $redis
end

#redis_del(key) ⇒ Object



30
31
32
# File 'lib/jieshun/parking/redis/redis_client.rb', line 30

def redis_del(key)
  redis_client.del key
end

#redis_get(key) ⇒ Object



26
27
28
# File 'lib/jieshun/parking/redis/redis_client.rb', line 26

def redis_get(key)
  redis_client.get key
end

#redis_set(key, value, expire_time = 60) ⇒ Object



18
19
20
21
22
23
24
# File 'lib/jieshun/parking/redis/redis_client.rb', line 18

def redis_set(key, value, expire_time = 60)
  # Rails.logger.debug "redis_client #{redis_client}"
  redis_client.set key, value
  if expire_time > 0
    redis_client.expire key, expire_time
  end
end

#redis_set_nx_lock(lock_key, expire_time) ⇒ Object



39
40
41
# File 'lib/jieshun/parking/redis/redis_client.rb', line 39

def redis_set_nx_lock(lock_key, expire_time)
  redis_client.set(lock_key, 1, nx: true, ex: expire_time)
end

#redis_ttl(key) ⇒ Object



34
35
36
# File 'lib/jieshun/parking/redis/redis_client.rb', line 34

def redis_ttl(key)
  redis_client.ttl key
end