class PredicsisMlSdk::Job

Attributes

id[RW]

Public Class Methods

all(token = bearer_token) click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 14
def self.all(token = bearer_token)
  data = Requests.get_jobs(token)
  data.each_with_object([]) do |e, a|
    a << new(e['id'], token).tap do |resource|
      resource.send(:define_attributes, e)
    end
  end
end
get(id, token = bearer_token) click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 10
def self.get(id, token = bearer_token)
  new(id, token).get
end
new(id, token = bearer_token) click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 23
def initialize(id, token = bearer_token)
  @token = token
  @id = id
end

Public Instance Methods

delete() click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 34
def delete
  Requests.delete_job(token, id)
  self
end
failed?() click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 48
def failed?
  status.eql? 'failed'
end
get() click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 28
def get
  data = Requests.get_job(token, id)
  define_attributes(data)
  self
end
next_job() click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 39
def next_job
  return nil unless next_job_id
  @next_job ||= Job.get(next_job_id, token)
end
pending?() click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 52
def pending?
  %w(pending processing).include? status
end
succeeded?() click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 44
def succeeded?
  status.eql? 'completed'
end
terminated?() click to toggle source
# File lib/predicsis_ml_sdk/job.rb, line 56
def terminated?
  if failed?
    fail JobError.new(errors, id, action)
  elsif succeeded?
    next_job ? next_job.terminated? : true
  else
    false
  end
end