Module: BackgroundWorker::State

Extended by:
ActiveSupport::Concern
Included in:
Base
Defined in:
lib/background_worker/state.rb

Defined Under Namespace

Modules: ClassMethods

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#stateObject

Returns the value of attribute state.



6
7
8
# File 'lib/background_worker/state.rb', line 6

def state
  @state
end

Instance Method Details

#report_failed(message = 'Failed', detailed_message = nil) ⇒ Object



31
32
33
34
# File 'lib/background_worker/state.rb', line 31

def report_failed(message = 'Failed', detailed_message = nil)
  state.detailed_message = detailed_message
  state.set_completed(message, :failed)
end

#report_minor_progress(message) ⇒ Object

Report a minor progress – may get called a lot, so don’t save it so often



15
16
17
18
19
20
21
22
23
24
25
# File 'lib/background_worker/state.rb', line 15

def report_minor_progress(message)
  state.message = message

  # Only report minor events once per second
  @last_report ||= Time.now - 2
  time_elapsed =  Time.now - @last_report
  return unless time_elapsed > 1

  @last_report = Time.now
  state.save
end

#report_progress(message) ⇒ Object

Report progress…



9
10
11
12
# File 'lib/background_worker/state.rb', line 9

def report_progress(message)
  state.message = message
  state.save
end

#report_successful(message = 'Finished successfully') ⇒ Object



27
28
29
# File 'lib/background_worker/state.rb', line 27

def report_successful(message = 'Finished successfully')
  state.set_completed(message, :successful)
end