class Object

Public Class Methods

new(key, redis = $redis) click to toggle source
Calls superclass method
# File lib/generators/sufia/models/templates/config/redis_config.rb, line 32
def initialize(key, redis = $redis)
  super(key.to_param)
  @redis = redis
end
stream() click to toggle source
# File lib/sufia/models/active_record/redis.rb, line 8
def self.stream
  Nest.new(name, $redis)
rescue
  nil
end

Public Instance Methods

[](key) click to toggle source
# File lib/generators/sufia/models/templates/config/redis_config.rb, line 37
def [](key)
  self.class.new("#{self}:#{key.to_param}", @redis)
end
create_event(action, timestamp) click to toggle source
# File lib/sufia/models/active_record/redis.rb, line 36
def create_event(action, timestamp)
  event_id = $redis.incr("events:latest_id")
  $redis.hmset("events:#{event_id}", "action", action, "timestamp", timestamp)
  event_id
rescue
  nil
end
events(size = -1) click to toggle source
# File lib/sufia/models/active_record/redis.rb, line 14
def events(size = -1)
  stream[:event].lrange(0, size).map do |event_id|
    {
      action: $redis.hget("events:#{event_id}", "action"),
      timestamp: $redis.hget("events:#{event_id}", "timestamp")
    }
  end
rescue
  []
end
log_event(event_id) click to toggle source
# File lib/sufia/models/active_record/redis.rb, line 44
def log_event(event_id)
  stream[:event].lpush(event_id)
rescue
  nil
end
log_profile_event(event_id) click to toggle source
# File lib/sufia/models/active_record/redis.rb, line 50
def log_profile_event(event_id)
  stream[:event][:profile].lpush(event_id)
rescue
  nil
end
profile_events(size = -1) click to toggle source
# File lib/sufia/models/active_record/redis.rb, line 25
def profile_events(size = -1)
  stream[:event][:profile].lrange(0, size).map do |event_id|
    {
      action: $redis.hget("events:#{event_id}", "action"),
      timestamp: $redis.hget("events:#{event_id}", "timestamp")
    }
  end
rescue
  []
end
stream() click to toggle source
# File lib/sufia/models/active_record/redis.rb, line 2
def stream
  Nest.new(self.class.name, $redis)[to_param]
rescue
  nil
end