Sha256: 7661335283b8c62480656ab299d5d9386275bb5fad80de51fbd73474332efc42

Contents?: true

Size: 1.27 KB

Versions: 20

Compression:

Stored size: 1.27 KB

Contents

require 'netbox_client_ruby/entity'
require 'netbox_client_ruby/api/dcim/device_type'
require 'netbox_client_ruby/api/dcim/device_role'
require 'netbox_client_ruby/api/tenancy/tenant'
require 'netbox_client_ruby/api/dcim/platform'
require 'netbox_client_ruby/api/dcim/site'
require 'netbox_client_ruby/api/dcim/rack'
require 'netbox_client_ruby/api/ipam/ip_address'

module NetboxClientRuby
  module DCIM
    class Device
      include Entity

      id id: :id
      deletable true
      path 'dcim/devices/:id.json'
      creation_path 'dcim/devices/'
      object_fields(
        device_type: proc { |raw_data| DeviceType.new raw_data['id'] },
        device_role: proc { |raw_data| DeviceRole.new raw_data['id'] },
        tenant: proc { |raw_data| Tenancy::Tenant.new raw_data['id'] },
        platform: proc { |raw_data| Platform.new raw_data['id'] },
        site: proc { |raw_data| Site.new raw_data['id'] },
        rack: proc { |raw_data| Rack.new raw_data['id'] },
        parent_device: proc { |raw_data| Device.new raw_data['id'] },
        primary_ip: proc { |raw_data| IPAM::IpAddress.new raw_data['id'] },
        primary_ip4: proc { |raw_data| IPAM::IpAddress.new raw_data['id'] },
        primary_ip6: proc { |raw_data| IPAM::IpAddress.new raw_data['id'] }
      )
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
netbox-client-ruby-0.5.0 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.4.10 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.4.9 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.4.7 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.4.6 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.4.3 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.4.2 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.4.1 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.4.0 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.3.1 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.3.0 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.2.3 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.2.2 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.2.1 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.2.0 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.1.4 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.1.3 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.1.2 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.1.1 lib/netbox_client_ruby/api/dcim/device.rb
netbox-client-ruby-0.1.0 lib/netbox_client_ruby/api/dcim/device.rb