class Dtmcli::Saga

Constants

TRANS_TYPE

Attributes

dtm[R]
dtm_url[R]
gid[RW]
steps[RW]

Public Class Methods

new(dtm_url) click to toggle source
# File lib/dtmcli/saga.rb, line 8
def initialize(dtm_url)
  @dtm_url = dtm_url
  @dtm = Dtm.new(dtm_url)
  @steps = []
end

Public Instance Methods

add(action, compensate, post_data) click to toggle source
# File lib/dtmcli/saga.rb, line 18
def add(action, compensate, post_data)
  step = {
    action:     action,
    compensate: compensate,
    data:       post_data.to_json,
  }
  @steps << step
end
gen_gid() click to toggle source
# File lib/dtmcli/saga.rb, line 14
def gen_gid
  @gid = IdGenerator.gen_gid(dtm_url)
end
submit() click to toggle source
# File lib/dtmcli/saga.rb, line 27
def submit
  tbody = {
    gid: gid,
    trans_type: TRANS_TYPE,
    steps: steps
  }
  dtm.submit(tbody)
end