Class: Togl::Adapter::Redis

Inherits:
Togl::Adapter show all
Defined in:
lib/togl/adapter/redis.rb

Constant Summary collapse

MAPPING =
{ "true" => true,
"false" => false }

Instance Attribute Summary collapse

Attributes inherited from Togl::Adapter

#name

Instance Method Summary collapse

Constructor Details

#initializeRedis

Returns a new instance of Redis.



7
8
9
# File 'lib/togl/adapter/redis.rb', line 7

def initialize
  super(:redis)
end

Instance Attribute Details

#current_redisObject



32
33
34
# File 'lib/togl/adapter/redis.rb', line 32

def current_redis
  @current_redis || ::Redis.current
end

Instance Method Details

#call(name) ⇒ Object



11
12
13
# File 'lib/togl/adapter/redis.rb', line 11

def call(name)
  MAPPING[current_redis.get(key(name))]
end

#disable!(name) ⇒ Object



19
20
21
# File 'lib/togl/adapter/redis.rb', line 19

def disable!(name)
  current_redis.set(key(name), false)
end

#enable!(name) ⇒ Object



15
16
17
# File 'lib/togl/adapter/redis.rb', line 15

def enable!(name)
  current_redis.set(key(name), true)
end

#key(name) ⇒ Object



27
28
29
# File 'lib/togl/adapter/redis.rb', line 27

def key(name)
  "togl.feature:#{name}"
end

#reset!(name) ⇒ Object



23
24
25
# File 'lib/togl/adapter/redis.rb', line 23

def reset!(name)
  current_redis.del(key(name))
end