class Idcf::Cli::Service::Ilb::CheckJob

check_job

Attributes

api[R]

Public Class Methods

description() click to toggle source
# File lib/idcf/cli/service/ilb/check_job.rb, line 12
def description
  'Check job result'
end

Public Instance Methods

do(api, _o, job_id) click to toggle source

do

@param api [Idcf::Ilb::Lib::Api] @param _o [Hash] options @param job_id [String]

# File lib/idcf/cli/service/ilb/check_job.rb, line 22
def do(api, _o, job_id)
  @api = api
  job  = recurring_calling(:find, [job_id], &:present?)
  return nil if job['method'].casecmp('delete').zero?
  raise Idcf::Cli::Error::ApiError.new(@api.raw), 'Job Timeout.' if job.nil?
  true
end

Protected Instance Methods

find(id) click to toggle source
# File lib/idcf/cli/service/ilb/check_job.rb, line 32
def find(id)
  res = @api.do(:get_job, id)
  case res['job_status'].downcase
  when 'success'
    return res
  when 'failed'
    raise Idcf::Cli::Error::ApiError.new(@api.raw), 'API Failed.'
  end
  nil
end