class CloudPrint::PrinterCollection

Attributes

client[R]

Public Class Methods

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

Public Instance Methods

all() click to toggle source
# File lib/cloudprint/printer_collection.rb, line 16
def all
  search()
end
find(printer_id) click to toggle source
# File lib/cloudprint/printer_collection.rb, line 10
def find(printer_id)
  response = client.connection.get('/printer', :printerid => printer_id, :printer_connection_status => true)
  first_printer_hash = response['printers'].first
  new_printer_from_hash(first_printer_hash)
end
new(opts) click to toggle source
# File lib/cloudprint/printer_collection.rb, line 44
def new opts
  Printer.new(opts.merge(client: client))
end
new_printer_from_hash(hash) click to toggle source
# File lib/cloudprint/printer_collection.rb, line 48
def new_printer_from_hash(hash)
  Printer.new(
    client: client,
    id: hash['id'],
    status: hash['status'],
    name: hash['name'],
    display_name: hash['displayName'],
    tags: hash['tags'],
    connection_status: hash['connectionStatus'],
    description: hash['description'],
    capabilities: hash['capabilities']
    )
end
search_all(query = nil, conditions = {})
Alias for: search
search_dormant(q = nil, conditions = {}) click to toggle source
# File lib/cloudprint/printer_collection.rb, line 40
def search_dormant(q = nil, conditions = {})
  search_with_status(q, 'DORMANT', conditions)
end
search_offline(q = nil, conditions = {}) click to toggle source
# File lib/cloudprint/printer_collection.rb, line 36
def search_offline(q = nil, conditions = {})
  search_with_status(q, 'OFFLINE', conditions)
end
search_online(q = nil, conditions = {}) click to toggle source
# File lib/cloudprint/printer_collection.rb, line 28
def search_online(q = nil, conditions = {})
  search_with_status(q, 'ONLINE', conditions)
end
search_unknown(q = nil, conditions = {}) click to toggle source
# File lib/cloudprint/printer_collection.rb, line 32
def search_unknown(q = nil, conditions = {})
  search_with_status(q, 'UNKNOWN', conditions)
end

Private Instance Methods

search_with_status(q, status, conditions) click to toggle source
# File lib/cloudprint/printer_collection.rb, line 64
def search_with_status(q, status, conditions)
  search(q, conditions.merge(connection_status: status))
end