comet_backup_ruby_sdk 1.11.0 → 1.14.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 (345) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -2
  3. data/Gemfile.lock +1 -1
  4. data/README.md +3 -2
  5. data/RELEASING.md +1 -1
  6. data/comet_backup_ruby_sdk.gemspec +1 -1
  7. data/lib/api_response_error.rb +27 -0
  8. data/lib/comet/api_response_error.rb +1 -1
  9. data/lib/comet/comet_server.rb +85 -6
  10. data/lib/comet/definitions.rb +72 -14
  11. data/lib/comet/models/add_bucket_response_message.rb +1 -1
  12. data/lib/comet/models/admin_account_properties_response.rb +1 -1
  13. data/lib/comet/models/admin_email_options.rb +1 -1
  14. data/lib/comet/models/admin_resource_response.rb +1 -1
  15. data/lib/comet/models/admin_security_options.rb +3 -1
  16. data/lib/comet/models/admin_u2fregistration.rb +2 -1
  17. data/lib/comet/models/admin_user_permissions.rb +1 -1
  18. data/lib/comet/models/admin_web_authn_registration.rb +10 -1
  19. data/lib/comet/models/allowed_admin_user.rb +3 -1
  20. data/lib/comet/models/available_download.rb +1 -1
  21. data/lib/comet/models/azure_destination_location.rb +1 -1
  22. data/lib/comet/models/b2destination_location.rb +2 -1
  23. data/lib/comet/models/b2storage_extra_info.rb +1 -1
  24. data/lib/comet/models/b2transaction_totals.rb +1 -1
  25. data/lib/comet/models/b2virtual_storage_role_settings.rb +1 -1
  26. data/lib/comet/models/backup_job_advanced_options.rb +10 -1
  27. data/lib/comet/models/backup_job_detail.rb +54 -1
  28. data/lib/comet/models/backup_job_progress.rb +1 -1
  29. data/lib/comet/models/backup_rule_config.rb +10 -1
  30. data/lib/comet/models/backup_rule_event_triggers.rb +1 -1
  31. data/lib/comet/models/branding_options.rb +10 -1
  32. data/lib/comet/models/branding_properties.rb +10 -1
  33. data/lib/comet/models/browse_disk_drives_response.rb +1 -1
  34. data/lib/comet/models/browse_edbresponse.rb +1 -1
  35. data/lib/comet/models/browse_hvresponse.rb +1 -1
  36. data/lib/comet/models/browse_office_365list_virtual_accounts_response.rb +1 -1
  37. data/lib/comet/models/browse_office_365objects_response.rb +1 -1
  38. data/lib/comet/models/browse_sqlserver_response.rb +1 -1
  39. data/lib/comet/models/browse_vssresponse.rb +1 -1
  40. data/lib/comet/models/bucket_properties.rb +1 -1
  41. data/lib/comet/models/bucket_usage_info.rb +1 -1
  42. data/lib/comet/models/comet_apiresponse_message.rb +1 -1
  43. data/lib/comet/models/comet_destination_location.rb +1 -1
  44. data/lib/comet/models/constellation_check_report.rb +1 -1
  45. data/lib/comet/models/constellation_stats.rb +1 -1
  46. data/lib/comet/models/constellation_status_apiresponse.rb +1 -1
  47. data/lib/comet/models/content_measurement.rb +1 -1
  48. data/lib/comet/models/content_measurement_component.rb +1 -1
  49. data/lib/comet/models/create_group_policy_response.rb +1 -1
  50. data/lib/comet/models/custom_remote_bucket_settings.rb +1 -1
  51. data/lib/comet/models/days_of_week_config.rb +108 -0
  52. data/lib/comet/models/default_email_report_policy.rb +1 -1
  53. data/lib/comet/models/default_source_with_osrestriction.rb +1 -1
  54. data/lib/comet/models/destination_config.rb +1 -1
  55. data/lib/comet/models/destination_location.rb +1 -1
  56. data/lib/comet/models/destination_statistics.rb +1 -1
  57. data/lib/comet/models/device_config.rb +1 -1
  58. data/lib/comet/models/disk_drive.rb +1 -1
  59. data/lib/comet/models/dispatcher_admin_sources_response.rb +1 -1
  60. data/lib/comet/models/dispatcher_stored_objects_response.rb +1 -1
  61. data/lib/comet/models/dispatcher_vault_snapshots_response.rb +1 -1
  62. data/lib/comet/models/dispatcher_windisk_snapshot_response.rb +1 -1
  63. data/lib/comet/models/edbfile_info.rb +1 -1
  64. data/lib/comet/models/email_options.rb +1 -1
  65. data/lib/comet/models/email_report_config.rb +1 -1
  66. data/lib/comet/models/email_report_generated_preview.rb +1 -1
  67. data/lib/comet/models/external_ldapauthentication_source_settings.rb +1 -1
  68. data/lib/comet/models/extra_file_exclusion.rb +1 -1
  69. data/lib/comet/models/ftpdestination_location.rb +1 -1
  70. data/lib/comet/models/get_group_policy_response.rb +1 -1
  71. data/lib/comet/models/get_profile_and_hash_response_message.rb +1 -1
  72. data/lib/comet/models/get_profile_hash_response_message.rb +1 -1
  73. data/lib/comet/models/group_policy.rb +1 -1
  74. data/lib/comet/models/hour_sched_config.rb +84 -0
  75. data/lib/comet/models/hyper_vmachine_info.rb +1 -1
  76. data/lib/comet/models/install_creds.rb +1 -1
  77. data/lib/comet/models/install_token.rb +1 -1
  78. data/lib/comet/models/install_token_response.rb +1 -1
  79. data/lib/comet/models/job_entry.rb +2 -1
  80. data/lib/comet/models/live_user_connection.rb +1 -1
  81. data/lib/comet/models/local_destination_location.rb +1 -1
  82. data/lib/comet/models/mac_oscode_sign_properties.rb +70 -1
  83. data/lib/comet/models/mongo_dbconnection.rb +1 -1
  84. data/lib/comet/models/mssqlconnection.rb +1 -1
  85. data/lib/comet/models/my_sqlconnection.rb +1 -1
  86. data/lib/comet/models/new_bucket_detail.rb +1 -1
  87. data/lib/comet/models/news_entry.rb +1 -1
  88. data/lib/comet/models/office_365connection.rb +1 -1
  89. data/lib/comet/models/office_365credential.rb +1 -1
  90. data/lib/comet/models/office_365custom_setting.rb +2 -1
  91. data/lib/comet/models/office_365custom_setting_v2.rb +1 -1
  92. data/lib/comet/models/office_365mixed_virtual_account.rb +9 -1
  93. data/lib/comet/models/office_365object_info.rb +1 -1
  94. data/lib/comet/models/organization.rb +1 -1
  95. data/lib/comet/models/organization_response.rb +1 -1
  96. data/lib/comet/models/osinfo.rb +1 -1
  97. data/lib/comet/models/partition.rb +1 -1
  98. data/lib/comet/models/private_branding_properties.rb +10 -1
  99. data/lib/comet/models/protected_item_engine_type_policy.rb +1 -1
  100. data/lib/comet/models/public_branding_properties.rb +1 -1
  101. data/lib/comet/models/register_office_application_begin_response.rb +1 -1
  102. data/lib/comet/models/register_office_application_check_response.rb +1 -1
  103. data/lib/comet/models/remote_server_address.rb +1 -1
  104. data/lib/comet/models/remote_storage_option.rb +1 -1
  105. data/lib/comet/models/replicator_state_apiresponse.rb +1 -1
  106. data/lib/comet/models/request_storage_vault_response_message.rb +1 -1
  107. data/lib/comet/models/restore_job_advanced_options.rb +1 -1
  108. data/lib/comet/models/retention_policy.rb +1 -1
  109. data/lib/comet/models/retention_range.rb +1 -1
  110. data/lib/comet/models/s3destination_location.rb +1 -1
  111. data/lib/comet/models/schedule_config.rb +37 -1
  112. data/lib/comet/models/search_clause.rb +1 -1
  113. data/lib/comet/models/self_backup_statistics.rb +1 -1
  114. data/lib/comet/models/server_config_options_branding_fragment.rb +1 -1
  115. data/lib/comet/models/server_config_options_software_build_role_fragment.rb +1 -1
  116. data/lib/comet/models/server_meta_branding_properties.rb +1 -1
  117. data/lib/comet/models/server_meta_version_info.rb +1 -1
  118. data/lib/comet/models/session_key_regenerated_response.rb +1 -1
  119. data/lib/comet/models/sftpdestination_location.rb +1 -1
  120. data/lib/comet/models/size_measurement.rb +1 -1
  121. data/lib/comet/models/software_build_role_options.rb +1 -1
  122. data/lib/comet/models/software_update_news_response.rb +1 -1
  123. data/lib/comet/models/source_basic_info.rb +1 -1
  124. data/lib/comet/models/source_config.rb +1 -1
  125. data/lib/comet/models/source_include_pattern.rb +1 -1
  126. data/lib/comet/models/source_statistics.rb +1 -1
  127. data/lib/comet/models/spanned_destination_location.rb +1 -1
  128. data/lib/comet/models/spanned_storage_extra_info.rb +1 -1
  129. data/lib/comet/models/sshconnection.rb +1 -1
  130. data/lib/comet/models/stat_result.rb +1 -1
  131. data/lib/comet/models/storage_free_space_info.rb +1 -1
  132. data/lib/comet/models/storage_vault_provider_policy.rb +1 -1
  133. data/lib/comet/models/stored_object.rb +2 -1
  134. data/lib/comet/models/streamable_event.rb +1 -1
  135. data/lib/comet/models/swift_destination_location.rb +1 -1
  136. data/lib/comet/models/test_response.rb +1 -1
  137. data/lib/comet/models/totp_regenerated_response.rb +1 -1
  138. data/lib/comet/models/u2fregister_request.rb +2 -1
  139. data/lib/comet/models/u2fregistered_key.rb +2 -1
  140. data/lib/comet/models/u2fregistration_challenge_response.rb +2 -1
  141. data/lib/comet/models/u2fsign_request.rb +2 -1
  142. data/lib/comet/models/u2fsign_response.rb +2 -1
  143. data/lib/comet/models/uninstall_config.rb +1 -1
  144. data/lib/comet/models/update_campaign_device_status.rb +1 -1
  145. data/lib/comet/models/update_campaign_options.rb +24 -1
  146. data/lib/comet/models/update_campaign_properties.rb +21 -1
  147. data/lib/comet/models/update_campaign_status.rb +21 -1
  148. data/lib/comet/models/update_campaign_status_device_entry.rb +1 -1
  149. data/lib/comet/models/user_custom_email_settings.rb +1 -1
  150. data/lib/comet/models/user_on_server.rb +1 -1
  151. data/lib/comet/models/user_policy.rb +1 -1
  152. data/lib/comet/models/user_profile_config.rb +10 -1
  153. data/lib/comet/models/user_profile_fragment.rb +1 -1
  154. data/lib/comet/models/vault_snapshot.rb +1 -1
  155. data/lib/comet/models/vmdksnapshot_view_options.rb +90 -0
  156. data/lib/comet/models/vsscomponent.rb +1 -1
  157. data/lib/comet/models/vsswriter_info.rb +1 -1
  158. data/lib/comet/models/wasabi_virtual_storage_role_settings.rb +1 -1
  159. data/lib/comet/models/web_authn_authenticator_selection.rb +1 -1
  160. data/lib/comet/models/web_authn_credential.rb +1 -1
  161. data/lib/comet/models/web_authn_credential_assertion.rb +1 -1
  162. data/lib/comet/models/web_authn_credential_descriptor.rb +1 -1
  163. data/lib/comet/models/web_authn_credential_entity.rb +1 -1
  164. data/lib/comet/models/web_authn_credential_parameter.rb +1 -1
  165. data/lib/comet/models/web_authn_public_key_credential_creation_options.rb +3 -4
  166. data/lib/comet/models/web_authn_public_key_credential_request_options.rb +3 -4
  167. data/lib/comet/models/web_authn_registration_challenge_response.rb +1 -1
  168. data/lib/comet/models/web_authn_relying_party_entity.rb +1 -1
  169. data/lib/comet/models/web_authn_sign_request.rb +1 -1
  170. data/lib/comet/models/web_authn_sign_response.rb +1 -1
  171. data/lib/comet/models/web_authn_user_entity.rb +1 -1
  172. data/lib/comet/models/web_interface_branding_properties.rb +1 -1
  173. data/lib/comet/models/webhook_option.rb +1 -1
  174. data/lib/comet/models/win_smbauth.rb +1 -1
  175. data/lib/comet/models/windows_code_sign_properties.rb +1 -1
  176. data/lib/comet_backup_ruby_sdk.rb +4 -1
  177. data/lib/comet_server.rb +3785 -0
  178. data/lib/definitions.rb +710 -0
  179. data/lib/models/add_bucket_response_message.rb +102 -0
  180. data/lib/models/admin_account_properties_response.rb +91 -0
  181. data/lib/models/admin_email_options.rb +84 -0
  182. data/lib/models/admin_resource_response.rb +93 -0
  183. data/lib/models/admin_security_options.rb +177 -0
  184. data/lib/models/admin_u2fregistration.rb +93 -0
  185. data/lib/models/admin_user_permissions.rb +106 -0
  186. data/lib/models/admin_web_authn_registration.rb +121 -0
  187. data/lib/models/allowed_admin_user.rb +214 -0
  188. data/lib/models/available_download.rb +90 -0
  189. data/lib/models/azure_destination_location.rb +111 -0
  190. data/lib/models/b2destination_location.rb +130 -0
  191. data/lib/models/b2storage_extra_info.rb +81 -0
  192. data/lib/models/b2transaction_totals.rb +93 -0
  193. data/lib/models/b2virtual_storage_role_settings.rb +99 -0
  194. data/lib/models/backup_job_advanced_options.rb +117 -0
  195. data/lib/models/backup_job_detail.rb +328 -0
  196. data/lib/models/backup_job_progress.rb +111 -0
  197. data/lib/models/backup_rule_config.rb +233 -0
  198. data/lib/models/backup_rule_event_triggers.rb +82 -0
  199. data/lib/models/branding_options.rb +335 -0
  200. data/lib/models/branding_properties.rb +293 -0
  201. data/lib/models/browse_disk_drives_response.rb +99 -0
  202. data/lib/models/browse_edbresponse.rb +99 -0
  203. data/lib/models/browse_hvresponse.rb +99 -0
  204. data/lib/models/browse_office_365list_virtual_accounts_response.rb +99 -0
  205. data/lib/models/browse_office_365objects_response.rb +99 -0
  206. data/lib/models/browse_sqlserver_response.rb +100 -0
  207. data/lib/models/browse_vssresponse.rb +99 -0
  208. data/lib/models/bucket_properties.rb +110 -0
  209. data/lib/models/bucket_usage_info.rb +97 -0
  210. data/lib/models/comet_apiresponse_message.rb +84 -0
  211. data/lib/models/comet_destination_location.rb +93 -0
  212. data/lib/models/constellation_check_report.rb +99 -0
  213. data/lib/models/constellation_stats.rb +102 -0
  214. data/lib/models/constellation_status_apiresponse.rb +114 -0
  215. data/lib/models/content_measurement.rb +99 -0
  216. data/lib/models/content_measurement_component.rb +91 -0
  217. data/lib/models/create_group_policy_response.rb +93 -0
  218. data/lib/models/custom_remote_bucket_settings.rb +75 -0
  219. data/lib/models/days_of_week_config.rb +108 -0
  220. data/lib/models/default_email_report_policy.rb +87 -0
  221. data/lib/models/default_source_with_osrestriction.rb +83 -0
  222. data/lib/models/destination_config.rb +562 -0
  223. data/lib/models/destination_location.rb +421 -0
  224. data/lib/models/destination_statistics.rb +115 -0
  225. data/lib/models/device_config.rb +124 -0
  226. data/lib/models/disk_drive.rb +180 -0
  227. data/lib/models/dispatcher_admin_sources_response.rb +100 -0
  228. data/lib/models/dispatcher_stored_objects_response.rb +99 -0
  229. data/lib/models/dispatcher_vault_snapshots_response.rb +99 -0
  230. data/lib/models/dispatcher_windisk_snapshot_response.rb +99 -0
  231. data/lib/models/edbfile_info.rb +99 -0
  232. data/lib/models/email_options.rb +153 -0
  233. data/lib/models/email_report_config.rb +98 -0
  234. data/lib/models/email_report_generated_preview.rb +136 -0
  235. data/lib/models/external_ldapauthentication_source_settings.rb +135 -0
  236. data/lib/models/extra_file_exclusion.rb +90 -0
  237. data/lib/models/ftpdestination_location.rb +141 -0
  238. data/lib/models/get_group_policy_response.rb +101 -0
  239. data/lib/models/get_profile_and_hash_response_message.rb +101 -0
  240. data/lib/models/get_profile_hash_response_message.rb +93 -0
  241. data/lib/models/group_policy.rb +98 -0
  242. data/lib/models/hour_sched_config.rb +84 -0
  243. data/lib/models/hyper_vmachine_info.rb +84 -0
  244. data/lib/models/install_creds.rb +99 -0
  245. data/lib/models/install_token.rb +117 -0
  246. data/lib/models/install_token_response.rb +92 -0
  247. data/lib/models/job_entry.rb +94 -0
  248. data/lib/models/live_user_connection.rb +149 -0
  249. data/lib/models/local_destination_location.rb +102 -0
  250. data/lib/models/mac_oscode_sign_properties.rb +197 -0
  251. data/lib/models/mongo_dbconnection.rb +230 -0
  252. data/lib/models/mssqlconnection.rb +120 -0
  253. data/lib/models/my_sqlconnection.rb +141 -0
  254. data/lib/models/new_bucket_detail.rb +84 -0
  255. data/lib/models/news_entry.rb +93 -0
  256. data/lib/models/office_365connection.rb +131 -0
  257. data/lib/models/office_365credential.rb +111 -0
  258. data/lib/models/office_365custom_setting.rb +133 -0
  259. data/lib/models/office_365custom_setting_v2.rb +108 -0
  260. data/lib/models/office_365mixed_virtual_account.rb +211 -0
  261. data/lib/models/office_365object_info.rb +118 -0
  262. data/lib/models/organization.rb +151 -0
  263. data/lib/models/organization_response.rb +101 -0
  264. data/lib/models/osinfo.rb +99 -0
  265. data/lib/models/partition.rb +172 -0
  266. data/lib/models/private_branding_properties.rb +227 -0
  267. data/lib/models/protected_item_engine_type_policy.rb +88 -0
  268. data/lib/models/public_branding_properties.rb +132 -0
  269. data/lib/models/register_office_application_begin_response.rb +93 -0
  270. data/lib/models/register_office_application_check_response.rb +100 -0
  271. data/lib/models/remote_server_address.rb +167 -0
  272. data/lib/models/remote_storage_option.rb +188 -0
  273. data/lib/models/replicator_state_apiresponse.rb +174 -0
  274. data/lib/models/request_storage_vault_response_message.rb +93 -0
  275. data/lib/models/restore_job_advanced_options.rb +131 -0
  276. data/lib/models/retention_policy.rb +90 -0
  277. data/lib/models/retention_range.rb +138 -0
  278. data/lib/models/s3destination_location.rb +123 -0
  279. data/lib/models/s3generic_virtual_storage_role.rb +111 -0
  280. data/lib/models/schedule_config.rb +131 -0
  281. data/lib/models/search_clause.rb +119 -0
  282. data/lib/models/self_backup_statistics.rb +108 -0
  283. data/lib/models/server_config_options_branding_fragment.rb +74 -0
  284. data/lib/models/server_config_options_software_build_role_fragment.rb +74 -0
  285. data/lib/models/server_meta_branding_properties.rb +144 -0
  286. data/lib/models/server_meta_version_info.rb +261 -0
  287. data/lib/models/session_key_regenerated_response.rb +102 -0
  288. data/lib/models/sftpdestination_location.rb +135 -0
  289. data/lib/models/size_measurement.rb +93 -0
  290. data/lib/models/software_build_role_options.rb +78 -0
  291. data/lib/models/software_update_news_response.rb +109 -0
  292. data/lib/models/source_basic_info.rb +101 -0
  293. data/lib/models/source_config.rb +202 -0
  294. data/lib/models/source_include_pattern.rb +84 -0
  295. data/lib/models/source_statistics.rb +82 -0
  296. data/lib/models/spanned_destination_location.rb +87 -0
  297. data/lib/models/spanned_storage_extra_info.rb +81 -0
  298. data/lib/models/sshconnection.rb +126 -0
  299. data/lib/models/stat_result.rb +111 -0
  300. data/lib/models/storage_free_space_info.rb +110 -0
  301. data/lib/models/storage_vault_provider_policy.rb +88 -0
  302. data/lib/models/stored_object.rb +238 -0
  303. data/lib/models/streamable_event.rb +92 -0
  304. data/lib/models/swift_destination_location.rb +209 -0
  305. data/lib/models/test_response.rb +90 -0
  306. data/lib/models/totp_regenerated_response.rb +111 -0
  307. data/lib/models/u2fregister_request.rb +85 -0
  308. data/lib/models/u2fregistered_key.rb +94 -0
  309. data/lib/models/u2fregistration_challenge_response.rb +133 -0
  310. data/lib/models/u2fsign_request.rb +109 -0
  311. data/lib/models/u2fsign_response.rb +103 -0
  312. data/lib/models/uninstall_config.rb +78 -0
  313. data/lib/models/update_campaign_device_status.rb +75 -0
  314. data/lib/models/update_campaign_options.rb +113 -0
  315. data/lib/models/update_campaign_properties.rb +128 -0
  316. data/lib/models/update_campaign_status.rb +143 -0
  317. data/lib/models/update_campaign_status_device_entry.rb +93 -0
  318. data/lib/models/user_custom_email_settings.rb +81 -0
  319. data/lib/models/user_on_server.rb +84 -0
  320. data/lib/models/user_policy.rb +339 -0
  321. data/lib/models/user_profile_config.rb +349 -0
  322. data/lib/models/user_profile_fragment.rb +75 -0
  323. data/lib/models/vault_snapshot.rb +99 -0
  324. data/lib/models/vmdksnapshot_view_options.rb +90 -0
  325. data/lib/models/vsscomponent.rb +99 -0
  326. data/lib/models/vsswriter_info.rb +90 -0
  327. data/lib/models/wasabi_virtual_storage_role_settings.rb +93 -0
  328. data/lib/models/web_authn_authenticator_selection.rb +96 -0
  329. data/lib/models/web_authn_credential.rb +105 -0
  330. data/lib/models/web_authn_credential_assertion.rb +74 -0
  331. data/lib/models/web_authn_credential_descriptor.rb +101 -0
  332. data/lib/models/web_authn_credential_entity.rb +86 -0
  333. data/lib/models/web_authn_credential_parameter.rb +84 -0
  334. data/lib/models/web_authn_public_key_credential_creation_options.rb +172 -0
  335. data/lib/models/web_authn_public_key_credential_request_options.rb +140 -0
  336. data/lib/models/web_authn_registration_challenge_response.rb +101 -0
  337. data/lib/models/web_authn_relying_party_entity.rb +95 -0
  338. data/lib/models/web_authn_sign_request.rb +83 -0
  339. data/lib/models/web_authn_sign_response.rb +84 -0
  340. data/lib/models/web_authn_user_entity.rb +105 -0
  341. data/lib/models/web_interface_branding_properties.rb +108 -0
  342. data/lib/models/webhook_option.rb +107 -0
  343. data/lib/models/win_smbauth.rb +102 -0
  344. data/lib/models/windows_code_sign_properties.rb +147 -0
  345. metadata +174 -2
@@ -0,0 +1,111 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+ #
8
+ # frozen_string_literal: true
9
+
10
+ require 'json'
11
+
12
+ module Comet
13
+
14
+ # StatResult is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class StatResult
16
+
17
+ # @type [Number] buckets
18
+ attr_accessor :buckets
19
+
20
+ # @type [Number] users
21
+ attr_accessor :users
22
+
23
+ # @type [Number] devices
24
+ attr_accessor :devices
25
+
26
+ # @type [Number] boosters
27
+ attr_accessor :boosters
28
+
29
+ # @type [Number] network_devices
30
+ attr_accessor :network_devices
31
+
32
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
33
+ attr_accessor :unknown_json_fields
34
+
35
+ def initialize
36
+ clear
37
+ end
38
+
39
+ def clear
40
+ @buckets = 0
41
+ @users = 0
42
+ @devices = 0
43
+ @boosters = 0
44
+ @network_devices = 0
45
+ @unknown_json_fields = {}
46
+ end
47
+
48
+ # @param [String] json_string The complete object in JSON format
49
+ def from_json(json_string)
50
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
51
+
52
+ from_hash(JSON.parse(json_string))
53
+ end
54
+
55
+ # @param [Hash] obj The complete object as a Ruby hash
56
+ def from_hash(obj)
57
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
58
+
59
+ obj.each do |k, v|
60
+ case k
61
+ when 'Buckets'
62
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
63
+
64
+ @buckets = v
65
+ when 'Users'
66
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
67
+
68
+ @users = v
69
+ when 'Devices'
70
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
71
+
72
+ @devices = v
73
+ when 'Boosters'
74
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
75
+
76
+ @boosters = v
77
+ when 'NetworkDevices'
78
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
79
+
80
+ @network_devices = v
81
+ else
82
+ @unknown_json_fields[k] = v
83
+ end
84
+ end
85
+ end
86
+
87
+ # @return [Hash] The complete object as a Ruby hash
88
+ def to_hash
89
+ ret = {}
90
+ ret['Buckets'] = @buckets
91
+ ret['Users'] = @users
92
+ ret['Devices'] = @devices
93
+ ret['Boosters'] = @boosters
94
+ ret['NetworkDevices'] = @network_devices
95
+ @unknown_json_fields.each do |k, v|
96
+ ret[k] = v
97
+ end
98
+ ret
99
+ end
100
+
101
+ # @return [Hash] The complete object as a Ruby hash
102
+ def to_h
103
+ to_hash
104
+ end
105
+
106
+ # @return [String] The complete object as a JSON string
107
+ def to_json(options = {})
108
+ to_hash.to_json(options)
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,110 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+ #
8
+ # frozen_string_literal: true
9
+
10
+ require 'json'
11
+
12
+ module Comet
13
+
14
+ # StorageFreeSpaceInfo is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class StorageFreeSpaceInfo
16
+
17
+ # @type [Boolean] unlimited
18
+ attr_accessor :unlimited
19
+
20
+ # @type [Number] used_percent
21
+ attr_accessor :used_percent
22
+
23
+ # @type [Number] available_bytes
24
+ attr_accessor :available_bytes
25
+
26
+ # @type [Comet::SpannedStorageExtraInfo] spanned
27
+ attr_accessor :spanned
28
+
29
+ # @type [Comet::B2StorageExtraInfo] b2
30
+ attr_accessor :b2
31
+
32
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
33
+ attr_accessor :unknown_json_fields
34
+
35
+ def initialize
36
+ clear
37
+ end
38
+
39
+ def clear
40
+ @used_percent = 0.0
41
+ @available_bytes = 0
42
+ @spanned = Comet::SpannedStorageExtraInfo.new
43
+ @b2 = Comet::B2StorageExtraInfo.new
44
+ @unknown_json_fields = {}
45
+ end
46
+
47
+ # @param [String] json_string The complete object in JSON format
48
+ def from_json(json_string)
49
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
50
+
51
+ from_hash(JSON.parse(json_string))
52
+ end
53
+
54
+ # @param [Hash] obj The complete object as a Ruby hash
55
+ def from_hash(obj)
56
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
57
+
58
+ obj.each do |k, v|
59
+ case k
60
+ when 'Unlimited'
61
+ @unlimited = v
62
+ when 'UsedPercent'
63
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
64
+
65
+ @used_percent = v
66
+ when 'AvailableBytes'
67
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
68
+
69
+ @available_bytes = v
70
+ when 'Spanned'
71
+ @spanned = Comet::SpannedStorageExtraInfo.new
72
+ @spanned.from_hash(v)
73
+ when 'B2'
74
+ @b2 = Comet::B2StorageExtraInfo.new
75
+ @b2.from_hash(v)
76
+ else
77
+ @unknown_json_fields[k] = v
78
+ end
79
+ end
80
+ end
81
+
82
+ # @return [Hash] The complete object as a Ruby hash
83
+ def to_hash
84
+ ret = {}
85
+ ret['Unlimited'] = @unlimited
86
+ ret['UsedPercent'] = @used_percent
87
+ ret['AvailableBytes'] = @available_bytes
88
+ unless @spanned.nil?
89
+ ret['Spanned'] = @spanned
90
+ end
91
+ unless @b2.nil?
92
+ ret['B2'] = @b2
93
+ end
94
+ @unknown_json_fields.each do |k, v|
95
+ ret[k] = v
96
+ end
97
+ ret
98
+ end
99
+
100
+ # @return [Hash] The complete object as a Ruby hash
101
+ def to_h
102
+ to_hash
103
+ end
104
+
105
+ # @return [String] The complete object as a JSON string
106
+ def to_json(options = {})
107
+ to_hash.to_json(options)
108
+ end
109
+ end
110
+ end
@@ -0,0 +1,88 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+ #
8
+ # frozen_string_literal: true
9
+
10
+ require 'json'
11
+
12
+ module Comet
13
+
14
+ # StorageVaultProviderPolicy is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class StorageVaultProviderPolicy
16
+
17
+ # @type [Boolean] should_restrict_provider_list
18
+ attr_accessor :should_restrict_provider_list
19
+
20
+ # @type [Array<Number>] allowed_providers_when_restricted
21
+ attr_accessor :allowed_providers_when_restricted
22
+
23
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
24
+ attr_accessor :unknown_json_fields
25
+
26
+ def initialize
27
+ clear
28
+ end
29
+
30
+ def clear
31
+ @allowed_providers_when_restricted = []
32
+ @unknown_json_fields = {}
33
+ end
34
+
35
+ # @param [String] json_string The complete object in JSON format
36
+ def from_json(json_string)
37
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
38
+
39
+ from_hash(JSON.parse(json_string))
40
+ end
41
+
42
+ # @param [Hash] obj The complete object as a Ruby hash
43
+ def from_hash(obj)
44
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
45
+
46
+ obj.each do |k, v|
47
+ case k
48
+ when 'ShouldRestrictProviderList'
49
+ @should_restrict_provider_list = v
50
+ when 'AllowedProvidersWhenRestricted'
51
+ if v.nil?
52
+ @allowed_providers_when_restricted = []
53
+ else
54
+ @allowed_providers_when_restricted = Array.new(v.length)
55
+ v.each_with_index do |v1, i1|
56
+ raise TypeError, "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric
57
+
58
+ @allowed_providers_when_restricted[i1] = v1
59
+ end
60
+ end
61
+ else
62
+ @unknown_json_fields[k] = v
63
+ end
64
+ end
65
+ end
66
+
67
+ # @return [Hash] The complete object as a Ruby hash
68
+ def to_hash
69
+ ret = {}
70
+ ret['ShouldRestrictProviderList'] = @should_restrict_provider_list
71
+ ret['AllowedProvidersWhenRestricted'] = @allowed_providers_when_restricted
72
+ @unknown_json_fields.each do |k, v|
73
+ ret[k] = v
74
+ end
75
+ ret
76
+ end
77
+
78
+ # @return [Hash] The complete object as a Ruby hash
79
+ def to_h
80
+ to_hash
81
+ end
82
+
83
+ # @return [String] The complete object as a JSON string
84
+ def to_json(options = {})
85
+ to_hash.to_json(options)
86
+ end
87
+ end
88
+ end
@@ -0,0 +1,238 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+ #
8
+ # frozen_string_literal: true
9
+
10
+ require 'json'
11
+
12
+ module Comet
13
+
14
+ # StoredObject is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class StoredObject
16
+
17
+ # @type [String] name
18
+ attr_accessor :name
19
+
20
+ # @type [Number] modify_time
21
+ attr_accessor :modify_time
22
+
23
+ # One of the STOREDOBJECTTYPE_... constant values
24
+ # @type [String] type
25
+ attr_accessor :type
26
+
27
+ # @type [String] subtree
28
+ attr_accessor :subtree
29
+
30
+ # @type [Number] size
31
+ attr_accessor :size
32
+
33
+ # @type [String] display_name
34
+ attr_accessor :display_name
35
+
36
+ # @type [String] item_class
37
+ attr_accessor :item_class
38
+
39
+ # @type [String] from
40
+ attr_accessor :from
41
+
42
+ # @type [String] to
43
+ attr_accessor :to
44
+
45
+ # @type [Number] received_date_time
46
+ attr_accessor :received_date_time
47
+
48
+ # @type [Boolean] has_attachments
49
+ attr_accessor :has_attachments
50
+
51
+ # @type [Number] start_time
52
+ attr_accessor :start_time
53
+
54
+ # @type [Number] end_time
55
+ attr_accessor :end_time
56
+
57
+ # @type [Boolean] recursive_count_known
58
+ attr_accessor :recursive_count_known
59
+
60
+ # @type [Number] recursive_files
61
+ attr_accessor :recursive_files
62
+
63
+ # @type [Number] recursive_bytes
64
+ attr_accessor :recursive_bytes
65
+
66
+ # @type [Number] recursive_folders
67
+ attr_accessor :recursive_folders
68
+
69
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
70
+ attr_accessor :unknown_json_fields
71
+
72
+ def initialize
73
+ clear
74
+ end
75
+
76
+ def clear
77
+ @name = ''
78
+ @modify_time = 0
79
+ @type = ''
80
+ @subtree = ''
81
+ @size = 0
82
+ @display_name = ''
83
+ @item_class = ''
84
+ @from = ''
85
+ @to = ''
86
+ @received_date_time = 0
87
+ @start_time = 0
88
+ @end_time = 0
89
+ @recursive_files = 0
90
+ @recursive_bytes = 0
91
+ @recursive_folders = 0
92
+ @unknown_json_fields = {}
93
+ end
94
+
95
+ # @param [String] json_string The complete object in JSON format
96
+ def from_json(json_string)
97
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
98
+
99
+ from_hash(JSON.parse(json_string))
100
+ end
101
+
102
+ # @param [Hash] obj The complete object as a Ruby hash
103
+ def from_hash(obj)
104
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
105
+
106
+ obj.each do |k, v|
107
+ case k
108
+ when 'name'
109
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
110
+
111
+ @name = v
112
+ when 'mtime'
113
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
114
+
115
+ @modify_time = v
116
+ when 'type'
117
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
118
+
119
+ @type = v
120
+ when 'subtree'
121
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
122
+
123
+ @subtree = v
124
+ when 'size'
125
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
126
+
127
+ @size = v
128
+ when 'dname'
129
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
130
+
131
+ @display_name = v
132
+ when 'itemClass'
133
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
134
+
135
+ @item_class = v
136
+ when 'from'
137
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
138
+
139
+ @from = v
140
+ when 'to'
141
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
142
+
143
+ @to = v
144
+ when 'rtime'
145
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
146
+
147
+ @received_date_time = v
148
+ when 'has_attachments'
149
+ @has_attachments = v
150
+ when 'stime'
151
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
152
+
153
+ @start_time = v
154
+ when 'etime'
155
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
156
+
157
+ @end_time = v
158
+ when 'r'
159
+ @recursive_count_known = v
160
+ when 'f'
161
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
162
+
163
+ @recursive_files = v
164
+ when 'b'
165
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
166
+
167
+ @recursive_bytes = v
168
+ when 'd'
169
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
170
+
171
+ @recursive_folders = v
172
+ else
173
+ @unknown_json_fields[k] = v
174
+ end
175
+ end
176
+ end
177
+
178
+ # @return [Hash] The complete object as a Ruby hash
179
+ def to_hash
180
+ ret = {}
181
+ ret['name'] = @name
182
+ ret['mtime'] = @modify_time
183
+ ret['type'] = @type
184
+ ret['subtree'] = @subtree
185
+ ret['size'] = @size
186
+ unless @display_name.nil?
187
+ ret['dname'] = @display_name
188
+ end
189
+ unless @item_class.nil?
190
+ ret['itemClass'] = @item_class
191
+ end
192
+ unless @from.nil?
193
+ ret['from'] = @from
194
+ end
195
+ unless @to.nil?
196
+ ret['to'] = @to
197
+ end
198
+ unless @received_date_time.nil?
199
+ ret['rtime'] = @received_date_time
200
+ end
201
+ unless @has_attachments.nil?
202
+ ret['has_attachments'] = @has_attachments
203
+ end
204
+ unless @start_time.nil?
205
+ ret['stime'] = @start_time
206
+ end
207
+ unless @end_time.nil?
208
+ ret['etime'] = @end_time
209
+ end
210
+ unless @recursive_count_known.nil?
211
+ ret['r'] = @recursive_count_known
212
+ end
213
+ unless @recursive_files.nil?
214
+ ret['f'] = @recursive_files
215
+ end
216
+ unless @recursive_bytes.nil?
217
+ ret['b'] = @recursive_bytes
218
+ end
219
+ unless @recursive_folders.nil?
220
+ ret['d'] = @recursive_folders
221
+ end
222
+ @unknown_json_fields.each do |k, v|
223
+ ret[k] = v
224
+ end
225
+ ret
226
+ end
227
+
228
+ # @return [Hash] The complete object as a Ruby hash
229
+ def to_h
230
+ to_hash
231
+ end
232
+
233
+ # @return [String] The complete object as a JSON string
234
+ def to_json(options = {})
235
+ to_hash.to_json(options)
236
+ end
237
+ end
238
+ end
@@ -0,0 +1,92 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+ #
8
+ # frozen_string_literal: true
9
+
10
+ require 'json'
11
+
12
+ module Comet
13
+
14
+ # StreamableEvent is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class StreamableEvent
16
+
17
+ # @type [String] owner_organization_id
18
+ attr_accessor :owner_organization_id
19
+
20
+ # @type [Number] type
21
+ attr_accessor :type
22
+
23
+ # @type [Object] data
24
+ attr_accessor :data
25
+
26
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
27
+ attr_accessor :unknown_json_fields
28
+
29
+ def initialize
30
+ clear
31
+ end
32
+
33
+ def clear
34
+ @owner_organization_id = ''
35
+ @type = 0
36
+ @unknown_json_fields = {}
37
+ end
38
+
39
+ # @param [String] json_string The complete object in JSON format
40
+ def from_json(json_string)
41
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
42
+
43
+ from_hash(JSON.parse(json_string))
44
+ end
45
+
46
+ # @param [Hash] obj The complete object as a Ruby hash
47
+ def from_hash(obj)
48
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
49
+
50
+ obj.each do |k, v|
51
+ case k
52
+ when 'OwnerOrganizationID'
53
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
54
+
55
+ @owner_organization_id = v
56
+ when 'Type'
57
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
58
+
59
+ @type = v
60
+ when 'Data'
61
+ @data = v
62
+ else
63
+ @unknown_json_fields[k] = v
64
+ end
65
+ end
66
+ end
67
+
68
+ # @return [Hash] The complete object as a Ruby hash
69
+ def to_hash
70
+ ret = {}
71
+ ret['OwnerOrganizationID'] = @owner_organization_id
72
+ ret['Type'] = @type
73
+ unless @data.nil?
74
+ ret['Data'] = @data
75
+ end
76
+ @unknown_json_fields.each do |k, v|
77
+ ret[k] = v
78
+ end
79
+ ret
80
+ end
81
+
82
+ # @return [Hash] The complete object as a Ruby hash
83
+ def to_h
84
+ to_hash
85
+ end
86
+
87
+ # @return [String] The complete object as a JSON string
88
+ def to_json(options = {})
89
+ to_hash.to_json(options)
90
+ end
91
+ end
92
+ end