Module: ActiveJob::Status

Extended by:
ActiveSupport::Concern
Defined in:
lib/activejob-status.rb,
lib/activejob-status/status.rb,
lib/activejob-status/storage.rb,
lib/activejob-status/version.rb,
lib/activejob-status/progress.rb,
lib/activejob-status/throttle.rb

Defined Under Namespace

Classes: Progress, Status, Storage, Throttle

Constant Summary collapse

DEFAULT_OPTIONS =
{
  expires_in: 60 * 30,
  throttle_interval: 0
}.freeze
VERSION =
"0.2.2"

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.get(id) ⇒ Object



57
58
59
# File 'lib/activejob-status.rb', line 57

def get(id)
  Status.new(id)
end

.optionsObject



44
45
46
# File 'lib/activejob-status.rb', line 44

def options
  @@options ||= DEFAULT_OPTIONS
end

.options=(options) ⇒ Object



39
40
41
42
# File 'lib/activejob-status.rb', line 39

def options=(options)
  options.assert_valid_keys(*DEFAULT_OPTIONS.keys)
  @@options = DEFAULT_OPTIONS.merge(options)
end

.storeObject



53
54
55
# File 'lib/activejob-status.rb', line 53

def store
  @@store ||= (defined?(Rails) && Rails.cache)
end

.store=(store) ⇒ Object



48
49
50
51
# File 'lib/activejob-status.rb', line 48

def store=(store)
  store = ActiveSupport::Cache.lookup_store(*store) if store.is_a?(Array) || store.is_a?(Symbol)
  @@store = store
end

Instance Method Details

#progressObject



34
35
36
# File 'lib/activejob-status.rb', line 34

def progress
  @progress ||= Progress.new(self)
end

#statusObject



30
31
32
# File 'lib/activejob-status.rb', line 30

def status
  @status ||= Status.new(self)
end