Module: Packet::Client::Devices

Included in:
Packet::Client
Defined in:
lib/packet/client/devices.rb

Instance Method Summary collapse

Instance Method Details

#create_device(device) ⇒ Object



12
13
14
15
16
# File 'lib/packet/client/devices.rb', line 12

def create_device(device)
  post("projects/#{device.project_id}/devices", device.to_hash).tap do |response|
    device.update_attributes(response.body)
  end
end

#delete_device(device_or_id) ⇒ Object



24
25
26
27
28
29
30
31
# File 'lib/packet/client/devices.rb', line 24

def delete_device(device_or_id)
  id = if device_or_id.is_a?(Packet::Device)
         device_or_id.id
       else
         device_or_id
       end
  delete("devices/#{id}")
end

#get_device(id, *args) ⇒ Object



8
9
10
# File 'lib/packet/client/devices.rb', line 8

def get_device(id, *args)
  Packet::Device.new(get("devices/#{id}", *args).body, self)
end

#list_devices(project_id, *args) ⇒ Object



4
5
6
# File 'lib/packet/client/devices.rb', line 4

def list_devices(project_id, *args)
  get("projects/#{project_id}/devices", *args).body['devices'].map { |p| Packet::Device.new(p, self) }
end

#update_device(device) ⇒ Object



18
19
20
21
22
# File 'lib/packet/client/devices.rb', line 18

def update_device(device)
  patch("devices/#{device.id}", device.to_hash).tap do |response|
    device.update_attributes(response.body)
  end
end