Class: Verizon::AccountLevelCreateTriggerRequest

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

Overview

AccountLevelCreateTriggerRequest Model.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(trigger_name: SKIP, ecpd_id: SKIP, trigger_category: SKIP, data_trigger: SKIP, notification: SKIP, notification_type: SKIP, callback: SKIP, email_notification: SKIP, notification_group_name: SKIP, notification_frequency_factor: SKIP, notification_frequency_interval: SKIP, external_email_recipients: SKIP, sms_notification: SKIP, sms_numbers: SKIP, reminder: SKIP, severity: SKIP, active: SKIP) ⇒ AccountLevelCreateTriggerRequest

Returns a new instance of AccountLevelCreateTriggerRequest.



132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 132

def initialize(trigger_name: SKIP, ecpd_id: SKIP, trigger_category: SKIP,
               data_trigger: SKIP, notification: SKIP,
               notification_type: SKIP, callback: SKIP,
               email_notification: SKIP, notification_group_name: SKIP,
               notification_frequency_factor: SKIP,
               notification_frequency_interval: SKIP,
               external_email_recipients: SKIP, sms_notification: SKIP,
               sms_numbers: SKIP, reminder: SKIP, severity: SKIP,
               active: SKIP)
  @trigger_name = trigger_name unless trigger_name == SKIP
  @ecpd_id = ecpd_id unless ecpd_id == SKIP
  @trigger_category = trigger_category unless trigger_category == SKIP
  @data_trigger = data_trigger unless data_trigger == SKIP
  @notification = notification unless notification == SKIP
  @notification_type = notification_type unless notification_type == SKIP
  @callback = callback unless callback == SKIP
  @email_notification = email_notification unless email_notification == SKIP
  @notification_group_name = notification_group_name unless notification_group_name == SKIP
  unless notification_frequency_factor == SKIP
    @notification_frequency_factor =
      notification_frequency_factor
  end
  unless notification_frequency_interval == SKIP
    @notification_frequency_interval =
      notification_frequency_interval
  end
  unless external_email_recipients == SKIP
    @external_email_recipients =
      external_email_recipients
  end
  @sms_notification = sms_notification unless sms_notification == SKIP
  @sms_numbers = sms_numbers unless sms_numbers == SKIP
  @reminder = reminder unless reminder == SKIP
  @severity = severity unless severity == SKIP
  @active = active unless active == SKIP
end

Instance Attribute Details

#activeActive

A flag to indicate of the trigger is active, true, or not, false

Returns:



78
79
80
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 78

def active
  @active
end

#callbackTrueClass | FalseClass

The type of trigger being created or modified

Returns:

  • (TrueClass | FalseClass)


38
39
40
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 38

def callback
  @callback
end

#data_triggerDataTrigger

The type of trigger being created or modified

Returns:



26
27
28
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 26

def data_trigger
  @data_trigger
end

#ecpd_idString

The Enterprise Customer Profile Database ID

Returns:

  • (String)


18
19
20
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 18

def ecpd_id
  @ecpd_id
end

#email_notificationTrueClass | FalseClass

The type of trigger being created or modified

Returns:

  • (TrueClass | FalseClass)


42
43
44
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 42

def email_notification
  @email_notification
end

#external_email_recipientsString

The type of trigger being created or modified

Returns:

  • (String)


58
59
60
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 58

def external_email_recipients
  @external_email_recipients
end

#notificationNotificationarray

The type of trigger being created or modified

Returns:



30
31
32
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 30

def notification
  @notification
end

#notification_frequency_factorInteger

The type of trigger being created or modified

Returns:

  • (Integer)


50
51
52
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 50

def notification_frequency_factor
  @notification_frequency_factor
end

#notification_frequency_intervalString

The type of trigger being created or modified

Returns:

  • (String)


54
55
56
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 54

def notification_frequency_interval
  @notification_frequency_interval
end

#notification_group_nameString

The type of trigger being created or modified

Returns:

  • (String)


46
47
48
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 46

def notification_group_name
  @notification_group_name
end

#notification_typeString

The type of trigger being created or modified

Returns:

  • (String)


34
35
36
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 34

def notification_type
  @notification_type
end

#reminderTrueClass | FalseClass

The type of trigger being created or modified

Returns:

  • (TrueClass | FalseClass)


70
71
72
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 70

def reminder
  @reminder
end

#severityString

The type of trigger being created or modified

Returns:

  • (String)


74
75
76
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 74

def severity
  @severity
end

#sms_notificationTrueClass | FalseClass

The type of trigger being created or modified

Returns:

  • (TrueClass | FalseClass)


62
63
64
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 62

def sms_notification
  @sms_notification
end

#sms_numbersArray[Object]

The type of trigger being created or modified

Returns:

  • (Array[Object])


66
67
68
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 66

def sms_numbers
  @sms_numbers
end

#trigger_categoryTriggerCategory

The type of trigger being created or modified

Returns:



22
23
24
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 22

def trigger_category
  @trigger_category
end

#trigger_nameString

The user defined name of the trigger

Returns:

  • (String)


14
15
16
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 14

def trigger_name
  @trigger_name
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 170

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  trigger_name = hash.key?('triggerName') ? hash['triggerName'] : SKIP
  ecpd_id = hash.key?('ecpdId') ? hash['ecpdId'] : SKIP
  trigger_category =
    hash.key?('triggerCategory') ? hash['triggerCategory'] : SKIP
  data_trigger = DataTrigger.from_hash(hash['dataTrigger']) if hash['dataTrigger']
  notification = Notificationarray.from_hash(hash['notification']) if hash['notification']
  notification_type =
    hash.key?('notificationType') ? hash['notificationType'] : SKIP
  callback = hash.key?('callback') ? hash['callback'] : SKIP
  email_notification =
    hash.key?('emailNotification') ? hash['emailNotification'] : SKIP
  notification_group_name =
    hash.key?('notificationGroupName') ? hash['notificationGroupName'] : SKIP
  notification_frequency_factor =
    hash.key?('notificationFrequencyFactor') ? hash['notificationFrequencyFactor'] : SKIP
  notification_frequency_interval =
    hash.key?('notificationFrequencyInterval') ? hash['notificationFrequencyInterval'] : SKIP
  external_email_recipients =
    hash.key?('externalEmailRecipients') ? hash['externalEmailRecipients'] : SKIP
  sms_notification =
    hash.key?('smsNotification') ? hash['smsNotification'] : SKIP
  sms_numbers = hash.key?('smsNumbers') ? APIHelper.deserialize_union_type(
    UnionTypeLookUp.get(:AccountLevelCreateTriggerRequestSmsNumbers), hash['smsNumbers']
  ) : SKIP
  reminder = hash.key?('reminder') ? hash['reminder'] : SKIP
  severity = hash.key?('severity') ? hash['severity'] : SKIP
  active = hash.key?('active') ? hash['active'] : SKIP

  # Create object from extracted values.
  AccountLevelCreateTriggerRequest.new(trigger_name: trigger_name,
                                       ecpd_id: ecpd_id,
                                       trigger_category: trigger_category,
                                       data_trigger: data_trigger,
                                       notification: notification,
                                       notification_type: notification_type,
                                       callback: callback,
                                       email_notification: email_notification,
                                       notification_group_name: notification_group_name,
                                       notification_frequency_factor: notification_frequency_factor,
                                       notification_frequency_interval: notification_frequency_interval,
                                       external_email_recipients: external_email_recipients,
                                       sms_notification: sms_notification,
                                       sms_numbers: sms_numbers,
                                       reminder: reminder,
                                       severity: severity,
                                       active: active)
end

.namesObject

A mapping from model property names to API property names.



81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 81

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['trigger_name'] = 'triggerName'
  @_hash['ecpd_id'] = 'ecpdId'
  @_hash['trigger_category'] = 'triggerCategory'
  @_hash['data_trigger'] = 'dataTrigger'
  @_hash['notification'] = 'notification'
  @_hash['notification_type'] = 'notificationType'
  @_hash['callback'] = 'callback'
  @_hash['email_notification'] = 'emailNotification'
  @_hash['notification_group_name'] = 'notificationGroupName'
  @_hash['notification_frequency_factor'] = 'notificationFrequencyFactor'
  @_hash['notification_frequency_interval'] =
    'notificationFrequencyInterval'
  @_hash['external_email_recipients'] = 'externalEmailRecipients'
  @_hash['sms_notification'] = 'smsNotification'
  @_hash['sms_numbers'] = 'smsNumbers'
  @_hash['reminder'] = 'reminder'
  @_hash['severity'] = 'severity'
  @_hash['active'] = 'active'
  @_hash
end

.nullablesObject

An array for nullable fields



128
129
130
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 128

def self.nullables
  []
end

.optionalsObject

An array for optional fields



105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 105

def self.optionals
  %w[
    trigger_name
    ecpd_id
    trigger_category
    data_trigger
    notification
    notification_type
    callback
    email_notification
    notification_group_name
    notification_frequency_factor
    notification_frequency_interval
    external_email_recipients
    sms_notification
    sms_numbers
    reminder
    severity
    active
  ]
end

.validate(value) ⇒ Object

Validates an instance of the object from a given value.

Parameters:



224
225
226
227
228
229
230
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 224

def self.validate(value)
  return true if value.instance_of? self

  return false unless value.instance_of? Hash

  true
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



247
248
249
250
251
252
253
254
255
256
257
258
259
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 247

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} trigger_name: #{@trigger_name.inspect}, ecpd_id: #{@ecpd_id.inspect},"\
  " trigger_category: #{@trigger_category.inspect}, data_trigger: #{@data_trigger.inspect},"\
  " notification: #{@notification.inspect}, notification_type: #{@notification_type.inspect},"\
  " callback: #{@callback.inspect}, email_notification: #{@email_notification.inspect},"\
  " notification_group_name: #{@notification_group_name.inspect},"\
  " notification_frequency_factor: #{@notification_frequency_factor.inspect},"\
  " notification_frequency_interval: #{@notification_frequency_interval.inspect},"\
  " external_email_recipients: #{@external_email_recipients.inspect}, sms_notification:"\
  " #{@sms_notification.inspect}, sms_numbers: #{@sms_numbers.inspect}, reminder:"\
  " #{@reminder.inspect}, severity: #{@severity.inspect}, active: #{@active.inspect}>"
end

#to_sObject

Provides a human-readable string representation of the object.



233
234
235
236
237
238
239
240
241
242
243
244
# File 'lib/verizon/models/account_level_create_trigger_request.rb', line 233

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} trigger_name: #{@trigger_name}, ecpd_id: #{@ecpd_id}, trigger_category:"\
  " #{@trigger_category}, data_trigger: #{@data_trigger}, notification: #{@notification},"\
  " notification_type: #{@notification_type}, callback: #{@callback}, email_notification:"\
  " #{@email_notification}, notification_group_name: #{@notification_group_name},"\
  " notification_frequency_factor: #{@notification_frequency_factor},"\
  " notification_frequency_interval: #{@notification_frequency_interval},"\
  " external_email_recipients: #{@external_email_recipients}, sms_notification:"\
  " #{@sms_notification}, sms_numbers: #{@sms_numbers}, reminder: #{@reminder}, severity:"\
  " #{@severity}, active: #{@active}>"
end