purecloudplatformclientv2 44.0.0 → 45.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/ADFS.md +1 -1
  4. data/docs/AnalyticsEvaluation.md +1 -1
  5. data/docs/AnalyticsSurvey.md +2 -1
  6. data/docs/ArchitectApi.md +52 -127
  7. data/docs/ContactListDivisionView.md +20 -0
  8. data/docs/ContactListDivisionViewListing.md +22 -0
  9. data/docs/ContactListNotification.md +1 -0
  10. data/docs/ConversationQuery.md +1 -1
  11. data/docs/CreateOutboundMessagingConversationRequest.md +1 -1
  12. data/docs/CreateWorkPlan.md +2 -0
  13. data/docs/CustomerInteractionCenter.md +1 -1
  14. data/docs/DataExportNotificationNotification.md +1 -0
  15. data/docs/DncListNotification.md +1 -0
  16. data/docs/DncListNotificationUriReference.md +14 -0
  17. data/docs/GSuite.md +1 -1
  18. data/docs/HelpLink.md +15 -0
  19. data/docs/IdentityNow.md +1 -1
  20. data/docs/IntegrationType.md +8 -0
  21. data/docs/IntradayDataUpdateNotification.md +2 -2
  22. data/docs/Okta.md +1 -1
  23. data/docs/OneLogin.md +1 -1
  24. data/docs/OutboundApi.md +152 -0
  25. data/docs/PingIdentity.md +1 -1
  26. data/docs/QualityApi.md +66 -0
  27. data/docs/ReportingExportJobResponse.md +1 -0
  28. data/docs/RoutingApi.md +74 -0
  29. data/docs/Salesforce.md +1 -1
  30. data/docs/UserScheduleAdherenceUpdateNotification.md +2 -2
  31. data/docs/WfmAgentScheduleUpdateNotificationNotification.md +18 -0
  32. data/docs/WfmAgentScheduleUpdateNotificationNotificationActivities.md +18 -0
  33. data/docs/WfmAgentScheduleUpdateNotificationNotificationFullDayTimeOffMarkers.md +19 -0
  34. data/docs/WfmAgentScheduleUpdateNotificationNotificationShifts.md +15 -0
  35. data/docs/WfmAgentScheduleUpdateNotificationNotificationUpdates.md +14 -0
  36. data/docs/WfmAgentScheduleUpdateNotificationNotificationUserReference.md +13 -0
  37. data/docs/WfmAgentScheduleUpdateNotificationNotificationWfmAgentScheduleUpdate.md +14 -0
  38. data/docs/WfmAgentScheduleUpdateNotificationNotificationWfmFullDayTimeOffMarker.md +19 -0
  39. data/docs/WfmAgentScheduleUpdateNotificationNotificationWfmScheduleActivity.md +18 -0
  40. data/docs/WfmAgentScheduleUpdateNotificationNotificationWfmScheduleShift.md +15 -0
  41. data/docs/WfmScheduleNotificationNotification.md +1 -0
  42. data/docs/WorkPlan.md +2 -0
  43. data/docs/WorkPlanListItemResponse.md +16 -5
  44. data/docs/WorkforceManagementApi.md +2 -2
  45. data/lib/purecloudplatformclientv2.rb +14 -3
  46. data/lib/purecloudplatformclientv2/api/outbound_api.rb +230 -0
  47. data/lib/purecloudplatformclientv2/api/quality_api.rb +66 -0
  48. data/lib/purecloudplatformclientv2/api/routing_api.rb +100 -0
  49. data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +3 -7
  50. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  51. data/lib/purecloudplatformclientv2/models/adfs.rb +12 -12
  52. data/lib/purecloudplatformclientv2/models/aggregate_metric_data.rb +2 -2
  53. data/lib/purecloudplatformclientv2/models/analytics_evaluation.rb +2 -2
  54. data/lib/purecloudplatformclientv2/models/analytics_query_predicate.rb +4 -4
  55. data/lib/purecloudplatformclientv2/models/analytics_survey.rb +34 -8
  56. data/lib/purecloudplatformclientv2/models/contact_list_division_view.rb +397 -0
  57. data/lib/purecloudplatformclientv2/models/contact_list_division_view_listing.rb +428 -0
  58. data/lib/purecloudplatformclientv2/models/contact_list_notification.rb +26 -1
  59. data/lib/purecloudplatformclientv2/models/conversation_query.rb +1 -1
  60. data/lib/purecloudplatformclientv2/models/create_outbound_messaging_conversation_request.rb +1 -1
  61. data/lib/purecloudplatformclientv2/models/create_work_plan.rb +53 -1
  62. data/lib/purecloudplatformclientv2/models/customer_interaction_center.rb +12 -12
  63. data/lib/purecloudplatformclientv2/models/data_export_notification_notification.rb +31 -6
  64. data/lib/purecloudplatformclientv2/models/dnc_list_notification.rb +26 -1
  65. data/lib/purecloudplatformclientv2/models/dnc_list_notification_uri_reference.rb +226 -0
  66. data/lib/purecloudplatformclientv2/models/document_audit.rb +2 -2
  67. data/lib/purecloudplatformclientv2/models/g_suite.rb +12 -12
  68. data/lib/purecloudplatformclientv2/models/{intraday_data_update_notification_date_time.rb → help_link.rb} +24 -45
  69. data/lib/purecloudplatformclientv2/models/identity_now.rb +12 -12
  70. data/lib/purecloudplatformclientv2/models/integration_type.rb +211 -1
  71. data/lib/purecloudplatformclientv2/models/intraday_data_update_notification.rb +2 -2
  72. data/lib/purecloudplatformclientv2/models/message_data.rb +2 -2
  73. data/lib/purecloudplatformclientv2/models/message_details.rb +2 -2
  74. data/lib/purecloudplatformclientv2/models/okta.rb +12 -12
  75. data/lib/purecloudplatformclientv2/models/one_login.rb +12 -12
  76. data/lib/purecloudplatformclientv2/models/ping_identity.rb +12 -12
  77. data/lib/purecloudplatformclientv2/models/reporting_export_job_response.rb +34 -3
  78. data/lib/purecloudplatformclientv2/models/salesforce.rb +12 -12
  79. data/lib/purecloudplatformclientv2/models/user_schedule_adherence_update_notification.rb +2 -2
  80. data/lib/purecloudplatformclientv2/models/wfm_agent_schedule_update_notification_notification.rb +332 -0
  81. data/lib/purecloudplatformclientv2/models/wfm_agent_schedule_update_notification_notification_activities.rb +326 -0
  82. data/lib/purecloudplatformclientv2/models/wfm_agent_schedule_update_notification_notification_full_day_time_off_markers.rb +351 -0
  83. data/lib/purecloudplatformclientv2/models/{intraday_data_update_notification_start_date.rb → wfm_agent_schedule_update_notification_notification_shifts.rb} +22 -45
  84. data/lib/purecloudplatformclientv2/models/wfm_agent_schedule_update_notification_notification_updates.rb +242 -0
  85. data/lib/purecloudplatformclientv2/models/wfm_agent_schedule_update_notification_notification_user_reference.rb +201 -0
  86. data/lib/purecloudplatformclientv2/models/wfm_agent_schedule_update_notification_notification_wfm_agent_schedule_update.rb +242 -0
  87. data/lib/purecloudplatformclientv2/models/wfm_agent_schedule_update_notification_notification_wfm_full_day_time_off_marker.rb +351 -0
  88. data/lib/purecloudplatformclientv2/models/wfm_agent_schedule_update_notification_notification_wfm_schedule_activity.rb +326 -0
  89. data/lib/purecloudplatformclientv2/models/{user_schedule_adherence_update_notification_date_time.rb → wfm_agent_schedule_update_notification_notification_wfm_schedule_shift.rb} +22 -45
  90. data/lib/purecloudplatformclientv2/models/wfm_schedule_notification_notification.rb +28 -3
  91. data/lib/purecloudplatformclientv2/models/work_plan.rb +53 -1
  92. data/lib/purecloudplatformclientv2/models/work_plan_list_item_response.rb +313 -18
  93. data/lib/purecloudplatformclientv2/version.rb +1 -1
  94. metadata +30 -8
  95. data/docs/IntradayDataUpdateNotificationDateTime.md +0 -16
  96. data/docs/IntradayDataUpdateNotificationStartDate.md +0 -16
  97. data/docs/UserScheduleAdherenceUpdateNotificationDateTime.md +0 -16
@@ -25,10 +25,10 @@ module PureCloud
25
25
 
26
26
  attr_accessor :certificate
27
27
 
28
- attr_accessor :issuer_uri
29
-
30
28
  attr_accessor :sso_target_uri
31
29
 
30
+ attr_accessor :issuer_uri
31
+
32
32
  attr_accessor :disabled
33
33
 
34
34
  # The URI for this object
@@ -44,10 +44,10 @@ module PureCloud
44
44
 
45
45
  :'certificate' => :'certificate',
46
46
 
47
- :'issuer_uri' => :'issuerURI',
48
-
49
47
  :'sso_target_uri' => :'ssoTargetURI',
50
48
 
49
+ :'issuer_uri' => :'issuerURI',
50
+
51
51
  :'disabled' => :'disabled',
52
52
 
53
53
  :'self_uri' => :'selfUri'
@@ -65,10 +65,10 @@ module PureCloud
65
65
 
66
66
  :'certificate' => :'String',
67
67
 
68
- :'issuer_uri' => :'String',
69
-
70
68
  :'sso_target_uri' => :'String',
71
69
 
70
+ :'issuer_uri' => :'String',
71
+
72
72
  :'disabled' => :'BOOLEAN',
73
73
 
74
74
  :'self_uri' => :'String'
@@ -112,19 +112,19 @@ module PureCloud
112
112
  end
113
113
 
114
114
 
115
- if attributes.has_key?(:'issuerURI')
115
+ if attributes.has_key?(:'ssoTargetURI')
116
116
 
117
117
 
118
- self.issuer_uri = attributes[:'issuerURI']
118
+ self.sso_target_uri = attributes[:'ssoTargetURI']
119
119
 
120
120
 
121
121
  end
122
122
 
123
123
 
124
- if attributes.has_key?(:'ssoTargetURI')
124
+ if attributes.has_key?(:'issuerURI')
125
125
 
126
126
 
127
- self.sso_target_uri = attributes[:'ssoTargetURI']
127
+ self.issuer_uri = attributes[:'issuerURI']
128
128
 
129
129
 
130
130
  end
@@ -237,8 +237,8 @@ module PureCloud
237
237
  id == o.id &&
238
238
  name == o.name &&
239
239
  certificate == o.certificate &&
240
- issuer_uri == o.issuer_uri &&
241
240
  sso_target_uri == o.sso_target_uri &&
241
+ issuer_uri == o.issuer_uri &&
242
242
  disabled == o.disabled &&
243
243
  self_uri == o.self_uri
244
244
  end
@@ -252,7 +252,7 @@ module PureCloud
252
252
  # Calculates hash code according to all attributes.
253
253
  # @return [Fixnum] Hash code
254
254
  def hash
255
- [id, name, certificate, issuer_uri, sso_target_uri, disabled, self_uri].hash
255
+ [id, name, certificate, sso_target_uri, issuer_uri, disabled, self_uri].hash
256
256
  end
257
257
 
258
258
  # build the object from hash
@@ -27,10 +27,10 @@ module PureCloud
27
27
 
28
28
  attr_accessor :certificate
29
29
 
30
- attr_accessor :issuer_uri
31
-
32
30
  attr_accessor :sso_target_uri
33
31
 
32
+ attr_accessor :issuer_uri
33
+
34
34
  attr_accessor :disabled
35
35
 
36
36
  # The URI for this object
@@ -48,10 +48,10 @@ module PureCloud
48
48
 
49
49
  :'certificate' => :'certificate',
50
50
 
51
- :'issuer_uri' => :'issuerURI',
52
-
53
51
  :'sso_target_uri' => :'ssoTargetURI',
54
52
 
53
+ :'issuer_uri' => :'issuerURI',
54
+
55
55
  :'disabled' => :'disabled',
56
56
 
57
57
  :'self_uri' => :'selfUri'
@@ -71,10 +71,10 @@ module PureCloud
71
71
 
72
72
  :'certificate' => :'String',
73
73
 
74
- :'issuer_uri' => :'String',
75
-
76
74
  :'sso_target_uri' => :'String',
77
75
 
76
+ :'issuer_uri' => :'String',
77
+
78
78
  :'disabled' => :'BOOLEAN',
79
79
 
80
80
  :'self_uri' => :'String'
@@ -127,19 +127,19 @@ module PureCloud
127
127
  end
128
128
 
129
129
 
130
- if attributes.has_key?(:'issuerURI')
130
+ if attributes.has_key?(:'ssoTargetURI')
131
131
 
132
132
 
133
- self.issuer_uri = attributes[:'issuerURI']
133
+ self.sso_target_uri = attributes[:'ssoTargetURI']
134
134
 
135
135
 
136
136
  end
137
137
 
138
138
 
139
- if attributes.has_key?(:'ssoTargetURI')
139
+ if attributes.has_key?(:'issuerURI')
140
140
 
141
141
 
142
- self.sso_target_uri = attributes[:'ssoTargetURI']
142
+ self.issuer_uri = attributes[:'issuerURI']
143
143
 
144
144
 
145
145
  end
@@ -262,8 +262,8 @@ module PureCloud
262
262
  name == o.name &&
263
263
  relying_party_identifier == o.relying_party_identifier &&
264
264
  certificate == o.certificate &&
265
- issuer_uri == o.issuer_uri &&
266
265
  sso_target_uri == o.sso_target_uri &&
266
+ issuer_uri == o.issuer_uri &&
267
267
  disabled == o.disabled &&
268
268
  self_uri == o.self_uri
269
269
  end
@@ -277,7 +277,7 @@ module PureCloud
277
277
  # Calculates hash code according to all attributes.
278
278
  # @return [Fixnum] Hash code
279
279
  def hash
280
- [id, name, relying_party_identifier, certificate, issuer_uri, sso_target_uri, disabled, self_uri].hash
280
+ [id, name, relying_party_identifier, certificate, sso_target_uri, issuer_uri, disabled, self_uri].hash
281
281
  end
282
282
 
283
283
  # build the object from hash
@@ -62,6 +62,9 @@ module PureCloud
62
62
  # The locale use for localization of the exported data, i.e. en-us, es-mx
63
63
  attr_accessor :locale
64
64
 
65
+ # The percentage of the job that has completed processing
66
+ attr_accessor :percentage_complete
67
+
65
68
  # The URI for this object
66
69
  attr_accessor :self_uri
67
70
 
@@ -99,6 +102,8 @@ module PureCloud
99
102
 
100
103
  :'locale' => :'locale',
101
104
 
105
+ :'percentage_complete' => :'percentageComplete',
106
+
102
107
  :'self_uri' => :'selfUri'
103
108
 
104
109
  }
@@ -138,6 +143,8 @@ module PureCloud
138
143
 
139
144
  :'locale' => :'String',
140
145
 
146
+ :'percentage_complete' => :'Float',
147
+
141
148
  :'self_uri' => :'String'
142
149
 
143
150
  }
@@ -287,6 +294,15 @@ module PureCloud
287
294
  end
288
295
 
289
296
 
297
+ if attributes.has_key?(:'percentageComplete')
298
+
299
+
300
+ self.percentage_complete = attributes[:'percentageComplete']
301
+
302
+
303
+ end
304
+
305
+
290
306
  if attributes.has_key?(:'selfUri')
291
307
 
292
308
 
@@ -326,7 +342,7 @@ module PureCloud
326
342
 
327
343
 
328
344
 
329
- allowed_values = ["SUBMITTED", "RUNNING", "COMPLETED", "FAILED"]
345
+ allowed_values = ["SUBMITTED", "RUNNING", "CANCELLING", "CANCELLED", "COMPLETED", "FAILED"]
330
346
  if @status && !allowed_values.include?(@status)
331
347
  return false
332
348
  end
@@ -437,6 +453,15 @@ module PureCloud
437
453
 
438
454
 
439
455
 
456
+ if @percentage_complete.nil?
457
+ return false
458
+ end
459
+
460
+
461
+
462
+
463
+
464
+
440
465
 
441
466
 
442
467
 
@@ -457,7 +482,7 @@ module PureCloud
457
482
  # Custom attribute writer method checking allowed values (enum).
458
483
  # @param [Object] status Object to be assigned
459
484
  def status=(status)
460
- allowed_values = ["SUBMITTED", "RUNNING", "COMPLETED", "FAILED"]
485
+ allowed_values = ["SUBMITTED", "RUNNING", "CANCELLING", "CANCELLED", "COMPLETED", "FAILED"]
461
486
  if status && !allowed_values.include?(status)
462
487
  fail ArgumentError, "invalid value for 'status', must be one of #{allowed_values}."
463
488
  end
@@ -553,6 +578,11 @@ module PureCloud
553
578
 
554
579
 
555
580
 
581
+
582
+
583
+
584
+
585
+
556
586
 
557
587
 
558
588
 
@@ -579,6 +609,7 @@ module PureCloud
579
609
  created_date_time == o.created_date_time &&
580
610
  modified_date_time == o.modified_date_time &&
581
611
  locale == o.locale &&
612
+ percentage_complete == o.percentage_complete &&
582
613
  self_uri == o.self_uri
583
614
  end
584
615
 
@@ -591,7 +622,7 @@ module PureCloud
591
622
  # Calculates hash code according to all attributes.
592
623
  # @return [Fixnum] Hash code
593
624
  def hash
594
- [id, name, status, time_zone, export_format, interval, download_url, view_type, export_error_messages_type, period, filter, read, created_date_time, modified_date_time, locale, self_uri].hash
625
+ [id, name, status, time_zone, export_format, interval, download_url, view_type, export_error_messages_type, period, filter, read, created_date_time, modified_date_time, locale, percentage_complete, self_uri].hash
595
626
  end
596
627
 
597
628
  # build the object from hash
@@ -25,10 +25,10 @@ module PureCloud
25
25
 
26
26
  attr_accessor :certificate
27
27
 
28
- attr_accessor :issuer_uri
29
-
30
28
  attr_accessor :sso_target_uri
31
29
 
30
+ attr_accessor :issuer_uri
31
+
32
32
  attr_accessor :disabled
33
33
 
34
34
  # The URI for this object
@@ -44,10 +44,10 @@ module PureCloud
44
44
 
45
45
  :'certificate' => :'certificate',
46
46
 
47
- :'issuer_uri' => :'issuerURI',
48
-
49
47
  :'sso_target_uri' => :'ssoTargetURI',
50
48
 
49
+ :'issuer_uri' => :'issuerURI',
50
+
51
51
  :'disabled' => :'disabled',
52
52
 
53
53
  :'self_uri' => :'selfUri'
@@ -65,10 +65,10 @@ module PureCloud
65
65
 
66
66
  :'certificate' => :'String',
67
67
 
68
- :'issuer_uri' => :'String',
69
-
70
68
  :'sso_target_uri' => :'String',
71
69
 
70
+ :'issuer_uri' => :'String',
71
+
72
72
  :'disabled' => :'BOOLEAN',
73
73
 
74
74
  :'self_uri' => :'String'
@@ -112,19 +112,19 @@ module PureCloud
112
112
  end
113
113
 
114
114
 
115
- if attributes.has_key?(:'issuerURI')
115
+ if attributes.has_key?(:'ssoTargetURI')
116
116
 
117
117
 
118
- self.issuer_uri = attributes[:'issuerURI']
118
+ self.sso_target_uri = attributes[:'ssoTargetURI']
119
119
 
120
120
 
121
121
  end
122
122
 
123
123
 
124
- if attributes.has_key?(:'ssoTargetURI')
124
+ if attributes.has_key?(:'issuerURI')
125
125
 
126
126
 
127
- self.sso_target_uri = attributes[:'ssoTargetURI']
127
+ self.issuer_uri = attributes[:'issuerURI']
128
128
 
129
129
 
130
130
  end
@@ -237,8 +237,8 @@ module PureCloud
237
237
  id == o.id &&
238
238
  name == o.name &&
239
239
  certificate == o.certificate &&
240
- issuer_uri == o.issuer_uri &&
241
240
  sso_target_uri == o.sso_target_uri &&
241
+ issuer_uri == o.issuer_uri &&
242
242
  disabled == o.disabled &&
243
243
  self_uri == o.self_uri
244
244
  end
@@ -252,7 +252,7 @@ module PureCloud
252
252
  # Calculates hash code according to all attributes.
253
253
  # @return [Fixnum] Hash code
254
254
  def hash
255
- [id, name, certificate, issuer_uri, sso_target_uri, disabled, self_uri].hash
255
+ [id, name, certificate, sso_target_uri, issuer_uri, disabled, self_uri].hash
256
256
  end
257
257
 
258
258
  # build the object from hash
@@ -91,9 +91,9 @@ module PureCloud
91
91
 
92
92
  :'impact' => :'String',
93
93
 
94
- :'adherence_change_time' => :'IntradayDataUpdateNotificationStartDate',
94
+ :'adherence_change_time' => :'DateTime',
95
95
 
96
- :'presence_update_time' => :'UserScheduleAdherenceUpdateNotificationDateTime'
96
+ :'presence_update_time' => :'DateTime'
97
97
 
98
98
  }
99
99
  end
@@ -0,0 +1,332 @@
1
+ =begin
2
+ PureCloud Platform API
3
+
4
+ With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more.
5
+
6
+ OpenAPI spec version: v2
7
+ Contact: DeveloperEvangelists@genesys.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ License: ININ
11
+ http://www.inin.com
12
+
13
+ Terms of Service: https://developer.mypurecloud.com/tos
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class WfmAgentScheduleUpdateNotificationNotification
21
+ attr_accessor :user
22
+
23
+ attr_accessor :start_date
24
+
25
+ attr_accessor :end_date
26
+
27
+ attr_accessor :shifts
28
+
29
+ attr_accessor :full_day_time_off_markers
30
+
31
+ attr_accessor :updates
32
+
33
+ # Attribute mapping from ruby-style variable name to JSON key.
34
+ def self.attribute_map
35
+ {
36
+
37
+ :'user' => :'user',
38
+
39
+ :'start_date' => :'startDate',
40
+
41
+ :'end_date' => :'endDate',
42
+
43
+ :'shifts' => :'shifts',
44
+
45
+ :'full_day_time_off_markers' => :'fullDayTimeOffMarkers',
46
+
47
+ :'updates' => :'updates'
48
+
49
+ }
50
+ end
51
+
52
+ # Attribute type mapping.
53
+ def self.swagger_types
54
+ {
55
+
56
+ :'user' => :'DocumentDataV2NotificationWorkspace',
57
+
58
+ :'start_date' => :'DateTime',
59
+
60
+ :'end_date' => :'DateTime',
61
+
62
+ :'shifts' => :'Array<WfmAgentScheduleUpdateNotificationNotificationShifts>',
63
+
64
+ :'full_day_time_off_markers' => :'Array<WfmAgentScheduleUpdateNotificationNotificationFullDayTimeOffMarkers>',
65
+
66
+ :'updates' => :'Array<WfmAgentScheduleUpdateNotificationNotificationUpdates>'
67
+
68
+ }
69
+ end
70
+
71
+ # Initializes the object
72
+ # @param [Hash] attributes Model attributes in the form of hash
73
+ def initialize(attributes = {})
74
+ return unless attributes.is_a?(Hash)
75
+
76
+ # convert string to symbol for hash key
77
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
78
+
79
+
80
+ if attributes.has_key?(:'user')
81
+
82
+
83
+ self.user = attributes[:'user']
84
+
85
+
86
+ end
87
+
88
+
89
+ if attributes.has_key?(:'startDate')
90
+
91
+
92
+ self.start_date = attributes[:'startDate']
93
+
94
+
95
+ end
96
+
97
+
98
+ if attributes.has_key?(:'endDate')
99
+
100
+
101
+ self.end_date = attributes[:'endDate']
102
+
103
+
104
+ end
105
+
106
+
107
+ if attributes.has_key?(:'shifts')
108
+
109
+ if (value = attributes[:'shifts']).is_a?(Array)
110
+ self.shifts = value
111
+ end
112
+
113
+
114
+
115
+ end
116
+
117
+
118
+ if attributes.has_key?(:'fullDayTimeOffMarkers')
119
+
120
+ if (value = attributes[:'fullDayTimeOffMarkers']).is_a?(Array)
121
+ self.full_day_time_off_markers = value
122
+ end
123
+
124
+
125
+
126
+ end
127
+
128
+
129
+ if attributes.has_key?(:'updates')
130
+
131
+ if (value = attributes[:'updates']).is_a?(Array)
132
+ self.updates = value
133
+ end
134
+
135
+
136
+
137
+ end
138
+
139
+
140
+ end
141
+
142
+ # Show invalid properties with the reasons. Usually used together with valid?
143
+ # @return Array for valid properies with the reasons
144
+ def list_invalid_properties
145
+ invalid_properties = Array.new
146
+
147
+
148
+ return invalid_properties
149
+ end
150
+
151
+ # Check to see if the all the properties in the model are valid
152
+ # @return true if the model is valid
153
+ def valid?
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+
179
+ end
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
+ # Checks equality by comparing each attribute.
213
+ # @param [Object] Object to be compared
214
+ def ==(o)
215
+ return true if self.equal?(o)
216
+ self.class == o.class &&
217
+ user == o.user &&
218
+ start_date == o.start_date &&
219
+ end_date == o.end_date &&
220
+ shifts == o.shifts &&
221
+ full_day_time_off_markers == o.full_day_time_off_markers &&
222
+ updates == o.updates
223
+ end
224
+
225
+ # @see the `==` method
226
+ # @param [Object] Object to be compared
227
+ def eql?(o)
228
+ self == o
229
+ end
230
+
231
+ # Calculates hash code according to all attributes.
232
+ # @return [Fixnum] Hash code
233
+ def hash
234
+ [user, start_date, end_date, shifts, full_day_time_off_markers, updates].hash
235
+ end
236
+
237
+ # build the object from hash
238
+ def build_from_hash(attributes)
239
+ return nil unless attributes.is_a?(Hash)
240
+ self.class.swagger_types.each_pair do |key, type|
241
+ if type =~ /^Array<(.*)>/i
242
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
243
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
244
+ else
245
+ #TODO show warning in debug mode
246
+ end
247
+ elsif !attributes[self.class.attribute_map[key]].nil?
248
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
249
+ else
250
+ # data not found in attributes(hash), not an issue as the data can be optional
251
+ end
252
+ end
253
+
254
+ self
255
+ end
256
+
257
+ def _deserialize(type, value)
258
+ case type.to_sym
259
+ when :DateTime
260
+ DateTime.parse(value)
261
+ when :Date
262
+ Date.parse(value)
263
+ when :String
264
+ value.to_s
265
+ when :Integer
266
+ value.to_i
267
+ when :Float
268
+ value.to_f
269
+ when :BOOLEAN
270
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
271
+ true
272
+ else
273
+ false
274
+ end
275
+ when :Object
276
+ # generic object (usually a Hash), return directly
277
+ value
278
+ when /\AArray<(?<inner_type>.+)>\z/
279
+ inner_type = Regexp.last_match[:inner_type]
280
+ value.map { |v| _deserialize(inner_type, v) }
281
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
282
+ k_type = Regexp.last_match[:k_type]
283
+ v_type = Regexp.last_match[:v_type]
284
+ {}.tap do |hash|
285
+ value.each do |k, v|
286
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
287
+ end
288
+ end
289
+ else # model
290
+ _model = Object.const_get("PureCloud").const_get(type).new
291
+ _model.build_from_hash(value)
292
+ end
293
+ end
294
+
295
+ def to_s
296
+ to_hash.to_s
297
+ end
298
+
299
+ # to_body is an alias to to_body (backward compatibility))
300
+ def to_body
301
+ to_hash
302
+ end
303
+
304
+ # return the object in the form of hash
305
+ def to_hash
306
+ hash = {}
307
+ self.class.attribute_map.each_pair do |attr, param|
308
+ value = self.send(attr)
309
+ next if value.nil?
310
+ hash[param] = _to_hash(value)
311
+ end
312
+ hash
313
+ end
314
+
315
+ # Method to output non-array value in the form of hash
316
+ # For object, use to_hash. Otherwise, just return the value
317
+ def _to_hash(value)
318
+ if value.is_a?(Array)
319
+ value.compact.map{ |v| _to_hash(v) }
320
+ elsif value.is_a?(Hash)
321
+ {}.tap do |hash|
322
+ value.each { |k, v| hash[k] = _to_hash(v) }
323
+ end
324
+ elsif value.respond_to? :to_hash
325
+ value.to_hash
326
+ else
327
+ value
328
+ end
329
+ end
330
+
331
+ end
332
+ end