class Minuteman::Model

Public Class Methods

create(*args) click to toggle source
Calls superclass method
# File lib/minuteman/model.rb, line 26
def self.create(*args)
  event = super(*args)
  Minuteman.config.redis.call("SADD", "#{Minuteman.prefix}::Events", event.type)
  Minuteman.config.redis.call("SET", "#{event.key}:id", event.id)

  event
end
find(*args) click to toggle source
# File lib/minuteman/model.rb, line 9
def self.find(*args)
  looked_up = "#{self.name}::#{args.first[:type]}:#{args.first[:time]}:id"
  potential_id = Minuteman.config.redis.call("GET", looked_up)

  return nil if !potential_id

  event = self[potential_id]
  event.type = args.first[:type]
  event.time = args.first[:time]

  event
end
find_or_create(*args) click to toggle source
# File lib/minuteman/model.rb, line 22
def self.find_or_create(*args)
  find(*args) || create(*args)
end

Public Instance Methods

key() click to toggle source
# File lib/minuteman/model.rb, line 34
def key
  Nest.new("#{self.class.name}::#{type}:#{time}", Minuteman.config.redis)
end