Class: Rembrandt::Stores::Redis

Inherits:
Object
  • Object
show all
Includes:
Fetchable
Defined in:
lib/rembrandt/stores/redis.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Fetchable

#fetch, #key_for

Constructor Details

#initialize(url = nil) ⇒ Redis

Returns a new instance of Redis.



11
12
13
14
# File 'lib/rembrandt/stores/redis.rb', line 11

def initialize(url = nil)
  @url = ENV['REMBRANDT_REDIS_URL']
  @database = ::Redis.new(:url => url)
end

Instance Attribute Details

#databaseObject (readonly)

Returns the value of attribute database.



9
10
11
# File 'lib/rembrandt/stores/redis.rb', line 9

def database
  @database
end

#urlObject (readonly)

Returns the value of attribute url.



9
10
11
# File 'lib/rembrandt/stores/redis.rb', line 9

def url
  @url
end

Instance Method Details

#available?Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/rembrandt/stores/redis.rb', line 16

def available?
  defined?(::Redis)
end

#flushObject



28
29
30
# File 'lib/rembrandt/stores/redis.rb', line 28

def flush
  database.flushdb
end

#read(key) ⇒ Object



24
25
26
# File 'lib/rembrandt/stores/redis.rb', line 24

def read(key)
  database.get(key)
end

#write(key, data) ⇒ Object



20
21
22
# File 'lib/rembrandt/stores/redis.rb', line 20

def write(key, data)
  database.set(key, data)
end