aspose_email_cloud 20.1.0 → 20.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (355) hide show
  1. checksums.yaml +4 -4
  2. data/lib/aspose-email-cloud.rb +215 -174
  3. data/lib/aspose-email-cloud/api/ai_bcr_api.rb +84 -0
  4. data/lib/aspose-email-cloud/api/ai_group.rb +49 -0
  5. data/lib/aspose-email-cloud/api/ai_name_api.rb +213 -0
  6. data/lib/aspose-email-cloud/api/calendar_api.rb +206 -0
  7. data/lib/aspose-email-cloud/api/client_account_api.rb +121 -0
  8. data/lib/aspose-email-cloud/api/client_folder_api.rb +113 -0
  9. data/lib/aspose-email-cloud/api/client_group.rb +59 -0
  10. data/lib/aspose-email-cloud/api/client_message_api.rb +230 -0
  11. data/lib/aspose-email-cloud/api/client_thread_api.rb +149 -0
  12. data/lib/aspose-email-cloud/api/cloud_storage_group.rb +54 -0
  13. data/lib/aspose-email-cloud/api/contact_api.rb +171 -0
  14. data/lib/aspose-email-cloud/api/disposable_email_api.rb +57 -0
  15. data/lib/aspose-email-cloud/api/email_api.rb +171 -855
  16. data/lib/aspose-email-cloud/api/email_cloud.rb +96 -0
  17. data/lib/aspose-email-cloud/api/email_config_api.rb +111 -0
  18. data/lib/aspose-email-cloud/api/file_api.rb +92 -0
  19. data/lib/aspose-email-cloud/api/folder_api.rb +93 -0
  20. data/lib/aspose-email-cloud/api/mapi_calendar_api.rb +147 -0
  21. data/lib/aspose-email-cloud/api/mapi_contact_api.rb +147 -0
  22. data/lib/aspose-email-cloud/api/mapi_group.rb +54 -0
  23. data/lib/aspose-email-cloud/api/mapi_message_api.rb +147 -0
  24. data/lib/aspose-email-cloud/api/storage_api.rb +81 -0
  25. data/lib/aspose-email-cloud/api_client.rb +387 -382
  26. data/lib/aspose-email-cloud/api_error.rb +41 -41
  27. data/lib/aspose-email-cloud/api_invoker.rb +92 -0
  28. data/lib/aspose-email-cloud/configuration.rb +240 -240
  29. data/lib/aspose-email-cloud/models/ai_bcr_image.rb +204 -215
  30. data/lib/aspose-email-cloud/models/ai_bcr_image_storage_file.rb +218 -228
  31. data/lib/aspose-email-cloud/models/ai_bcr_options.rb +208 -223
  32. data/lib/aspose-email-cloud/models/ai_bcr_parse_request.rb +93 -0
  33. data/lib/aspose-email-cloud/models/{ai_bcr_parse_storage_rq.rb → ai_bcr_parse_storage_request.rb} +227 -248
  34. data/lib/aspose-email-cloud/models/{requests/ai_name_complete_request_data.rb → ai_name_complete_request.rb} +104 -91
  35. data/lib/aspose-email-cloud/models/ai_name_component.rb +241 -264
  36. data/lib/aspose-email-cloud/models/ai_name_component_list.rb +199 -0
  37. data/lib/aspose-email-cloud/models/ai_name_cultural_context.rb +240 -267
  38. data/lib/aspose-email-cloud/models/{requests/ai_name_expand_request_data.rb → ai_name_expand_request.rb} +104 -91
  39. data/lib/aspose-email-cloud/models/ai_name_extracted.rb +213 -230
  40. data/lib/aspose-email-cloud/models/ai_name_extracted_component.rb +213 -228
  41. data/lib/aspose-email-cloud/models/ai_name_extracted_list.rb +199 -0
  42. data/lib/aspose-email-cloud/models/ai_name_format_request.rb +110 -0
  43. data/lib/aspose-email-cloud/models/ai_name_formatted.rb +208 -223
  44. data/lib/aspose-email-cloud/models/ai_name_gender_hypothesis.rb +218 -233
  45. data/lib/aspose-email-cloud/models/{list_response_of_ai_bcr_ocr_data.rb → ai_name_gender_hypothesis_list.rb} +199 -211
  46. data/lib/aspose-email-cloud/models/ai_name_genderize_request.rb +104 -0
  47. data/lib/aspose-email-cloud/models/{ai_name_parsed_match_rq.rb → ai_name_match_parsed_request.rb} +236 -263
  48. data/lib/aspose-email-cloud/models/ai_name_match_request.rb +114 -0
  49. data/lib/aspose-email-cloud/models/ai_name_match_result.rb +213 -230
  50. data/lib/aspose-email-cloud/models/ai_name_mismatch.rb +227 -246
  51. data/lib/aspose-email-cloud/models/ai_name_parse_email_address_request.rb +105 -0
  52. data/lib/aspose-email-cloud/models/ai_name_parse_request.rb +104 -0
  53. data/lib/aspose-email-cloud/models/{ai_name_parsed_rq.rb → ai_name_parsed_request.rb} +222 -243
  54. data/lib/aspose-email-cloud/models/ai_name_weighted.rb +213 -228
  55. data/lib/aspose-email-cloud/models/ai_name_weighted_variants.rb +208 -225
  56. data/lib/aspose-email-cloud/models/alternate_view.rb +244 -279
  57. data/lib/aspose-email-cloud/models/associated_person.rb +222 -241
  58. data/lib/aspose-email-cloud/models/attachment.rb +276 -321
  59. data/lib/aspose-email-cloud/models/attachment_base.rb +226 -251
  60. data/lib/aspose-email-cloud/models/{calendar_dto_alternate_rq.rb → calendar_as_alternate_request.rb} +246 -265
  61. data/lib/aspose-email-cloud/models/calendar_as_file_request.rb +218 -0
  62. data/lib/aspose-email-cloud/models/{requests/save_email_model_request_data.rb → calendar_convert_request.rb} +84 -89
  63. data/lib/aspose-email-cloud/models/calendar_dto.rb +462 -554
  64. data/lib/aspose-email-cloud/models/{requests/ai_bcr_ocr_storage_request_data.rb → calendar_from_file_request.rb} +74 -75
  65. data/lib/aspose-email-cloud/models/calendar_get_as_alternate_request.rb +102 -0
  66. data/lib/aspose-email-cloud/models/calendar_get_as_file_request.rb +96 -0
  67. data/lib/aspose-email-cloud/models/{requests/get_email_model_list_request_data.rb → calendar_get_list_request.rb} +93 -87
  68. data/lib/aspose-email-cloud/models/{requests/get_email_request_data.rb → calendar_get_request.rb} +86 -81
  69. data/lib/aspose-email-cloud/models/calendar_reminder.rb +272 -315
  70. data/lib/aspose-email-cloud/models/{storage_model_rq_of_calendar_dto.rb → calendar_save_request.rb} +232 -222
  71. data/lib/aspose-email-cloud/models/{calendar_dto_list.rb → calendar_storage_list.rb} +199 -212
  72. data/lib/aspose-email-cloud/models/client_account_base_request.rb +204 -0
  73. data/lib/aspose-email-cloud/models/{requests/get_email_attachment_request_data.rb → client_account_get_multi_request.rb} +87 -88
  74. data/lib/aspose-email-cloud/models/{requests/create_email_request_data.rb → client_account_get_request.rb} +86 -82
  75. data/lib/aspose-email-cloud/models/client_account_save_multi_request.rb +218 -0
  76. data/lib/aspose-email-cloud/models/client_account_save_request.rb +218 -0
  77. data/lib/aspose-email-cloud/models/{email_property.rb → client_folder_create_request.rb} +246 -265
  78. data/lib/aspose-email-cloud/models/{ai_bcr_base64_image.rb → client_folder_delete_request.rb} +237 -228
  79. data/lib/aspose-email-cloud/models/client_folder_get_list_request.rb +93 -0
  80. data/lib/aspose-email-cloud/models/client_message_append_file_request.rb +114 -0
  81. data/lib/aspose-email-cloud/models/client_message_append_request.rb +241 -0
  82. data/lib/aspose-email-cloud/models/client_message_base_request.rb +237 -0
  83. data/lib/aspose-email-cloud/models/{ai_bcr_ocr_data.rb → client_message_delete_request.rb} +246 -253
  84. data/lib/aspose-email-cloud/models/client_message_fetch_file_request.rb +108 -0
  85. data/lib/aspose-email-cloud/models/client_message_fetch_request.rb +114 -0
  86. data/lib/aspose-email-cloud/models/{requests/list_email_messages_request_data.rb → client_message_list_request.rb} +121 -105
  87. data/lib/aspose-email-cloud/models/{set_message_read_flag_account_base_request.rb → client_message_move_request.rb} +279 -315
  88. data/lib/aspose-email-cloud/models/client_message_send_file_request.rb +103 -0
  89. data/lib/aspose-email-cloud/models/client_message_send_request.rb +218 -0
  90. data/lib/aspose-email-cloud/models/client_message_set_is_read_request.rb +251 -0
  91. data/lib/aspose-email-cloud/models/{hierarchical_object_response.rb → client_thread_base_request.rb} +237 -223
  92. data/lib/aspose-email-cloud/models/{hierarchical_object.rb → client_thread_delete_request.rb} +246 -244
  93. data/lib/aspose-email-cloud/models/client_thread_get_list_request.rb +108 -0
  94. data/lib/aspose-email-cloud/models/client_thread_get_messages_request.rb +103 -0
  95. data/lib/aspose-email-cloud/models/{account_base_request.rb → client_thread_move_request.rb} +270 -260
  96. data/lib/aspose-email-cloud/models/client_thread_set_is_read_request.rb +260 -0
  97. data/lib/aspose-email-cloud/models/contact_as_file_request.rb +218 -0
  98. data/lib/aspose-email-cloud/models/contact_convert_request.rb +94 -0
  99. data/lib/aspose-email-cloud/models/contact_dto.rb +529 -696
  100. data/lib/aspose-email-cloud/models/{requests/convert_email_request_data.rb → contact_from_file_request.rb} +84 -83
  101. data/lib/aspose-email-cloud/models/contact_get_as_file_request.rb +106 -0
  102. data/lib/aspose-email-cloud/models/{requests/get_contact_model_list_request_data.rb → contact_get_list_request.rb} +99 -87
  103. data/lib/aspose-email-cloud/models/{requests/get_contact_model_request_data.rb → contact_get_request.rb} +96 -88
  104. data/lib/aspose-email-cloud/models/contact_list.rb +199 -0
  105. data/lib/aspose-email-cloud/models/contact_photo.rb +252 -228
  106. data/lib/aspose-email-cloud/models/{storage_model_rq_of_contact_dto.rb → contact_save_request.rb} +232 -222
  107. data/lib/aspose-email-cloud/models/{contact_dto_list.rb → contact_storage_list.rb} +199 -212
  108. data/lib/aspose-email-cloud/models/content_type.rb +235 -264
  109. data/lib/aspose-email-cloud/models/content_type_parameter.rb +208 -223
  110. data/lib/aspose-email-cloud/models/{requests/copy_file_request_data.rb → copy_file_request.rb} +101 -92
  111. data/lib/aspose-email-cloud/models/{requests/copy_folder_request_data.rb → copy_folder_request.rb} +95 -89
  112. data/lib/aspose-email-cloud/models/{requests/create_folder_request_data.rb → create_folder_request.rb} +79 -78
  113. data/lib/aspose-email-cloud/models/customer_event.rb +213 -228
  114. data/lib/aspose-email-cloud/models/daily_recurrence_pattern_dto.rb +261 -0
  115. data/lib/aspose-email-cloud/models/{requests/delete_file_request_data.rb → delete_file_request.rb} +85 -81
  116. data/lib/aspose-email-cloud/models/{requests/delete_folder_request_data.rb → delete_folder_request.rb} +85 -81
  117. data/lib/aspose-email-cloud/models/disc_usage.rb +218 -233
  118. data/lib/aspose-email-cloud/models/discover_email_config_request.rb +246 -0
  119. data/lib/aspose-email-cloud/models/{requests/ai_bcr_parse_model_request_data.rb → disposable_email_is_disposable_request.rb} +75 -75
  120. data/lib/aspose-email-cloud/models/{requests/download_file_request_data.rb → download_file_request.rb} +85 -81
  121. data/lib/aspose-email-cloud/models/{link.rb → email_account_config.rb} +277 -249
  122. data/lib/aspose-email-cloud/models/{list_response_of_hierarchical_object.rb → email_account_config_list.rb} +199 -211
  123. data/lib/aspose-email-cloud/models/email_address.rb +273 -267
  124. data/lib/aspose-email-cloud/models/email_as_file_request.rb +218 -0
  125. data/lib/aspose-email-cloud/models/{email_account_request.rb → email_client_account.rb} +316 -394
  126. data/lib/aspose-email-cloud/models/{ai_bcr_parse_ocr_data_rq.rb → email_client_account_credentials.rb} +238 -230
  127. data/lib/aspose-email-cloud/models/{save_o_auth_email_account_request.rb → email_client_account_oauth_credentials.rb} +346 -505
  128. data/lib/aspose-email-cloud/models/{indexed_hierarchical_object.rb → email_client_account_password_credentials.rb} +271 -262
  129. data/lib/aspose-email-cloud/models/email_client_multi_account.rb +213 -0
  130. data/lib/aspose-email-cloud/models/email_config_discover_oauth_request.rb +353 -0
  131. data/lib/aspose-email-cloud/models/email_config_discover_password_request.rb +278 -0
  132. data/lib/aspose-email-cloud/models/email_config_discover_request.rb +81 -0
  133. data/lib/aspose-email-cloud/models/email_convert_request.rb +94 -0
  134. data/lib/aspose-email-cloud/models/email_dto.rb +523 -678
  135. data/lib/aspose-email-cloud/models/email_from_file_request.rb +84 -0
  136. data/lib/aspose-email-cloud/models/{requests/get_email_as_file_request_data.rb → email_get_as_file_request.rb} +96 -88
  137. data/lib/aspose-email-cloud/models/email_get_list_request.rb +99 -0
  138. data/lib/aspose-email-cloud/models/email_get_request.rb +96 -0
  139. data/lib/aspose-email-cloud/models/email_list.rb +199 -0
  140. data/lib/aspose-email-cloud/models/{requests/email_request.rb → email_request.rb} +72 -75
  141. data/lib/aspose-email-cloud/models/{storage_model_rq_of_email_dto.rb → email_save_request.rb} +232 -222
  142. data/lib/aspose-email-cloud/models/{email_dto_list.rb → email_storage_list.rb} +199 -212
  143. data/lib/aspose-email-cloud/models/email_thread.rb +226 -0
  144. data/lib/aspose-email-cloud/models/email_thread_list.rb +199 -0
  145. data/lib/aspose-email-cloud/models/enum_with_custom_of_associated_person_category.rb +231 -227
  146. data/lib/aspose-email-cloud/models/enum_with_custom_of_email_address_category.rb +231 -227
  147. data/lib/aspose-email-cloud/models/enum_with_custom_of_event_category.rb +231 -227
  148. data/lib/aspose-email-cloud/models/enum_with_custom_of_instant_messenger_category.rb +231 -227
  149. data/lib/aspose-email-cloud/models/enum_with_custom_of_phone_number_category.rb +231 -227
  150. data/lib/aspose-email-cloud/models/enum_with_custom_of_postal_address_category.rb +231 -227
  151. data/lib/aspose-email-cloud/models/enum_with_custom_of_url_category.rb +231 -227
  152. data/lib/aspose-email-cloud/models/error.rb +226 -249
  153. data/lib/aspose-email-cloud/models/error_details.rb +213 -228
  154. data/lib/aspose-email-cloud/models/file_version.rb +268 -303
  155. data/lib/aspose-email-cloud/models/file_versions.rb +199 -212
  156. data/lib/aspose-email-cloud/models/files_list.rb +199 -212
  157. data/lib/aspose-email-cloud/models/files_upload_result.rb +208 -227
  158. data/lib/aspose-email-cloud/models/{requests/get_disc_usage_request_data.rb → get_disc_usage_request.rb} +70 -71
  159. data/lib/aspose-email-cloud/models/{requests/get_file_versions_request_data.rb → get_file_versions_request.rb} +79 -78
  160. data/lib/aspose-email-cloud/models/{requests/get_files_list_request_data.rb → get_files_list_request.rb} +79 -78
  161. data/lib/aspose-email-cloud/models/{requests/http_request.rb → http_request.rb} +47 -51
  162. data/lib/aspose-email-cloud/models/instant_messenger_address.rb +222 -241
  163. data/lib/aspose-email-cloud/models/linked_resource.rb +235 -264
  164. data/lib/aspose-email-cloud/models/list_response_of_ai_name_component.rb +198 -211
  165. data/lib/aspose-email-cloud/models/list_response_of_ai_name_extracted.rb +198 -211
  166. data/lib/aspose-email-cloud/models/list_response_of_ai_name_gender_hypothesis.rb +198 -211
  167. data/lib/aspose-email-cloud/models/list_response_of_contact_dto.rb +198 -211
  168. data/lib/aspose-email-cloud/models/list_response_of_email_account_config.rb +198 -0
  169. data/lib/aspose-email-cloud/models/list_response_of_email_dto.rb +198 -211
  170. data/lib/aspose-email-cloud/models/list_response_of_email_thread.rb +198 -0
  171. data/lib/aspose-email-cloud/models/list_response_of_mail_message_base.rb +198 -0
  172. data/lib/aspose-email-cloud/models/list_response_of_mail_server_folder.rb +198 -211
  173. data/lib/aspose-email-cloud/models/list_response_of_storage_file_location.rb +198 -211
  174. data/lib/aspose-email-cloud/models/list_response_of_storage_model_of_calendar_dto.rb +198 -211
  175. data/lib/aspose-email-cloud/models/list_response_of_storage_model_of_contact_dto.rb +198 -211
  176. data/lib/aspose-email-cloud/models/list_response_of_storage_model_of_email_dto.rb +198 -211
  177. data/lib/aspose-email-cloud/models/mail_address.rb +231 -241
  178. data/lib/aspose-email-cloud/models/mail_message_base.rb +205 -0
  179. data/lib/aspose-email-cloud/models/{indexed_primitive_object.rb → mail_message_base64.rb} +252 -260
  180. data/lib/aspose-email-cloud/models/mail_message_base_list.rb +199 -0
  181. data/lib/aspose-email-cloud/models/mail_message_dto.rb +219 -0
  182. data/lib/aspose-email-cloud/models/mail_message_mapi.rb +219 -0
  183. data/lib/aspose-email-cloud/models/mail_server_folder.rb +208 -223
  184. data/lib/aspose-email-cloud/models/mail_server_folder_list.rb +199 -0
  185. data/lib/aspose-email-cloud/models/{mime_response.rb → mapi_attachment_dto.rb} +208 -210
  186. data/lib/aspose-email-cloud/models/{base_object.rb → mapi_binary_property_dto.rb} +223 -229
  187. data/lib/aspose-email-cloud/models/mapi_boolean_property_dto.rb +228 -0
  188. data/lib/aspose-email-cloud/models/mapi_calendar_as_file_request.rb +218 -0
  189. data/lib/aspose-email-cloud/models/{ai_bcr_base64_rq.rb → mapi_calendar_attendees_dto.rb} +236 -225
  190. data/lib/aspose-email-cloud/models/mapi_calendar_daily_recurrence_pattern_dto.rb +381 -0
  191. data/lib/aspose-email-cloud/models/mapi_calendar_dto.rb +561 -0
  192. data/lib/aspose-email-cloud/models/{ai_bcr_ocr_data_part.rb → mapi_calendar_event_recurrence_dto.rb} +259 -297
  193. data/lib/aspose-email-cloud/models/mapi_calendar_exception_info_dto.rb +361 -0
  194. data/lib/aspose-email-cloud/models/{requests/ai_bcr_ocr_request_data.rb → mapi_calendar_from_file_request.rb} +74 -75
  195. data/lib/aspose-email-cloud/models/mapi_calendar_get_request.rb +87 -0
  196. data/lib/aspose-email-cloud/models/mapi_calendar_recurrence_pattern_dto.rb +372 -0
  197. data/lib/aspose-email-cloud/models/mapi_calendar_save_request.rb +232 -0
  198. data/lib/aspose-email-cloud/models/mapi_calendar_time_zone_dto.rb +208 -0
  199. data/lib/aspose-email-cloud/models/{send_email_base_request.rb → mapi_calendar_time_zone_info_dto.rb} +273 -278
  200. data/lib/aspose-email-cloud/models/{delete_folder_base_request.rb → mapi_calendar_time_zone_rule_dto.rb} +344 -315
  201. data/lib/aspose-email-cloud/models/mapi_calendar_weekly_recurrence_pattern_dto.rb +381 -0
  202. data/lib/aspose-email-cloud/models/mapi_calendar_yearly_and_monthly_recurrence_pattern_dto.rb +409 -0
  203. data/lib/aspose-email-cloud/models/mapi_contact_as_file_request.rb +218 -0
  204. data/lib/aspose-email-cloud/models/mapi_contact_dto.rb +440 -0
  205. data/lib/aspose-email-cloud/models/mapi_contact_electronic_address_dto.rb +249 -0
  206. data/lib/aspose-email-cloud/models/mapi_contact_electronic_address_property_set_dto.rb +281 -0
  207. data/lib/aspose-email-cloud/models/mapi_contact_event_property_set_dto.rb +218 -0
  208. data/lib/aspose-email-cloud/models/mapi_contact_from_file_request.rb +84 -0
  209. data/lib/aspose-email-cloud/models/mapi_contact_get_request.rb +97 -0
  210. data/lib/aspose-email-cloud/models/mapi_contact_name_property_set_dto.rb +285 -0
  211. data/lib/aspose-email-cloud/models/mapi_contact_other_property_set_dto.rb +277 -0
  212. data/lib/aspose-email-cloud/models/mapi_contact_personal_info_property_set_dto.rb +366 -0
  213. data/lib/aspose-email-cloud/models/mapi_contact_photo_dto.rb +252 -0
  214. data/lib/aspose-email-cloud/models/mapi_contact_physical_address_dto.rb +276 -0
  215. data/lib/aspose-email-cloud/models/{ai_bcr_storage_image_rq.rb → mapi_contact_physical_address_property_set_dto.rb} +217 -230
  216. data/lib/aspose-email-cloud/models/mapi_contact_professional_property_set_dto.rb +253 -0
  217. data/lib/aspose-email-cloud/models/mapi_contact_save_request.rb +232 -0
  218. data/lib/aspose-email-cloud/models/mapi_contact_telephone_property_set_dto.rb +371 -0
  219. data/lib/aspose-email-cloud/models/mapi_date_time_property_dto.rb +228 -0
  220. data/lib/aspose-email-cloud/models/mapi_electronic_address_dto.rb +235 -0
  221. data/lib/aspose-email-cloud/models/mapi_file_as_property_dto.rb +228 -0
  222. data/lib/aspose-email-cloud/models/mapi_importance_property_dto.rb +228 -0
  223. data/lib/aspose-email-cloud/models/mapi_int_property_dto.rb +228 -0
  224. data/lib/aspose-email-cloud/models/mapi_known_property_descriptor.rb +238 -0
  225. data/lib/aspose-email-cloud/models/mapi_legacy_free_busy_property_dto.rb +228 -0
  226. data/lib/aspose-email-cloud/models/mapi_message_as_file_request.rb +218 -0
  227. data/lib/aspose-email-cloud/models/mapi_message_dto.rb +604 -0
  228. data/lib/aspose-email-cloud/models/{requests/get_email_model_request_data.rb → mapi_message_from_file_request.rb} +84 -88
  229. data/lib/aspose-email-cloud/models/mapi_message_get_request.rb +97 -0
  230. data/lib/aspose-email-cloud/models/mapi_message_item_base_dto.rb +359 -0
  231. data/lib/aspose-email-cloud/models/mapi_message_save_request.rb +232 -0
  232. data/lib/aspose-email-cloud/models/mapi_multi_int_property_dto.rb +223 -0
  233. data/lib/aspose-email-cloud/models/mapi_multi_string_property_dto.rb +223 -0
  234. data/lib/aspose-email-cloud/models/mapi_physical_address_index_property_dto.rb +228 -0
  235. data/lib/aspose-email-cloud/models/mapi_pid_lid_property_descriptor.rb +279 -0
  236. data/lib/aspose-email-cloud/models/mapi_pid_name_property_descriptor.rb +265 -0
  237. data/lib/aspose-email-cloud/models/mapi_pid_property_descriptor.rb +251 -0
  238. data/lib/aspose-email-cloud/models/mapi_pid_tag_property_descriptor.rb +279 -0
  239. data/lib/aspose-email-cloud/models/mapi_property_descriptor.rb +205 -0
  240. data/lib/aspose-email-cloud/models/mapi_property_dto.rb +214 -0
  241. data/lib/aspose-email-cloud/models/mapi_recipient_dto.rb +231 -0
  242. data/lib/aspose-email-cloud/models/{primitive_object.rb → mapi_response_type_property_dto.rb} +228 -242
  243. data/lib/aspose-email-cloud/models/mapi_string_property_dto.rb +223 -0
  244. data/lib/aspose-email-cloud/models/{create_folder_base_request.rb → monthly_recurrence_pattern_dto.rb} +303 -310
  245. data/lib/aspose-email-cloud/models/{requests/move_file_request_data.rb → move_file_request.rb} +101 -92
  246. data/lib/aspose-email-cloud/models/{requests/move_folder_request_data.rb → move_folder_request.rb} +96 -89
  247. data/lib/aspose-email-cloud/models/{value_response.rb → name_value_pair.rb} +208 -210
  248. data/lib/aspose-email-cloud/models/object_exist.rb +218 -233
  249. data/lib/aspose-email-cloud/models/{requests/object_exists_request_data.rb → object_exists_request.rb} +85 -81
  250. data/lib/aspose-email-cloud/models/phone_number.rb +222 -241
  251. data/lib/aspose-email-cloud/models/postal_address.rb +299 -350
  252. data/lib/aspose-email-cloud/models/recurrence_pattern_dto.rb +261 -0
  253. data/lib/aspose-email-cloud/models/reminder_attendee.rb +223 -210
  254. data/lib/aspose-email-cloud/models/reminder_trigger.rb +227 -246
  255. data/lib/aspose-email-cloud/models/storage_exist.rb +204 -215
  256. data/lib/aspose-email-cloud/models/{requests/storage_exists_request_data.rb → storage_exists_request.rb} +74 -75
  257. data/lib/aspose-email-cloud/models/storage_file.rb +245 -272
  258. data/lib/aspose-email-cloud/models/storage_file_location.rb +241 -260
  259. data/lib/aspose-email-cloud/models/storage_file_location_list.rb +199 -0
  260. data/lib/aspose-email-cloud/models/storage_folder_location.rb +208 -223
  261. data/lib/aspose-email-cloud/models/storage_model_of_calendar_dto.rb +217 -222
  262. data/lib/aspose-email-cloud/models/storage_model_of_contact_dto.rb +217 -222
  263. data/lib/aspose-email-cloud/models/storage_model_of_email_client_account.rb +217 -0
  264. data/lib/aspose-email-cloud/models/storage_model_of_email_client_multi_account.rb +217 -0
  265. data/lib/aspose-email-cloud/models/storage_model_of_email_dto.rb +217 -222
  266. data/lib/aspose-email-cloud/models/storage_model_of_mapi_calendar_dto.rb +217 -0
  267. data/lib/aspose-email-cloud/models/storage_model_of_mapi_contact_dto.rb +217 -0
  268. data/lib/aspose-email-cloud/models/storage_model_of_mapi_message_dto.rb +217 -0
  269. data/lib/aspose-email-cloud/models/task_regenerating_pattern_dto.rb +275 -0
  270. data/lib/aspose-email-cloud/models/{requests/upload_file_request_data.rb → upload_file_request.rb} +90 -87
  271. data/lib/aspose-email-cloud/models/url.rb +222 -241
  272. data/lib/aspose-email-cloud/models/{list_response_of_string.rb → value_t_of_boolean.rb} +203 -211
  273. data/lib/aspose-email-cloud/models/value_t_of_string.rb +222 -0
  274. data/lib/aspose-email-cloud/models/weekly_recurrence_pattern_dto.rb +270 -0
  275. data/lib/aspose-email-cloud/models/yearly_recurrence_pattern_dto.rb +317 -0
  276. data/lib/aspose-email-cloud/version.rb +15 -15
  277. metadata +254 -198
  278. data/lib/aspose-email-cloud/models/add_attachment_request.rb +0 -223
  279. data/lib/aspose-email-cloud/models/ai_bcr_rq.rb +0 -210
  280. data/lib/aspose-email-cloud/models/append_email_account_base_request.rb +0 -315
  281. data/lib/aspose-email-cloud/models/append_email_base_request.rb +0 -333
  282. data/lib/aspose-email-cloud/models/append_email_mime_base_request.rb +0 -352
  283. data/lib/aspose-email-cloud/models/append_email_model_rq.rb +0 -333
  284. data/lib/aspose-email-cloud/models/create_email_request.rb +0 -228
  285. data/lib/aspose-email-cloud/models/delete_message_base_request.rb +0 -315
  286. data/lib/aspose-email-cloud/models/email_document.rb +0 -230
  287. data/lib/aspose-email-cloud/models/email_document_response.rb +0 -210
  288. data/lib/aspose-email-cloud/models/email_properties.rb +0 -230
  289. data/lib/aspose-email-cloud/models/email_property_response.rb +0 -210
  290. data/lib/aspose-email-cloud/models/hierarchical_object_request.rb +0 -228
  291. data/lib/aspose-email-cloud/models/list_response_of_hierarchical_object_response.rb +0 -211
  292. data/lib/aspose-email-cloud/models/requests/add_calendar_attachment_request_data.rb +0 -89
  293. data/lib/aspose-email-cloud/models/requests/add_contact_attachment_request_data.rb +0 -96
  294. data/lib/aspose-email-cloud/models/requests/add_email_attachment_request_data.rb +0 -89
  295. data/lib/aspose-email-cloud/models/requests/add_mapi_attachment_request_data.rb +0 -89
  296. data/lib/aspose-email-cloud/models/requests/ai_bcr_parse_ocr_data_model_request_data.rb +0 -75
  297. data/lib/aspose-email-cloud/models/requests/ai_bcr_parse_request_data.rb +0 -75
  298. data/lib/aspose-email-cloud/models/requests/ai_bcr_parse_storage_request_data.rb +0 -75
  299. data/lib/aspose-email-cloud/models/requests/ai_name_expand_parsed_request_data.rb +0 -75
  300. data/lib/aspose-email-cloud/models/requests/ai_name_format_parsed_request_data.rb +0 -75
  301. data/lib/aspose-email-cloud/models/requests/ai_name_format_request_data.rb +0 -94
  302. data/lib/aspose-email-cloud/models/requests/ai_name_genderize_parsed_request_data.rb +0 -75
  303. data/lib/aspose-email-cloud/models/requests/ai_name_genderize_request_data.rb +0 -91
  304. data/lib/aspose-email-cloud/models/requests/ai_name_match_parsed_request_data.rb +0 -75
  305. data/lib/aspose-email-cloud/models/requests/ai_name_match_request_data.rb +0 -99
  306. data/lib/aspose-email-cloud/models/requests/ai_name_parse_email_address_request_data.rb +0 -91
  307. data/lib/aspose-email-cloud/models/requests/ai_name_parse_request_data.rb +0 -91
  308. data/lib/aspose-email-cloud/models/requests/append_email_message_request_data.rb +0 -75
  309. data/lib/aspose-email-cloud/models/requests/append_email_model_message_request_data.rb +0 -75
  310. data/lib/aspose-email-cloud/models/requests/append_mime_message_request_data.rb +0 -75
  311. data/lib/aspose-email-cloud/models/requests/convert_calendar_model_to_alternate_request_data.rb +0 -75
  312. data/lib/aspose-email-cloud/models/requests/create_calendar_request_data.rb +0 -82
  313. data/lib/aspose-email-cloud/models/requests/create_contact_request_data.rb +0 -89
  314. data/lib/aspose-email-cloud/models/requests/create_email_folder_request_data.rb +0 -75
  315. data/lib/aspose-email-cloud/models/requests/create_mapi_request_data.rb +0 -82
  316. data/lib/aspose-email-cloud/models/requests/delete_calendar_property_request_data.rb +0 -96
  317. data/lib/aspose-email-cloud/models/requests/delete_contact_property_request_data.rb +0 -103
  318. data/lib/aspose-email-cloud/models/requests/delete_email_folder_request_data.rb +0 -75
  319. data/lib/aspose-email-cloud/models/requests/delete_email_message_request_data.rb +0 -75
  320. data/lib/aspose-email-cloud/models/requests/delete_mapi_attachment_request_data.rb +0 -89
  321. data/lib/aspose-email-cloud/models/requests/delete_mapi_properties_request_data.rb +0 -82
  322. data/lib/aspose-email-cloud/models/requests/fetch_email_message_request_data.rb +0 -93
  323. data/lib/aspose-email-cloud/models/requests/fetch_email_model_request_data.rb +0 -93
  324. data/lib/aspose-email-cloud/models/requests/get_calendar_attachment_request_data.rb +0 -88
  325. data/lib/aspose-email-cloud/models/requests/get_calendar_list_request_data.rb +0 -95
  326. data/lib/aspose-email-cloud/models/requests/get_calendar_model_as_alternate_request_data.rb +0 -91
  327. data/lib/aspose-email-cloud/models/requests/get_calendar_model_list_request_data.rb +0 -85
  328. data/lib/aspose-email-cloud/models/requests/get_calendar_model_request_data.rb +0 -81
  329. data/lib/aspose-email-cloud/models/requests/get_calendar_request_data.rb +0 -81
  330. data/lib/aspose-email-cloud/models/requests/get_contact_attachment_request_data.rb +0 -95
  331. data/lib/aspose-email-cloud/models/requests/get_contact_list_request_data.rb +0 -87
  332. data/lib/aspose-email-cloud/models/requests/get_contact_properties_request_data.rb +0 -88
  333. data/lib/aspose-email-cloud/models/requests/get_email_property_request_data.rb +0 -88
  334. data/lib/aspose-email-cloud/models/requests/get_mapi_attachment_request_data.rb +0 -88
  335. data/lib/aspose-email-cloud/models/requests/get_mapi_attachments_request_data.rb +0 -81
  336. data/lib/aspose-email-cloud/models/requests/get_mapi_list_request_data.rb +0 -80
  337. data/lib/aspose-email-cloud/models/requests/get_mapi_properties_request_data.rb +0 -81
  338. data/lib/aspose-email-cloud/models/requests/list_email_folders_request_data.rb +0 -88
  339. data/lib/aspose-email-cloud/models/requests/list_email_models_request_data.rb +0 -105
  340. data/lib/aspose-email-cloud/models/requests/save_calendar_model_request_data.rb +0 -82
  341. data/lib/aspose-email-cloud/models/requests/save_contact_model_request_data.rb +0 -89
  342. data/lib/aspose-email-cloud/models/requests/save_mail_account_request_data.rb +0 -75
  343. data/lib/aspose-email-cloud/models/requests/save_mail_o_auth_account_request_data.rb +0 -75
  344. data/lib/aspose-email-cloud/models/requests/send_email_mime_request_data.rb +0 -75
  345. data/lib/aspose-email-cloud/models/requests/send_email_model_request_data.rb +0 -75
  346. data/lib/aspose-email-cloud/models/requests/send_email_request_data.rb +0 -75
  347. data/lib/aspose-email-cloud/models/requests/set_email_property_request_data.rb +0 -89
  348. data/lib/aspose-email-cloud/models/requests/set_email_read_flag_request_data.rb +0 -75
  349. data/lib/aspose-email-cloud/models/requests/update_calendar_properties_request_data.rb +0 -82
  350. data/lib/aspose-email-cloud/models/requests/update_contact_properties_request_data.rb +0 -89
  351. data/lib/aspose-email-cloud/models/requests/update_mapi_properties_request_data.rb +0 -82
  352. data/lib/aspose-email-cloud/models/save_email_account_request.rb +0 -431
  353. data/lib/aspose-email-cloud/models/send_email_mime_base_request.rb +0 -297
  354. data/lib/aspose-email-cloud/models/send_email_model_rq.rb +0 -273
  355. data/lib/aspose-email-cloud/models/set_email_property_request.rb +0 -228
@@ -0,0 +1,94 @@
1
+ # ----------------------------------------------------------------------------
2
+ # <copyright company="Aspose" file="contact_convert_request.rb">
3
+ # Copyright (c) 2018-2020 Aspose Pty Ltd. All rights reserved.
4
+ # </copyright>
5
+ # <summary>
6
+ # Permission is hereby granted, free of charge, to any person obtaining a
7
+ # copy of this software and associated documentation files (the "Software"),
8
+ # to deal in the Software without restriction, including without limitation
9
+ # the rights to use, copy, modify, merge, publish, distribute, sublicense,
10
+ # and/or sell copies of the Software, and to permit persons to whom the
11
+ # Software is furnished to do so, subject to the following conditions:
12
+ #
13
+ # The above copyright notice and this permission notice shall be included in
14
+ # all copies or substantial portions of the Software.
15
+ #
16
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21
+ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22
+ # DEALINGS IN THE SOFTWARE.
23
+ # </summary>
24
+ # ----------------------------------------------------------------------------
25
+
26
+ require_relative './email_request'
27
+ require_relative './http_request'
28
+
29
+ module AsposeEmailCloud
30
+ # Request model for contact_convert operation.
31
+ class ContactConvertRequest < EmailRequest
32
+ # File format to convert to Enum, available values: VCard, WebDav, Msg
33
+ # @return [String]
34
+ attr_accessor :to_format
35
+ # File format to convert from Enum, available values: VCard, WebDav, Msg
36
+ # @return [String]
37
+ attr_accessor :from_format
38
+ # File to convert
39
+ # @return [File]
40
+ attr_accessor :file
41
+
42
+ # Converts contact document to specified format and returns as file
43
+ # @param [String] to_format File format to convert to Enum, available values: VCard, WebDav, Msg
44
+ # @param [String] from_format File format to convert from Enum, available values: VCard, WebDav, Msg
45
+ # @param [File] file File to convert
46
+ def initialize(to_format:, from_format:, file:)
47
+ self.to_format = to_format if to_format
48
+ self.from_format = from_format if from_format
49
+ self.file = file if file
50
+ end
51
+
52
+ def to_http_info(api_client)
53
+ # verify the required parameter 'to_format' is set
54
+ if api_client.config.client_side_validation && self.to_format.nil?
55
+ raise ArgumentError, "Missing the required parameter 'to_format' when calling ContactApi.convert"
56
+ end
57
+ # verify the required parameter 'from_format' is set
58
+ if api_client.config.client_side_validation && self.from_format.nil?
59
+ raise ArgumentError, "Missing the required parameter 'from_format' when calling ContactApi.convert"
60
+ end
61
+ # verify the required parameter 'file' is set
62
+ if api_client.config.client_side_validation && self.file.nil?
63
+ raise ArgumentError, "Missing the required parameter 'file' when calling ContactApi.convert"
64
+ end
65
+ # resource path
66
+ local_var_path = '/email/Contact/convert'
67
+
68
+ # query parameters
69
+ query_params = {}
70
+ query_params[:toFormat] = self.to_format
71
+ query_params[:fromFormat] = self.from_format
72
+
73
+ # form parameters
74
+ form_params = {}
75
+ form_params['File'] = self.file
76
+
77
+ # http body (model)
78
+ auth_names = ['JWT']
79
+
80
+ # header parameters
81
+ header_params = {}
82
+ # HTTP header 'Accept' (if needed)
83
+ header_params['Accept'] = EmailRequest.select_header_accept(['multipart/form-data'])
84
+ # HTTP header 'Content-Type'
85
+ header_params['Content-Type'] = form_params.any? ? 'multipart/form-data' : EmailRequest.select_header_content_type(['multipart/form-data'])
86
+
87
+ AsposeEmailCloud::HttpRequest.new(resource_path: local_var_path,
88
+ header_params: header_params,
89
+ query_params: query_params,
90
+ form_params: form_params,
91
+ auth_names: auth_names)
92
+ end
93
+ end
94
+ end
@@ -1,696 +1,529 @@
1
- # ----------------------------------------------------------------------------
2
- # <copyright company="Aspose" file="ContactDto.rb">
3
- # Copyright (c) 2018-2019 Aspose Pty Ltd. All rights reserved.
4
- # </copyright>
5
- # <summary>
6
- # Permission is hereby granted, free of charge, to any person obtaining a
7
- # copy of this software and associated documentation files (the "Software"),
8
- # to deal in the Software without restriction, including without limitation
9
- # the rights to use, copy, modify, merge, publish, distribute, sublicense,
10
- # and/or sell copies of the Software, and to permit persons to whom the
11
- # Software is furnished to do so, subject to the following conditions:
12
- #
13
- # The above copyright notice and this permission notice shall be included in
14
- # all copies or substantial portions of the Software.
15
- #
16
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21
- # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22
- # DEALINGS IN THE SOFTWARE.
23
- # </summary>
24
- # ----------------------------------------------------------------------------
25
-
26
-
27
- require 'date'
28
-
29
- module AsposeEmailCloud
30
- # VCard document representation.
31
- class ContactDto
32
- # Associated persons.
33
- # @return [Array<AssociatedPerson>]
34
- attr_accessor :associated_persons
35
-
36
- # Document attachments.
37
- # @return [Array<Attachment>]
38
- attr_accessor :attachments
39
-
40
- # Company name.
41
- # @return [String]
42
- attr_accessor :company_name
43
-
44
- # Computer network.
45
- # @return [String]
46
- attr_accessor :computer_network_name
47
-
48
- # Customer id.
49
- # @return [String]
50
- attr_accessor :customer_id
51
-
52
- # Department name.
53
- # @return [String]
54
- attr_accessor :department_name
55
-
56
- # Display name.
57
- # @return [String]
58
- attr_accessor :display_name
59
-
60
- # Person's email addresses.
61
- # @return [Array<EmailAddress>]
62
- attr_accessor :email_addresses
63
-
64
- # Person's events.
65
- # @return [Array<CustomerEvent>]
66
- attr_accessor :events
67
-
68
- # A name used for sorting.
69
- # @return [String]
70
- attr_accessor :file_as
71
-
72
- # Specifies how to generate and recompute the value of the dispidFileAs property when other contact name properties change. Coincides MS-OXPROPS revision 16.2 from 7/31/2014. Enum, available values: Empty, DisplayName, FirstName, LastName, Organization, LastFirstMiddle, OrgLastFirstMiddle, LastFirstMiddleOrg, LastFirstMiddle2, LastFirstMiddle3, OrgLastFirstMiddle2, OrgLastFirstMiddle3, LastFirstMiddleOrg2, LastFirstMiddleOrg3, LastFirstMiddleGen, FirstMiddleLastGen, LastFirstMiddleGen2, BestMatch, AccordingToLocale, None
73
- # @return [String]
74
- attr_accessor :file_as_mapping
75
-
76
- # URL path from which a client can retrieve free/busy information for the contact as an iCal file.
77
- # @return [String]
78
- attr_accessor :free_busy_location
79
-
80
- # Enum defines gender of a person. Enum, available values: Unspecified, Female, Male
81
- # @return [String]
82
- attr_accessor :gender
83
-
84
- # Person's given name.
85
- # @return [String]
86
- attr_accessor :given_name
87
-
88
- # Government id number.
89
- # @return [String]
90
- attr_accessor :government_id_number
91
-
92
- # Person's hobbies.
93
- # @return [String]
94
- attr_accessor :hobbies
95
-
96
- # Person's initials.
97
- # @return [String]
98
- attr_accessor :initials
99
-
100
- # Person's instant messenger addresses.
101
- # @return [Array<InstantMessengerAddress>]
102
- attr_accessor :instant_messengers
103
-
104
- # Person's job title.
105
- # @return [String]
106
- attr_accessor :job_title
107
-
108
- # Language.
109
- # @return [String]
110
- attr_accessor :language
111
-
112
- # Person's location.
113
- # @return [String]
114
- attr_accessor :location
115
-
116
- # Person's middle name.
117
- # @return [String]
118
- attr_accessor :middle_name
119
-
120
- # Person's nickname.
121
- # @return [String]
122
- attr_accessor :nickname
123
-
124
- # Notes.
125
- # @return [String]
126
- attr_accessor :notes
127
-
128
- # Defines format of a text. Enum, available values: Text, Html
129
- # @return [String]
130
- attr_accessor :notes_format
131
-
132
- # Office location.
133
- # @return [String]
134
- attr_accessor :office_location
135
-
136
- # Contains an identifier for the mail user used within the mail user's organization.
137
- # @return [String]
138
- attr_accessor :organizational_id_number
139
-
140
- # Person's phone numbers.
141
- # @return [Array<PhoneNumber>]
142
- attr_accessor :phone_numbers
143
-
144
- # Person's photo.
145
- # @return [ContactPhoto]
146
- attr_accessor :photo
147
-
148
- # Person's physical addresses.
149
- # @return [Array<PostalAddress>]
150
- attr_accessor :physical_addresses
151
-
152
- # Encoding for all text properties.
153
- # @return [String]
154
- attr_accessor :preferred_text_encoding
155
-
156
- # A prefix of a full name such like Mr.(mister), Dr.(doctor) and so on.
157
- # @return [String]
158
- attr_accessor :prefix
159
-
160
- # A job position of a person in a company.
161
- # @return [String]
162
- attr_accessor :profession
163
-
164
- # A suffix of a full name such like Jr.(junior), Sr.(senior) and so on.
165
- # @return [String]
166
- attr_accessor :suffix
167
-
168
- # Person's surname.
169
- # @return [String]
170
- attr_accessor :surname
171
-
172
- # Person's urls.
173
- # @return [Array<Url>]
174
- attr_accessor :urls
175
-
176
- # Attribute mapping from ruby-style variable name to JSON key.
177
- def self.attribute_map
178
- {
179
- :'associated_persons' => :'associatedPersons',
180
- :'attachments' => :'attachments',
181
- :'company_name' => :'companyName',
182
- :'computer_network_name' => :'computerNetworkName',
183
- :'customer_id' => :'customerId',
184
- :'department_name' => :'departmentName',
185
- :'display_name' => :'displayName',
186
- :'email_addresses' => :'emailAddresses',
187
- :'events' => :'events',
188
- :'file_as' => :'fileAs',
189
- :'file_as_mapping' => :'fileAsMapping',
190
- :'free_busy_location' => :'freeBusyLocation',
191
- :'gender' => :'gender',
192
- :'given_name' => :'givenName',
193
- :'government_id_number' => :'governmentIdNumber',
194
- :'hobbies' => :'hobbies',
195
- :'initials' => :'initials',
196
- :'instant_messengers' => :'instantMessengers',
197
- :'job_title' => :'jobTitle',
198
- :'language' => :'language',
199
- :'location' => :'location',
200
- :'middle_name' => :'middleName',
201
- :'nickname' => :'nickname',
202
- :'notes' => :'notes',
203
- :'notes_format' => :'notesFormat',
204
- :'office_location' => :'officeLocation',
205
- :'organizational_id_number' => :'organizationalIdNumber',
206
- :'phone_numbers' => :'phoneNumbers',
207
- :'photo' => :'photo',
208
- :'physical_addresses' => :'physicalAddresses',
209
- :'preferred_text_encoding' => :'preferredTextEncoding',
210
- :'prefix' => :'prefix',
211
- :'profession' => :'profession',
212
- :'suffix' => :'suffix',
213
- :'surname' => :'surname',
214
- :'urls' => :'urls'
215
- }
216
- end
217
-
218
- # Attribute type mapping.
219
- def self.swagger_types
220
- {
221
- :'associated_persons' => :'Array<AssociatedPerson>',
222
- :'attachments' => :'Array<Attachment>',
223
- :'company_name' => :'String',
224
- :'computer_network_name' => :'String',
225
- :'customer_id' => :'String',
226
- :'department_name' => :'String',
227
- :'display_name' => :'String',
228
- :'email_addresses' => :'Array<EmailAddress>',
229
- :'events' => :'Array<CustomerEvent>',
230
- :'file_as' => :'String',
231
- :'file_as_mapping' => :'String',
232
- :'free_busy_location' => :'String',
233
- :'gender' => :'String',
234
- :'given_name' => :'String',
235
- :'government_id_number' => :'String',
236
- :'hobbies' => :'String',
237
- :'initials' => :'String',
238
- :'instant_messengers' => :'Array<InstantMessengerAddress>',
239
- :'job_title' => :'String',
240
- :'language' => :'String',
241
- :'location' => :'String',
242
- :'middle_name' => :'String',
243
- :'nickname' => :'String',
244
- :'notes' => :'String',
245
- :'notes_format' => :'String',
246
- :'office_location' => :'String',
247
- :'organizational_id_number' => :'String',
248
- :'phone_numbers' => :'Array<PhoneNumber>',
249
- :'photo' => :'ContactPhoto',
250
- :'physical_addresses' => :'Array<PostalAddress>',
251
- :'preferred_text_encoding' => :'String',
252
- :'prefix' => :'String',
253
- :'profession' => :'String',
254
- :'suffix' => :'String',
255
- :'surname' => :'String',
256
- :'urls' => :'Array<Url>'
257
- }
258
- end
259
-
260
- # Initializes the object
261
- # @param [Hash] attributes Model attributes in the form of hash
262
- def initialize(attributes = {})
263
- return unless attributes.is_a?(Hash)
264
-
265
- # convert string to symbol for hash key
266
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
267
-
268
- if attributes.has_key?(:'associatedPersons')
269
- if (value = attributes[:'associatedPersons']).is_a?(Array)
270
- self.associated_persons = value
271
- end
272
- end
273
-
274
- if attributes.has_key?(:'attachments')
275
- if (value = attributes[:'attachments']).is_a?(Array)
276
- self.attachments = value
277
- end
278
- end
279
-
280
- if attributes.has_key?(:'companyName')
281
- self.company_name = attributes[:'companyName']
282
- end
283
-
284
- if attributes.has_key?(:'computerNetworkName')
285
- self.computer_network_name = attributes[:'computerNetworkName']
286
- end
287
-
288
- if attributes.has_key?(:'customerId')
289
- self.customer_id = attributes[:'customerId']
290
- end
291
-
292
- if attributes.has_key?(:'departmentName')
293
- self.department_name = attributes[:'departmentName']
294
- end
295
-
296
- if attributes.has_key?(:'displayName')
297
- self.display_name = attributes[:'displayName']
298
- end
299
-
300
- if attributes.has_key?(:'emailAddresses')
301
- if (value = attributes[:'emailAddresses']).is_a?(Array)
302
- self.email_addresses = value
303
- end
304
- end
305
-
306
- if attributes.has_key?(:'events')
307
- if (value = attributes[:'events']).is_a?(Array)
308
- self.events = value
309
- end
310
- end
311
-
312
- if attributes.has_key?(:'fileAs')
313
- self.file_as = attributes[:'fileAs']
314
- end
315
-
316
- if attributes.has_key?(:'fileAsMapping')
317
- self.file_as_mapping = attributes[:'fileAsMapping']
318
- end
319
-
320
- if attributes.has_key?(:'freeBusyLocation')
321
- self.free_busy_location = attributes[:'freeBusyLocation']
322
- end
323
-
324
- if attributes.has_key?(:'gender')
325
- self.gender = attributes[:'gender']
326
- end
327
-
328
- if attributes.has_key?(:'givenName')
329
- self.given_name = attributes[:'givenName']
330
- end
331
-
332
- if attributes.has_key?(:'governmentIdNumber')
333
- self.government_id_number = attributes[:'governmentIdNumber']
334
- end
335
-
336
- if attributes.has_key?(:'hobbies')
337
- self.hobbies = attributes[:'hobbies']
338
- end
339
-
340
- if attributes.has_key?(:'initials')
341
- self.initials = attributes[:'initials']
342
- end
343
-
344
- if attributes.has_key?(:'instantMessengers')
345
- if (value = attributes[:'instantMessengers']).is_a?(Array)
346
- self.instant_messengers = value
347
- end
348
- end
349
-
350
- if attributes.has_key?(:'jobTitle')
351
- self.job_title = attributes[:'jobTitle']
352
- end
353
-
354
- if attributes.has_key?(:'language')
355
- self.language = attributes[:'language']
356
- end
357
-
358
- if attributes.has_key?(:'location')
359
- self.location = attributes[:'location']
360
- end
361
-
362
- if attributes.has_key?(:'middleName')
363
- self.middle_name = attributes[:'middleName']
364
- end
365
-
366
- if attributes.has_key?(:'nickname')
367
- self.nickname = attributes[:'nickname']
368
- end
369
-
370
- if attributes.has_key?(:'notes')
371
- self.notes = attributes[:'notes']
372
- end
373
-
374
- if attributes.has_key?(:'notesFormat')
375
- self.notes_format = attributes[:'notesFormat']
376
- end
377
-
378
- if attributes.has_key?(:'officeLocation')
379
- self.office_location = attributes[:'officeLocation']
380
- end
381
-
382
- if attributes.has_key?(:'organizationalIdNumber')
383
- self.organizational_id_number = attributes[:'organizationalIdNumber']
384
- end
385
-
386
- if attributes.has_key?(:'phoneNumbers')
387
- if (value = attributes[:'phoneNumbers']).is_a?(Array)
388
- self.phone_numbers = value
389
- end
390
- end
391
-
392
- if attributes.has_key?(:'photo')
393
- self.photo = attributes[:'photo']
394
- end
395
-
396
- if attributes.has_key?(:'physicalAddresses')
397
- if (value = attributes[:'physicalAddresses']).is_a?(Array)
398
- self.physical_addresses = value
399
- end
400
- end
401
-
402
- if attributes.has_key?(:'preferredTextEncoding')
403
- self.preferred_text_encoding = attributes[:'preferredTextEncoding']
404
- end
405
-
406
- if attributes.has_key?(:'prefix')
407
- self.prefix = attributes[:'prefix']
408
- end
409
-
410
- if attributes.has_key?(:'profession')
411
- self.profession = attributes[:'profession']
412
- end
413
-
414
- if attributes.has_key?(:'suffix')
415
- self.suffix = attributes[:'suffix']
416
- end
417
-
418
- if attributes.has_key?(:'surname')
419
- self.surname = attributes[:'surname']
420
- end
421
-
422
- if attributes.has_key?(:'urls')
423
- if (value = attributes[:'urls']).is_a?(Array)
424
- self.urls = value
425
- end
426
- end
427
- end
428
-
429
- # Initializes the object
430
- # @param [Array<AssociatedPerson>] associated_persons Associated persons.
431
- # @param [Array<Attachment>] attachments Document attachments.
432
- # @param [String] company_name Company name.
433
- # @param [String] computer_network_name Computer network.
434
- # @param [String] customer_id Customer id.
435
- # @param [String] department_name Department name.
436
- # @param [String] display_name Display name.
437
- # @param [Array<EmailAddress>] email_addresses Person's email addresses.
438
- # @param [Array<CustomerEvent>] events Person's events.
439
- # @param [String] file_as A name used for sorting.
440
- # @param [String] file_as_mapping Specifies how to generate and recompute the value of the dispidFileAs property when other contact name properties change. Coincides MS-OXPROPS revision 16.2 from 7/31/2014. Enum, available values: Empty, DisplayName, FirstName, LastName, Organization, LastFirstMiddle, OrgLastFirstMiddle, LastFirstMiddleOrg, LastFirstMiddle2, LastFirstMiddle3, OrgLastFirstMiddle2, OrgLastFirstMiddle3, LastFirstMiddleOrg2, LastFirstMiddleOrg3, LastFirstMiddleGen, FirstMiddleLastGen, LastFirstMiddleGen2, BestMatch, AccordingToLocale, None
441
- # @param [String] free_busy_location URL path from which a client can retrieve free/busy information for the contact as an iCal file.
442
- # @param [String] gender Enum defines gender of a person. Enum, available values: Unspecified, Female, Male
443
- # @param [String] given_name Person's given name.
444
- # @param [String] government_id_number Government id number.
445
- # @param [String] hobbies Person's hobbies.
446
- # @param [String] initials Person's initials.
447
- # @param [Array<InstantMessengerAddress>] instant_messengers Person's instant messenger addresses.
448
- # @param [String] job_title Person's job title.
449
- # @param [String] language Language.
450
- # @param [String] location Person's location.
451
- # @param [String] middle_name Person's middle name.
452
- # @param [String] nickname Person's nickname.
453
- # @param [String] notes Notes.
454
- # @param [String] notes_format Defines format of a text. Enum, available values: Text, Html
455
- # @param [String] office_location Office location.
456
- # @param [String] organizational_id_number Contains an identifier for the mail user used within the mail user's organization.
457
- # @param [Array<PhoneNumber>] phone_numbers Person's phone numbers.
458
- # @param [ContactPhoto] photo Person's photo.
459
- # @param [Array<PostalAddress>] physical_addresses Person's physical addresses.
460
- # @param [String] preferred_text_encoding Encoding for all text properties.
461
- # @param [String] prefix A prefix of a full name such like Mr.(mister), Dr.(doctor) and so on.
462
- # @param [String] profession A job position of a person in a company.
463
- # @param [String] suffix A suffix of a full name such like Jr.(junior), Sr.(senior) and so on.
464
- # @param [String] surname Person's surname.
465
- # @param [Array<Url>] urls Person's urls.
466
- def initialize(associated_persons=nil, attachments=nil, company_name=nil, computer_network_name=nil, customer_id=nil, department_name=nil, display_name=nil, email_addresses=nil, events=nil, file_as=nil, file_as_mapping=nil, free_busy_location=nil, gender=nil, given_name=nil, government_id_number=nil, hobbies=nil, initials=nil, instant_messengers=nil, job_title=nil, language=nil, location=nil, middle_name=nil, nickname=nil, notes=nil, notes_format=nil, office_location=nil, organizational_id_number=nil, phone_numbers=nil, photo=nil, physical_addresses=nil, preferred_text_encoding=nil, prefix=nil, profession=nil, suffix=nil, surname=nil, urls=nil)
467
- self.associated_persons = associated_persons if associated_persons
468
- self.attachments = attachments if attachments
469
- self.company_name = company_name if company_name
470
- self.computer_network_name = computer_network_name if computer_network_name
471
- self.customer_id = customer_id if customer_id
472
- self.department_name = department_name if department_name
473
- self.display_name = display_name if display_name
474
- self.email_addresses = email_addresses if email_addresses
475
- self.events = events if events
476
- self.file_as = file_as if file_as
477
- self.file_as_mapping = file_as_mapping if file_as_mapping
478
- self.free_busy_location = free_busy_location if free_busy_location
479
- self.gender = gender if gender
480
- self.given_name = given_name if given_name
481
- self.government_id_number = government_id_number if government_id_number
482
- self.hobbies = hobbies if hobbies
483
- self.initials = initials if initials
484
- self.instant_messengers = instant_messengers if instant_messengers
485
- self.job_title = job_title if job_title
486
- self.language = language if language
487
- self.location = location if location
488
- self.middle_name = middle_name if middle_name
489
- self.nickname = nickname if nickname
490
- self.notes = notes if notes
491
- self.notes_format = notes_format if notes_format
492
- self.office_location = office_location if office_location
493
- self.organizational_id_number = organizational_id_number if organizational_id_number
494
- self.phone_numbers = phone_numbers if phone_numbers
495
- self.photo = photo if photo
496
- self.physical_addresses = physical_addresses if physical_addresses
497
- self.preferred_text_encoding = preferred_text_encoding if preferred_text_encoding
498
- self.prefix = prefix if prefix
499
- self.profession = profession if profession
500
- self.suffix = suffix if suffix
501
- self.surname = surname if surname
502
- self.urls = urls if urls
503
- end
504
-
505
- # Show invalid properties with the reasons. Usually used together with valid?
506
- # @return Array for valid properties with the reasons
507
- def list_invalid_properties
508
- invalid_properties = Array.new
509
- if @file_as_mapping.nil?
510
- invalid_properties.push('invalid value for "file_as_mapping", file_as_mapping cannot be nil.')
511
- end
512
-
513
- if @gender.nil?
514
- invalid_properties.push('invalid value for "gender", gender cannot be nil.')
515
- end
516
-
517
- if @notes_format.nil?
518
- invalid_properties.push('invalid value for "notes_format", notes_format cannot be nil.')
519
- end
520
-
521
- invalid_properties
522
- end
523
-
524
- # Check to see if the all the properties in the model are valid
525
- # @return true if the model is valid
526
- def valid?
527
- return false if @file_as_mapping.nil?
528
- return false if @gender.nil?
529
- return false if @notes_format.nil?
530
- true
531
- end
532
-
533
- # Checks equality by comparing each attribute.
534
- # @param [Object] Object to be compared
535
- def ==(o)
536
- return true if self.equal?(o)
537
- self.class == o.class &&
538
- associated_persons == o.associated_persons &&
539
- attachments == o.attachments &&
540
- company_name == o.company_name &&
541
- computer_network_name == o.computer_network_name &&
542
- customer_id == o.customer_id &&
543
- department_name == o.department_name &&
544
- display_name == o.display_name &&
545
- email_addresses == o.email_addresses &&
546
- events == o.events &&
547
- file_as == o.file_as &&
548
- file_as_mapping == o.file_as_mapping &&
549
- free_busy_location == o.free_busy_location &&
550
- gender == o.gender &&
551
- given_name == o.given_name &&
552
- government_id_number == o.government_id_number &&
553
- hobbies == o.hobbies &&
554
- initials == o.initials &&
555
- instant_messengers == o.instant_messengers &&
556
- job_title == o.job_title &&
557
- language == o.language &&
558
- location == o.location &&
559
- middle_name == o.middle_name &&
560
- nickname == o.nickname &&
561
- notes == o.notes &&
562
- notes_format == o.notes_format &&
563
- office_location == o.office_location &&
564
- organizational_id_number == o.organizational_id_number &&
565
- phone_numbers == o.phone_numbers &&
566
- photo == o.photo &&
567
- physical_addresses == o.physical_addresses &&
568
- preferred_text_encoding == o.preferred_text_encoding &&
569
- prefix == o.prefix &&
570
- profession == o.profession &&
571
- suffix == o.suffix &&
572
- surname == o.surname &&
573
- urls == o.urls
574
- end
575
-
576
- # @see the `==` method
577
- # @param [Object] Object to be compared
578
- def eql?(o)
579
- self == o
580
- end
581
-
582
- # Calculates hash code according to all attributes.
583
- # @return [Fixnum] Hash code
584
- def hash
585
- [associated_persons, attachments, company_name, computer_network_name, customer_id, department_name, display_name, email_addresses, events, file_as, file_as_mapping, free_busy_location, gender, given_name, government_id_number, hobbies, initials, instant_messengers, job_title, language, location, middle_name, nickname, notes, notes_format, office_location, organizational_id_number, phone_numbers, photo, physical_addresses, preferred_text_encoding, prefix, profession, suffix, surname, urls].hash
586
- end
587
-
588
- # Builds the object from hash
589
- # @param [Hash] attributes Model attributes in the form of hash
590
- # @return [Object] Returns the model itself
591
- def build_from_hash(attributes)
592
- return nil unless attributes.is_a?(Hash)
593
- self.class.swagger_types.each_pair do |key, type|
594
- attribute_key = self.class.attribute_map[key]
595
- attribute_key = (attribute_key[0, 1].downcase + attribute_key[1..-1]).to_sym
596
- if type =~ /\AArray<(.*)>/i
597
- # check to ensure the input is an array given that the the attribute
598
- # is documented as an array but the input is not
599
- if attributes[attribute_key].is_a?(Array)
600
- self.send("#{key}=", attributes[attribute_key].map { |v| _deserialize($1, v) })
601
- end
602
- elsif !attributes[attribute_key].nil?
603
- self.send("#{key}=", _deserialize(type, attributes[attribute_key]))
604
- end # or else data not found in attributes(hash), not an issue as the data can be optional
605
- end
606
-
607
- self
608
- end
609
-
610
- # Deserializes the data based on type
611
- # @param string type Data type
612
- # @param string value Value to be deserialized
613
- # @return [Object] Deserialized data
614
- def _deserialize(type, value)
615
- case type.to_sym
616
- when :DateTime
617
- DateTime.parse(value)
618
- when :Date
619
- Date.parse(value)
620
- when :String
621
- value.to_s
622
- when :Integer
623
- value.to_i
624
- when :Float
625
- value.to_f
626
- when :BOOLEAN
627
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
628
- true
629
- else
630
- false
631
- end
632
- when :Object
633
- # generic object (usually a Hash), return directly
634
- value
635
- when /\AArray<(?<inner_type>.+)>\z/
636
- inner_type = Regexp.last_match[:inner_type]
637
- value.map { |v| _deserialize(inner_type, v) }
638
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
639
- k_type = Regexp.last_match[:k_type]
640
- v_type = Regexp.last_match[:v_type]
641
- {}.tap do |hash|
642
- value.each do |k, v|
643
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
644
- end
645
- end
646
- else # model
647
- type = value[:type] || type
648
- temp_model = AsposeEmailCloud.const_get(type).new
649
- temp_model.build_from_hash(value)
650
- end
651
- end
652
-
653
- # Returns the string representation of the object
654
- # @return [String] String presentation of the object
655
- def to_s
656
- to_hash.to_s
657
- end
658
-
659
- # to_body is an alias to to_hash (backward compatibility)
660
- # @return [Hash] Returns the object in the form of hash
661
- def to_body
662
- to_hash
663
- end
664
-
665
- # Returns the object in the form of hash
666
- # @return [Hash] Returns the object in the form of hash
667
- def to_hash
668
- hash = {}
669
- self.class.attribute_map.each_pair do |attr, param|
670
- value = self.send(attr)
671
- next if value.nil?
672
- hash[param] = _to_hash(value)
673
- end
674
- hash
675
- end
676
-
677
- # Outputs non-array value in the form of hash
678
- # For object, use to_hash. Otherwise, just return the value
679
- # @param [Object] value Any valid value
680
- # @return [Hash] Returns the value in the form of hash
681
- def _to_hash(value)
682
- if value.is_a?(Array)
683
- value.compact.map { |v| _to_hash(v) }
684
- elsif value.is_a?(Hash)
685
- {}.tap do |hash|
686
- value.each { |k, v| hash[k] = _to_hash(v) }
687
- end
688
- elsif value.respond_to? :to_hash
689
- value.to_hash
690
- else
691
- value
692
- end
693
- end
694
-
695
- end
696
- end
1
+ # ----------------------------------------------------------------------------
2
+ # <copyright company="Aspose" file="ContactDto.rb">
3
+ # Copyright (c) 2018-2020 Aspose Pty Ltd. All rights reserved.
4
+ # </copyright>
5
+ # <summary>
6
+ # Permission is hereby granted, free of charge, to any person obtaining a
7
+ # copy of this software and associated documentation files (the "Software"),
8
+ # to deal in the Software without restriction, including without limitation
9
+ # the rights to use, copy, modify, merge, publish, distribute, sublicense,
10
+ # and/or sell copies of the Software, and to permit persons to whom the
11
+ # Software is furnished to do so, subject to the following conditions:
12
+ #
13
+ # The above copyright notice and this permission notice shall be included in
14
+ # all copies or substantial portions of the Software.
15
+ #
16
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21
+ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22
+ # DEALINGS IN THE SOFTWARE.
23
+ # </summary>
24
+ # ----------------------------------------------------------------------------
25
+
26
+ require 'date'
27
+
28
+ module AsposeEmailCloud
29
+ # VCard document representation.
30
+ class ContactDto
31
+ # Associated persons.
32
+ # @return [Array<AssociatedPerson>]
33
+ attr_accessor :associated_persons
34
+ # Document attachments.
35
+ # @return [Array<Attachment>]
36
+ attr_accessor :attachments
37
+ # Company name.
38
+ # @return [String]
39
+ attr_accessor :company_name
40
+ # Computer network.
41
+ # @return [String]
42
+ attr_accessor :computer_network_name
43
+ # Customer id.
44
+ # @return [String]
45
+ attr_accessor :customer_id
46
+ # Department name.
47
+ # @return [String]
48
+ attr_accessor :department_name
49
+ # Display name.
50
+ # @return [String]
51
+ attr_accessor :display_name
52
+ # Person's email addresses.
53
+ # @return [Array<EmailAddress>]
54
+ attr_accessor :email_addresses
55
+ # Person's events.
56
+ # @return [Array<CustomerEvent>]
57
+ attr_accessor :events
58
+ # A name used for sorting.
59
+ # @return [String]
60
+ attr_accessor :file_as
61
+ # Specifies how to generate and recompute the value of the dispidFileAs property when other contact name properties change. Coincides MS-OXPROPS revision 16.2 from 7/31/2014. Enum, available values: Empty, DisplayName, FirstName, LastName, Organization, LastFirstMiddle, OrgLastFirstMiddle, LastFirstMiddleOrg, LastFirstMiddle2, LastFirstMiddle3, OrgLastFirstMiddle2, OrgLastFirstMiddle3, LastFirstMiddleOrg2, LastFirstMiddleOrg3, LastFirstMiddleGen, FirstMiddleLastGen, LastFirstMiddleGen2, BestMatch, AccordingToLocale, None
62
+ # @return [String]
63
+ attr_accessor :file_as_mapping
64
+ # URL path from which a client can retrieve free/busy information for the contact as an iCal file.
65
+ # @return [String]
66
+ attr_accessor :free_busy_location
67
+ # Enum defines gender of a person. Enum, available values: Unspecified, Female, Male
68
+ # @return [String]
69
+ attr_accessor :gender
70
+ # Person's given name.
71
+ # @return [String]
72
+ attr_accessor :given_name
73
+ # Government id number.
74
+ # @return [String]
75
+ attr_accessor :government_id_number
76
+ # Person's hobbies.
77
+ # @return [String]
78
+ attr_accessor :hobbies
79
+ # Person's initials.
80
+ # @return [String]
81
+ attr_accessor :initials
82
+ # Person's instant messenger addresses.
83
+ # @return [Array<InstantMessengerAddress>]
84
+ attr_accessor :instant_messengers
85
+ # Person's job title.
86
+ # @return [String]
87
+ attr_accessor :job_title
88
+ # Language.
89
+ # @return [String]
90
+ attr_accessor :language
91
+ # Person's location.
92
+ # @return [String]
93
+ attr_accessor :location
94
+ # Person's middle name.
95
+ # @return [String]
96
+ attr_accessor :middle_name
97
+ # Person's nickname.
98
+ # @return [String]
99
+ attr_accessor :nickname
100
+ # Notes.
101
+ # @return [String]
102
+ attr_accessor :notes
103
+ # Defines format of a text. Enum, available values: Text, Html
104
+ # @return [String]
105
+ attr_accessor :notes_format
106
+ # Office location.
107
+ # @return [String]
108
+ attr_accessor :office_location
109
+ # Contains an identifier for the mail user used within the mail user's organization.
110
+ # @return [String]
111
+ attr_accessor :organizational_id_number
112
+ # Person's phone numbers.
113
+ # @return [Array<PhoneNumber>]
114
+ attr_accessor :phone_numbers
115
+ # Person's photo.
116
+ # @return [ContactPhoto]
117
+ attr_accessor :photo
118
+ # Person's physical addresses.
119
+ # @return [Array<PostalAddress>]
120
+ attr_accessor :physical_addresses
121
+ # Encoding for all text properties.
122
+ # @return [String]
123
+ attr_accessor :preferred_text_encoding
124
+ # A prefix of a full name such like Mr.(mister), Dr.(doctor) and so on.
125
+ # @return [String]
126
+ attr_accessor :prefix
127
+ # A job position of a person in a company.
128
+ # @return [String]
129
+ attr_accessor :profession
130
+ # A suffix of a full name such like Jr.(junior), Sr.(senior) and so on.
131
+ # @return [String]
132
+ attr_accessor :suffix
133
+ # Person's surname.
134
+ # @return [String]
135
+ attr_accessor :surname
136
+ # Person's urls.
137
+ # @return [Array<Url>]
138
+ attr_accessor :urls
139
+ # Attribute mapping from ruby-style variable name to JSON key.
140
+ def self.attribute_map
141
+ {
142
+ :'associated_persons' => :'associatedPersons',
143
+ :'attachments' => :'attachments',
144
+ :'company_name' => :'companyName',
145
+ :'computer_network_name' => :'computerNetworkName',
146
+ :'customer_id' => :'customerId',
147
+ :'department_name' => :'departmentName',
148
+ :'display_name' => :'displayName',
149
+ :'email_addresses' => :'emailAddresses',
150
+ :'events' => :'events',
151
+ :'file_as' => :'fileAs',
152
+ :'file_as_mapping' => :'fileAsMapping',
153
+ :'free_busy_location' => :'freeBusyLocation',
154
+ :'gender' => :'gender',
155
+ :'given_name' => :'givenName',
156
+ :'government_id_number' => :'governmentIdNumber',
157
+ :'hobbies' => :'hobbies',
158
+ :'initials' => :'initials',
159
+ :'instant_messengers' => :'instantMessengers',
160
+ :'job_title' => :'jobTitle',
161
+ :'language' => :'language',
162
+ :'location' => :'location',
163
+ :'middle_name' => :'middleName',
164
+ :'nickname' => :'nickname',
165
+ :'notes' => :'notes',
166
+ :'notes_format' => :'notesFormat',
167
+ :'office_location' => :'officeLocation',
168
+ :'organizational_id_number' => :'organizationalIdNumber',
169
+ :'phone_numbers' => :'phoneNumbers',
170
+ :'photo' => :'photo',
171
+ :'physical_addresses' => :'physicalAddresses',
172
+ :'preferred_text_encoding' => :'preferredTextEncoding',
173
+ :'prefix' => :'prefix',
174
+ :'profession' => :'profession',
175
+ :'suffix' => :'suffix',
176
+ :'surname' => :'surname',
177
+ :'urls' => :'urls'
178
+ }
179
+ end
180
+
181
+ # Attribute type mapping.
182
+ def self.swagger_types
183
+ {
184
+ :'associated_persons' => :'Array<AssociatedPerson>',
185
+ :'attachments' => :'Array<Attachment>',
186
+ :'company_name' => :'String',
187
+ :'computer_network_name' => :'String',
188
+ :'customer_id' => :'String',
189
+ :'department_name' => :'String',
190
+ :'display_name' => :'String',
191
+ :'email_addresses' => :'Array<EmailAddress>',
192
+ :'events' => :'Array<CustomerEvent>',
193
+ :'file_as' => :'String',
194
+ :'file_as_mapping' => :'String',
195
+ :'free_busy_location' => :'String',
196
+ :'gender' => :'String',
197
+ :'given_name' => :'String',
198
+ :'government_id_number' => :'String',
199
+ :'hobbies' => :'String',
200
+ :'initials' => :'String',
201
+ :'instant_messengers' => :'Array<InstantMessengerAddress>',
202
+ :'job_title' => :'String',
203
+ :'language' => :'String',
204
+ :'location' => :'String',
205
+ :'middle_name' => :'String',
206
+ :'nickname' => :'String',
207
+ :'notes' => :'String',
208
+ :'notes_format' => :'String',
209
+ :'office_location' => :'String',
210
+ :'organizational_id_number' => :'String',
211
+ :'phone_numbers' => :'Array<PhoneNumber>',
212
+ :'photo' => :'ContactPhoto',
213
+ :'physical_addresses' => :'Array<PostalAddress>',
214
+ :'preferred_text_encoding' => :'String',
215
+ :'prefix' => :'String',
216
+ :'profession' => :'String',
217
+ :'suffix' => :'String',
218
+ :'surname' => :'String',
219
+ :'urls' => :'Array<Url>'
220
+ }
221
+ end
222
+
223
+ # Initializes the object
224
+ # @param [Array<AssociatedPerson>] associated_persons Associated persons.
225
+ # @param [Array<Attachment>] attachments Document attachments.
226
+ # @param [String] company_name Company name.
227
+ # @param [String] computer_network_name Computer network.
228
+ # @param [String] customer_id Customer id.
229
+ # @param [String] department_name Department name.
230
+ # @param [String] display_name Display name.
231
+ # @param [Array<EmailAddress>] email_addresses Person's email addresses.
232
+ # @param [Array<CustomerEvent>] events Person's events.
233
+ # @param [String] file_as A name used for sorting.
234
+ # @param [String] file_as_mapping Specifies how to generate and recompute the value of the dispidFileAs property when other contact name properties change. Coincides MS-OXPROPS revision 16.2 from 7/31/2014. Enum, available values: Empty, DisplayName, FirstName, LastName, Organization, LastFirstMiddle, OrgLastFirstMiddle, LastFirstMiddleOrg, LastFirstMiddle2, LastFirstMiddle3, OrgLastFirstMiddle2, OrgLastFirstMiddle3, LastFirstMiddleOrg2, LastFirstMiddleOrg3, LastFirstMiddleGen, FirstMiddleLastGen, LastFirstMiddleGen2, BestMatch, AccordingToLocale, None
235
+ # @param [String] free_busy_location URL path from which a client can retrieve free/busy information for the contact as an iCal file.
236
+ # @param [String] gender Enum defines gender of a person. Enum, available values: Unspecified, Female, Male
237
+ # @param [String] given_name Person's given name.
238
+ # @param [String] government_id_number Government id number.
239
+ # @param [String] hobbies Person's hobbies.
240
+ # @param [String] initials Person's initials.
241
+ # @param [Array<InstantMessengerAddress>] instant_messengers Person's instant messenger addresses.
242
+ # @param [String] job_title Person's job title.
243
+ # @param [String] language Language.
244
+ # @param [String] location Person's location.
245
+ # @param [String] middle_name Person's middle name.
246
+ # @param [String] nickname Person's nickname.
247
+ # @param [String] notes Notes.
248
+ # @param [String] notes_format Defines format of a text. Enum, available values: Text, Html
249
+ # @param [String] office_location Office location.
250
+ # @param [String] organizational_id_number Contains an identifier for the mail user used within the mail user's organization.
251
+ # @param [Array<PhoneNumber>] phone_numbers Person's phone numbers.
252
+ # @param [ContactPhoto] photo Person's photo.
253
+ # @param [Array<PostalAddress>] physical_addresses Person's physical addresses.
254
+ # @param [String] preferred_text_encoding Encoding for all text properties.
255
+ # @param [String] prefix A prefix of a full name such like Mr.(mister), Dr.(doctor) and so on.
256
+ # @param [String] profession A job position of a person in a company.
257
+ # @param [String] suffix A suffix of a full name such like Jr.(junior), Sr.(senior) and so on.
258
+ # @param [String] surname Person's surname.
259
+ # @param [Array<Url>] urls Person's urls.
260
+ def initialize(
261
+ associated_persons: nil,
262
+ attachments: nil,
263
+ company_name: nil,
264
+ computer_network_name: nil,
265
+ customer_id: nil,
266
+ department_name: nil,
267
+ display_name: nil,
268
+ email_addresses: nil,
269
+ events: nil,
270
+ file_as: nil,
271
+ file_as_mapping: nil,
272
+ free_busy_location: nil,
273
+ gender: nil,
274
+ given_name: nil,
275
+ government_id_number: nil,
276
+ hobbies: nil,
277
+ initials: nil,
278
+ instant_messengers: nil,
279
+ job_title: nil,
280
+ language: nil,
281
+ location: nil,
282
+ middle_name: nil,
283
+ nickname: nil,
284
+ notes: nil,
285
+ notes_format: nil,
286
+ office_location: nil,
287
+ organizational_id_number: nil,
288
+ phone_numbers: nil,
289
+ photo: nil,
290
+ physical_addresses: nil,
291
+ preferred_text_encoding: nil,
292
+ prefix: nil,
293
+ profession: nil,
294
+ suffix: nil,
295
+ surname: nil,
296
+ urls: nil)
297
+ self.associated_persons = associated_persons if associated_persons
298
+ self.attachments = attachments if attachments
299
+ self.company_name = company_name if company_name
300
+ self.computer_network_name = computer_network_name if computer_network_name
301
+ self.customer_id = customer_id if customer_id
302
+ self.department_name = department_name if department_name
303
+ self.display_name = display_name if display_name
304
+ self.email_addresses = email_addresses if email_addresses
305
+ self.events = events if events
306
+ self.file_as = file_as if file_as
307
+ self.file_as_mapping = file_as_mapping if file_as_mapping
308
+ self.free_busy_location = free_busy_location if free_busy_location
309
+ self.gender = gender if gender
310
+ self.given_name = given_name if given_name
311
+ self.government_id_number = government_id_number if government_id_number
312
+ self.hobbies = hobbies if hobbies
313
+ self.initials = initials if initials
314
+ self.instant_messengers = instant_messengers if instant_messengers
315
+ self.job_title = job_title if job_title
316
+ self.language = language if language
317
+ self.location = location if location
318
+ self.middle_name = middle_name if middle_name
319
+ self.nickname = nickname if nickname
320
+ self.notes = notes if notes
321
+ self.notes_format = notes_format if notes_format
322
+ self.office_location = office_location if office_location
323
+ self.organizational_id_number = organizational_id_number if organizational_id_number
324
+ self.phone_numbers = phone_numbers if phone_numbers
325
+ self.photo = photo if photo
326
+ self.physical_addresses = physical_addresses if physical_addresses
327
+ self.preferred_text_encoding = preferred_text_encoding if preferred_text_encoding
328
+ self.prefix = prefix if prefix
329
+ self.profession = profession if profession
330
+ self.suffix = suffix if suffix
331
+ self.surname = surname if surname
332
+ self.urls = urls if urls
333
+ end
334
+
335
+ # Show invalid properties with the reasons. Usually used together with valid?
336
+ # @return Array for valid properties with the reasons
337
+ def list_invalid_properties
338
+ invalid_properties = Array.new
339
+ if @file_as_mapping.nil?
340
+ invalid_properties.push('invalid value for "file_as_mapping", file_as_mapping cannot be nil.')
341
+ end
342
+
343
+ if @gender.nil?
344
+ invalid_properties.push('invalid value for "gender", gender cannot be nil.')
345
+ end
346
+
347
+ if @notes_format.nil?
348
+ invalid_properties.push('invalid value for "notes_format", notes_format cannot be nil.')
349
+ end
350
+
351
+ invalid_properties
352
+ end
353
+
354
+ # Check to see if the all the properties in the model are valid
355
+ # @return true if the model is valid
356
+ def valid?
357
+ return false if @file_as_mapping.nil?
358
+ return false if @gender.nil?
359
+ return false if @notes_format.nil?
360
+ true
361
+ end
362
+
363
+ # Checks equality by comparing each attribute.
364
+ # @param [Object] Object to be compared
365
+ def ==(o)
366
+ return true if self.equal?(o)
367
+ self.class == o.class &&
368
+ associated_persons == o.associated_persons &&
369
+ attachments == o.attachments &&
370
+ company_name == o.company_name &&
371
+ computer_network_name == o.computer_network_name &&
372
+ customer_id == o.customer_id &&
373
+ department_name == o.department_name &&
374
+ display_name == o.display_name &&
375
+ email_addresses == o.email_addresses &&
376
+ events == o.events &&
377
+ file_as == o.file_as &&
378
+ file_as_mapping == o.file_as_mapping &&
379
+ free_busy_location == o.free_busy_location &&
380
+ gender == o.gender &&
381
+ given_name == o.given_name &&
382
+ government_id_number == o.government_id_number &&
383
+ hobbies == o.hobbies &&
384
+ initials == o.initials &&
385
+ instant_messengers == o.instant_messengers &&
386
+ job_title == o.job_title &&
387
+ language == o.language &&
388
+ location == o.location &&
389
+ middle_name == o.middle_name &&
390
+ nickname == o.nickname &&
391
+ notes == o.notes &&
392
+ notes_format == o.notes_format &&
393
+ office_location == o.office_location &&
394
+ organizational_id_number == o.organizational_id_number &&
395
+ phone_numbers == o.phone_numbers &&
396
+ photo == o.photo &&
397
+ physical_addresses == o.physical_addresses &&
398
+ preferred_text_encoding == o.preferred_text_encoding &&
399
+ prefix == o.prefix &&
400
+ profession == o.profession &&
401
+ suffix == o.suffix &&
402
+ surname == o.surname &&
403
+ urls == o.urls
404
+ end
405
+
406
+ # @see the `==` method
407
+ # @param [Object] Object to be compared
408
+ def eql?(o)
409
+ self == o
410
+ end
411
+
412
+ # Calculates hash code according to all attributes.
413
+ # @return [Fixnum] Hash code
414
+ def hash
415
+ [associated_persons, attachments, company_name, computer_network_name, customer_id, department_name, display_name, email_addresses, events, file_as, file_as_mapping, free_busy_location, gender, given_name, government_id_number, hobbies, initials, instant_messengers, job_title, language, location, middle_name, nickname, notes, notes_format, office_location, organizational_id_number, phone_numbers, photo, physical_addresses, preferred_text_encoding, prefix, profession, suffix, surname, urls].hash
416
+ end
417
+
418
+ # Builds the object from hash
419
+ # @param [Hash] attributes Model attributes in the form of hash
420
+ # @return [Object] Returns the model itself
421
+ def build_from_hash(attributes)
422
+ return nil unless attributes.is_a?(Hash)
423
+ self.class.swagger_types.each_pair do |key, type|
424
+ attribute_key = self.class.attribute_map[key]
425
+ attribute_key = (attribute_key[0, 1].downcase + attribute_key[1..-1]).to_sym
426
+ if type =~ /\AArray<(.*)>/i
427
+ # check to ensure the input is an array given that the the attribute
428
+ # is documented as an array but the input is not
429
+ if attributes[attribute_key].is_a?(Array)
430
+ self.send("#{key}=", attributes[attribute_key].map { |v| _deserialize($1, v) })
431
+ end
432
+ elsif !attributes[attribute_key].nil?
433
+ self.send("#{key}=", _deserialize(type, attributes[attribute_key]))
434
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
435
+ end
436
+
437
+ self
438
+ end
439
+
440
+ # Deserializes the data based on type
441
+ # @param string type Data type
442
+ # @param string value Value to be deserialized
443
+ # @return [Object] Deserialized data
444
+ def _deserialize(type, value)
445
+ case type.to_sym
446
+ when :DateTime
447
+ DateTime.parse(value)
448
+ when :Date
449
+ Date.parse(value)
450
+ when :String
451
+ value.to_s
452
+ when :Integer
453
+ value.to_i
454
+ when :Float
455
+ value.to_f
456
+ when :BOOLEAN
457
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
458
+ true
459
+ else
460
+ false
461
+ end
462
+ when :Object
463
+ # generic object (usually a Hash), return directly
464
+ value
465
+ when /\AArray<(?<inner_type>.+)>\z/
466
+ inner_type = Regexp.last_match[:inner_type]
467
+ value.map { |v| _deserialize(inner_type, v) }
468
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
469
+ k_type = Regexp.last_match[:k_type]
470
+ v_type = Regexp.last_match[:v_type]
471
+ {}.tap do |hash|
472
+ value.each do |k, v|
473
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
474
+ end
475
+ end
476
+ else # model
477
+ sub_type = value[:type] || value[:discriminator] || type
478
+ if AsposeEmailCloud.const_defined?(sub_type)
479
+ type = sub_type
480
+ end
481
+ temp_model = AsposeEmailCloud.const_get(type).new
482
+ temp_model.build_from_hash(value)
483
+ end
484
+ end
485
+
486
+ # Returns the string representation of the object
487
+ # @return [String] String presentation of the object
488
+ def to_s
489
+ to_hash.to_s
490
+ end
491
+
492
+ # to_body is an alias to to_hash (backward compatibility)
493
+ # @return [Hash] Returns the object in the form of hash
494
+ def to_body
495
+ to_hash
496
+ end
497
+
498
+ # Returns the object in the form of hash
499
+ # @return [Hash] Returns the object in the form of hash
500
+ def to_hash
501
+ hash = {}
502
+ self.class.attribute_map.each_pair do |attr, param|
503
+ value = self.send(attr)
504
+ next if value.nil?
505
+ hash[param] = _to_hash(value)
506
+ end
507
+ hash
508
+ end
509
+
510
+ # Outputs non-array value in the form of hash
511
+ # For object, use to_hash. Otherwise, just return the value
512
+ # @param [Object] value Any valid value
513
+ # @return [Hash] Returns the value in the form of hash
514
+ def _to_hash(value)
515
+ if value.is_a?(Array)
516
+ value.compact.map { |v| _to_hash(v) }
517
+ elsif value.is_a?(Hash)
518
+ {}.tap do |hash|
519
+ value.each { |k, v| hash[k] = _to_hash(v) }
520
+ end
521
+ elsif value.respond_to? :to_hash
522
+ value.to_hash
523
+ else
524
+ value
525
+ end
526
+ end
527
+
528
+ end
529
+ end