Class: Verizon::AccountLicenseDeviceListItem

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

Overview

The list of devices that have licenses assigned, including the date and time of when each license was assigned.

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, assignment_time = SKIP) ⇒ AccountLicenseDeviceListItem

Returns a new instance of AccountLicenseDeviceListItem.



43
44
45
46
# File 'lib/verizon/models/account_license_device_list_item.rb', line 43

def initialize(device_id = SKIP, assignment_time = SKIP)
  @device_id = device_id unless device_id == SKIP
  @assignment_time = assignment_time unless assignment_time == SKIP
end

Instance Attribute Details

#assignment_timeDateTime

Timestamp of when a license was assigned to the device.

Returns:

  • (DateTime)


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

def assignment_time
  @assignment_time
end

#device_idString

Device IMEI.

Returns:

  • (String)


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

def device_id
  @device_id
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'lib/verizon/models/account_license_device_list_item.rb', line 49

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  device_id = hash.key?('deviceId') ? hash['deviceId'] : SKIP
  assignment_time = if hash.key?('assignmentTime')
                      (DateTimeHelper.from_rfc3339(hash['assignmentTime']) if hash['assignmentTime'])
                    else
                      SKIP
                    end

  # Create object from extracted values.
  AccountLicenseDeviceListItem.new(device_id,
                                   assignment_time)
end

.namesObject

A mapping from model property names to API property names.



23
24
25
26
27
28
# File 'lib/verizon/models/account_license_device_list_item.rb', line 23

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['device_id'] = 'deviceId'
  @_hash['assignment_time'] = 'assignmentTime'
  @_hash
end

.nullablesObject

An array for nullable fields



39
40
41
# File 'lib/verizon/models/account_license_device_list_item.rb', line 39

def self.nullables
  []
end

.optionalsObject

An array for optional fields



31
32
33
34
35
36
# File 'lib/verizon/models/account_license_device_list_item.rb', line 31

def self.optionals
  %w[
    device_id
    assignment_time
  ]
end

Instance Method Details

#to_custom_assignment_timeObject



65
66
67
# File 'lib/verizon/models/account_license_device_list_item.rb', line 65

def to_custom_assignment_time
  DateTimeHelper.to_rfc3339(assignment_time)
end