Class: Verizon::V1DeviceListItem
- 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
-
#device_id ⇒ String
Device IMEI.
-
#reason ⇒ String
Additional details about the status.
-
#status ⇒ String
Whether the device was successfully added or removed from the campaign.
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
Instance Method Summary collapse
-
#initialize(device_id: SKIP, status: SKIP, reason: SKIP, additional_properties: nil) ⇒ V1DeviceListItem
constructor
A new instance of V1DeviceListItem.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(device_id: SKIP, status: SKIP, reason: SKIP, additional_properties: nil) ⇒ V1DeviceListItem
Returns a new instance of V1DeviceListItem.
49 50 51 52 53 54 55 56 57 58 |
# File 'lib/verizon/models/v1_device_list_item.rb', line 49 def initialize(device_id: SKIP, status: SKIP, reason: SKIP, additional_properties: nil) # Add additional model properties to the instance additional_properties = {} if additional_properties.nil? @device_id = device_id unless device_id == SKIP @status = status unless status == SKIP @reason = reason unless reason == SKIP @additional_properties = additional_properties end |
Instance Attribute Details
#device_id ⇒ String
Device IMEI.
16 17 18 |
# File 'lib/verizon/models/v1_device_list_item.rb', line 16 def device_id @device_id end |
#reason ⇒ String
Additional details about the status.
24 25 26 |
# File 'lib/verizon/models/v1_device_list_item.rb', line 24 def reason @reason end |
#status ⇒ String
Whether the device was successfully added or removed from the campaign.
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.
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/verizon/models/v1_device_list_item.rb', line 61 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 a new hash for additional properties, removing known properties. new_hash = hash.reject { |k, _| names.value?(k) } additional_properties = APIHelper.get_additional_properties( new_hash, proc { |value| value } ) # Create object from extracted values. V1DeviceListItem.new(device_id: device_id, status: status, reason: reason, additional_properties: additional_properties) end |
.names ⇒ Object
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 |
.nullables ⇒ Object
An array for nullable fields
45 46 47 |
# File 'lib/verizon/models/v1_device_list_item.rb', line 45 def self.nullables [] end |
.optionals ⇒ Object
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 |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
91 92 93 94 95 |
# File 'lib/verizon/models/v1_device_list_item.rb', line 91 def inspect class_name = self.class.name.split('::').last "<#{class_name} device_id: #{@device_id.inspect}, status: #{@status.inspect}, reason:"\ " #{@reason.inspect}, additional_properties: #{@additional_properties}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
84 85 86 87 88 |
# File 'lib/verizon/models/v1_device_list_item.rb', line 84 def to_s class_name = self.class.name.split('::').last "<#{class_name} device_id: #{@device_id}, status: #{@status}, reason: #{@reason},"\ " additional_properties: #{@additional_properties}>" end |