class Aggro::SagaStatus

Public: Tracks the state of a saga as it processes.

Public Class Methods

new(id) click to toggle source
Calls superclass method Aggro::Projection::new
# File lib/aggro/saga_status.rb, line 7
def initialize(id)
  @state = :unscheduled
  init_obligation
  super
end

Public Instance Methods

rejected(reason) click to toggle source
# File lib/aggro/saga_status.rb, line 18
def rejected(reason)
  set_state false, nil, reason
  event.set
end
resolved(value) click to toggle source
# File lib/aggro/saga_status.rb, line 23
def resolved(value)
  set_state true, value, nil
  event.set
end
started() click to toggle source
# File lib/aggro/saga_status.rb, line 14
def started
  self.state = :pending
end