class CloudPrint::PrintJobCollection

Attributes

client[RW]

Public Class Methods

new(client) click to toggle source
# File lib/cloudprint/print_job_collection.rb, line 6
def initialize client
  @client = client
end

Public Instance Methods

all() click to toggle source
# File lib/cloudprint/print_job_collection.rb, line 16
def all
  fetch_jobs.map { |j| new_from_response j }
end
find(jobid) click to toggle source
# File lib/cloudprint/print_job_collection.rb, line 10
def find(jobid)
  job = find_by_id(jobid)
  return nil if job.nil?
  new_from_response job
end
find_by_id(id) click to toggle source
# File lib/cloudprint/print_job_collection.rb, line 28
def find_by_id(id)
  response = client.connection.post('/job', :jobid => id) || {}
  return nil if response.nil? || response["job"].nil?
  response["job"]
end
new(data) click to toggle source
# File lib/cloudprint/print_job_collection.rb, line 20
def new data
  PrintJob.new client, data
end
new_from_response(response) click to toggle source
# File lib/cloudprint/print_job_collection.rb, line 24
def new_from_response response
  PrintJob.new_from_response client, response
end

Private Instance Methods

fetch_jobs() click to toggle source
# File lib/cloudprint/print_job_collection.rb, line 36
def fetch_jobs
  response = client.connection.get('/jobs') || {}
  response['jobs'] || []
end