Class: Mach::Persistence::RedisStore

Inherits:
DeltaAndNonceStore show all
Defined in:
lib/mach/persistence/redis_store.rb

Instance Method Summary collapse

Methods inherited from DeltaAndNonceStore

configure

Constructor Details

#initialize(options = {}) ⇒ RedisStore

Returns a new instance of RedisStore.

Raises:

  • (MissingConfigurationOptionError)


8
9
10
11
# File 'lib/mach/persistence/redis_store.rb', line 8

def initialize(options = {})
  raise MissingConfigurationOptionError unless options[:host] && options[:port]
  @redis = Redis.new(:host => options[:host], :port => options[:port])
end

Instance Method Details

#add_delta(credential_id, delta_value, expires_in) ⇒ Object



17
18
19
20
# File 'lib/mach/persistence/redis_store.rb', line 17

def add_delta(credential_id, delta_value, expires_in)
  @redis.setex(delta_key_for(credential_id), expires_in, delta_value)
  delta_value
end

#add_nonce(credential_id, nonce_value, expires_in) ⇒ Object



26
27
28
# File 'lib/mach/persistence/redis_store.rb', line 26

def add_nonce(credential_id, nonce_value, expires_in)
  @redis.setex(nonce_key_for(credential_id, nonce_value), expires_in, 1)
end

#find_delta_by(credential_id) ⇒ Object



13
14
15
# File 'lib/mach/persistence/redis_store.rb', line 13

def find_delta_by(credential_id)
  @redis.get(delta_key_for(credential_id))
end

#find_nonce_by(credential_id, nonce_value) ⇒ Object



22
23
24
# File 'lib/mach/persistence/redis_store.rb', line 22

def find_nonce_by(credential_id, nonce_value)
  @redis.get(nonce_key_for(credential_id, nonce_value))
end