Method: SDM::ApprovalWorkflows#create

Defined in:
lib/svc.rb

#create(approval_workflow, deadline: nil) ⇒ Object

Create creates a new approval workflow and requires a name and approval mode for the approval workflow.



1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
# File 'lib/svc.rb', line 1757

def create(
  approval_workflow,
  deadline: nil
)
  req = V1::ApprovalWorkflowCreateRequest.new()

  req.approval_workflow = Plumbing::convert_approval_workflow_to_plumbing(approval_workflow)
  tries = 0
  plumbing_response = nil
  loop do
    begin
      plumbing_response = @stub.create(req, metadata: @parent.("ApprovalWorkflows.Create", req), deadline: deadline)
    rescue => exception
      if (@parent.shouldRetry(tries, exception))
        tries + +@parent.jitterSleep(tries)
        next
      end
      raise Plumbing::convert_error_to_porcelain(exception)
    end
    break
  end

  resp = ApprovalWorkflowCreateResponse.new()
  resp.approval_workflow = Plumbing::convert_approval_workflow_to_porcelain(plumbing_response.approval_workflow)
  resp.rate_limit = Plumbing::(plumbing_response.rate_limit)
  resp
end