Sha256: 5e9eb77c9061385d30c575feded94b9e0231e43ac99c476b3ce4814d0902c417

Contents?: true

Size: 491 Bytes

Versions: 1

Compression:

Stored size: 491 Bytes

Contents

require "concussion/version"
require "concussion/redis_adapter"
require "concussion/persist"

module Concussion

  class << self
    attr_accessor :store
  end

  def self.persist(klass, guid, time, *args)
    store.set guid, {klass: klass.name, time: time, args: args}
  end

  def self.retire(guid)
    store.del guid
  end

  def self.init
    store.find_each do |guid, data|
      retire guid
      Object.const_get(data[:klass]).new.later data[:time], *(data[:args])
    end
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
concussion-0.0.3 lib/concussion.rb