class DataValidation::Job
Attributes
slug[R]
Public Class Methods
create(api, list)
click to toggle source
# File lib/data_validation/job.rb, line 5 def self.create(api, list) job = DataValidation::Job.new(api, list) job.create job end
get(api, list, slug)
click to toggle source
# File lib/data_validation/job.rb, line 11 def self.get(api, list, slug) job = DataValidation::Job.new(api, list) job.get(slug) job end
new(api, list)
click to toggle source
# File lib/data_validation/job.rb, line 17 def initialize(api, list) @api = api @list = list @slug = nil end
Public Instance Methods
create()
click to toggle source
# File lib/data_validation/job.rb, line 23 def create response = @api.post("list/#{@list.slug}/job/") if @api.valid_response?(response) raw = JSON.parse(response.body) raw_job = raw["job"][0] @slug = raw_job["slug"] else p response raise DataValidation::Error, "could not create job for list #{@list.slug}" end end
done?()
click to toggle source
# File lib/data_validation/job.rb, line 39 def done? response = @api.get("list/#{@list.slug}/job/#{@slug}/") if @api.valid_response?(response) raw = JSON.parse(response.body) raw_job = raw["job"][0] raw_pct = raw_job["pct_complete"] return raw_pct == 100 else raise DataValidationError, "could not check job progress for list #{@list.slug}, job #{@job.slug}" end end
get(slug)
click to toggle source
# File lib/data_validation/job.rb, line 35 def get(slug) @slug = slug end