Class: Verizon::V1DeviceListItem

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/verizon/models/v1_device_list_item.rb

Overview

A JSON object for each device that was included in the request, showing the device IMEI, the status of the addition or removal, and additional information about the status.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#to_hash, #to_json

Constructor Details

#initialize(device_id = SKIP, status = SKIP, reason = SKIP) ⇒ V1DeviceListItem

Returns a new instance of V1DeviceListItem.



49
50
51
52
53
# File 'lib/verizon/models/v1_device_list_item.rb', line 49

def initialize(device_id = SKIP, status = SKIP, reason = SKIP)
  @device_id = device_id unless device_id == SKIP
  @status = status unless status == SKIP
  @reason = reason unless reason == SKIP
end

Instance Attribute Details

#device_idString

Device IMEI.

Returns:

  • (String)


16
17
18
# File 'lib/verizon/models/v1_device_list_item.rb', line 16

def device_id
  @device_id
end

#reasonString

Additional details about the status.

Returns:

  • (String)


24
25
26
# File 'lib/verizon/models/v1_device_list_item.rb', line 24

def reason
  @reason
end

#statusString

Whether the device was successfully added or removed from the campaign.

Returns:

  • (String)


20
21
22
# File 'lib/verizon/models/v1_device_list_item.rb', line 20

def status
  @status
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/verizon/models/v1_device_list_item.rb', line 56

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  device_id = hash.key?('deviceId') ? hash['deviceId'] : SKIP
  status = hash.key?('status') ? hash['status'] : SKIP
  reason = hash.key?('Reason') ? hash['Reason'] : SKIP

  # Create object from extracted values.
  V1DeviceListItem.new(device_id,
                       status,
                       reason)
end

.namesObject

A mapping from model property names to API property names.



27
28
29
30
31
32
33
# File 'lib/verizon/models/v1_device_list_item.rb', line 27

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['device_id'] = 'deviceId'
  @_hash['status'] = 'status'
  @_hash['reason'] = 'Reason'
  @_hash
end

.nullablesObject

An array for nullable fields



45
46
47
# File 'lib/verizon/models/v1_device_list_item.rb', line 45

def self.nullables
  []
end

.optionalsObject

An array for optional fields



36
37
38
39
40
41
42
# File 'lib/verizon/models/v1_device_list_item.rb', line 36

def self.optionals
  %w[
    device_id
    status
    reason
  ]
end