comet_backup_ruby_sdk 1.8.0 → 1.12.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 (174) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/CHANGELOG.md +31 -0
  4. data/Gemfile.lock +3 -3
  5. data/README.md +1 -1
  6. data/RELEASING.md +1 -0
  7. data/comet_backup_ruby_sdk.gemspec +2 -2
  8. data/lib/comet/api_response_error.rb +1 -1
  9. data/lib/comet/comet_server.rb +197 -4
  10. data/lib/comet/definitions.rb +52 -13
  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 +26 -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 +121 -0
  19. data/lib/comet/models/allowed_admin_user.rb +214 -0
  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 +10 -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 +7 -1
  26. data/lib/comet/models/backup_job_advanced_options.rb +1 -1
  27. data/lib/comet/models/backup_job_detail.rb +43 -1
  28. data/lib/comet/models/backup_job_progress.rb +1 -1
  29. data/lib/comet/models/backup_rule_config.rb +1 -1
  30. data/lib/comet/models/backup_rule_event_triggers.rb +1 -1
  31. data/lib/comet/models/branding_options.rb +1 -1
  32. data/lib/comet/models/branding_properties.rb +1 -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 +99 -0
  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/default_email_report_policy.rb +1 -1
  52. data/lib/comet/models/default_source_with_osrestriction.rb +1 -1
  53. data/lib/comet/models/destination_config.rb +1 -1
  54. data/lib/comet/models/destination_location.rb +1 -1
  55. data/lib/comet/models/destination_statistics.rb +1 -1
  56. data/lib/comet/models/device_config.rb +12 -1
  57. data/lib/comet/models/disk_drive.rb +1 -1
  58. data/lib/comet/models/dispatcher_admin_sources_response.rb +1 -1
  59. data/lib/comet/models/dispatcher_stored_objects_response.rb +1 -1
  60. data/lib/comet/models/dispatcher_vault_snapshots_response.rb +1 -1
  61. data/lib/comet/models/dispatcher_windisk_snapshot_response.rb +99 -0
  62. data/lib/comet/models/edbfile_info.rb +1 -1
  63. data/lib/comet/models/email_options.rb +1 -1
  64. data/lib/comet/models/email_report_config.rb +1 -1
  65. data/lib/comet/models/email_report_generated_preview.rb +26 -1
  66. data/lib/comet/models/external_ldapauthentication_source_settings.rb +1 -1
  67. data/lib/comet/models/extra_file_exclusion.rb +1 -1
  68. data/lib/comet/models/ftpdestination_location.rb +1 -1
  69. data/lib/comet/models/get_group_policy_response.rb +1 -1
  70. data/lib/comet/models/get_profile_and_hash_response_message.rb +1 -1
  71. data/lib/comet/models/get_profile_hash_response_message.rb +1 -1
  72. data/lib/comet/models/group_policy.rb +1 -1
  73. data/lib/comet/models/hyper_vmachine_info.rb +1 -1
  74. data/lib/comet/models/install_creds.rb +1 -1
  75. data/lib/comet/models/install_token.rb +1 -1
  76. data/lib/comet/models/install_token_response.rb +1 -1
  77. data/lib/comet/models/job_entry.rb +1 -1
  78. data/lib/comet/models/live_user_connection.rb +1 -1
  79. data/lib/comet/models/local_destination_location.rb +1 -1
  80. data/lib/comet/models/mac_oscode_sign_properties.rb +1 -1
  81. data/lib/comet/models/mongo_dbconnection.rb +1 -1
  82. data/lib/comet/models/mssqlconnection.rb +1 -1
  83. data/lib/comet/models/my_sqlconnection.rb +40 -1
  84. data/lib/comet/models/new_bucket_detail.rb +1 -1
  85. data/lib/comet/models/news_entry.rb +1 -1
  86. data/lib/comet/models/office_365connection.rb +9 -1
  87. data/lib/comet/models/office_365credential.rb +1 -1
  88. data/lib/comet/models/office_365custom_setting.rb +2 -1
  89. data/lib/comet/models/office_365custom_setting_v2.rb +108 -0
  90. data/lib/comet/models/office_365mixed_virtual_account.rb +211 -0
  91. data/lib/comet/models/office_365object_info.rb +1 -1
  92. data/lib/comet/models/organization.rb +1 -1
  93. data/lib/comet/models/organization_response.rb +1 -1
  94. data/lib/comet/models/osinfo.rb +1 -1
  95. data/lib/comet/models/partition.rb +1 -1
  96. data/lib/comet/models/private_branding_properties.rb +1 -1
  97. data/lib/comet/models/protected_item_engine_type_policy.rb +1 -1
  98. data/lib/comet/models/public_branding_properties.rb +1 -1
  99. data/lib/comet/models/register_office_application_begin_response.rb +1 -1
  100. data/lib/comet/models/register_office_application_check_response.rb +1 -1
  101. data/lib/comet/models/remote_server_address.rb +1 -1
  102. data/lib/comet/models/remote_storage_option.rb +1 -1
  103. data/lib/comet/models/replicator_state_apiresponse.rb +1 -1
  104. data/lib/comet/models/request_storage_vault_response_message.rb +1 -1
  105. data/lib/comet/models/restore_job_advanced_options.rb +1 -1
  106. data/lib/comet/models/retention_policy.rb +1 -1
  107. data/lib/comet/models/retention_range.rb +1 -1
  108. data/lib/comet/models/s3destination_location.rb +1 -1
  109. data/lib/comet/models/schedule_config.rb +1 -1
  110. data/lib/comet/models/search_clause.rb +1 -1
  111. data/lib/comet/models/self_backup_statistics.rb +1 -1
  112. data/lib/comet/models/server_config_options_branding_fragment.rb +1 -1
  113. data/lib/comet/models/server_config_options_software_build_role_fragment.rb +1 -1
  114. data/lib/comet/models/server_meta_branding_properties.rb +10 -1
  115. data/lib/comet/models/server_meta_version_info.rb +1 -1
  116. data/lib/comet/models/session_key_regenerated_response.rb +1 -1
  117. data/lib/comet/models/sftpdestination_location.rb +1 -1
  118. data/lib/comet/models/size_measurement.rb +1 -1
  119. data/lib/comet/models/software_build_role_options.rb +1 -1
  120. data/lib/comet/models/software_update_news_response.rb +1 -1
  121. data/lib/comet/models/source_basic_info.rb +1 -1
  122. data/lib/comet/models/source_config.rb +1 -1
  123. data/lib/comet/models/source_include_pattern.rb +1 -1
  124. data/lib/comet/models/source_statistics.rb +1 -1
  125. data/lib/comet/models/spanned_destination_location.rb +1 -1
  126. data/lib/comet/models/spanned_storage_extra_info.rb +1 -1
  127. data/lib/comet/models/sshconnection.rb +1 -1
  128. data/lib/comet/models/stat_result.rb +10 -1
  129. data/lib/comet/models/storage_free_space_info.rb +1 -1
  130. data/lib/comet/models/storage_vault_provider_policy.rb +1 -1
  131. data/lib/comet/models/stored_object.rb +1 -1
  132. data/lib/comet/models/streamable_event.rb +1 -1
  133. data/lib/comet/models/swift_destination_location.rb +1 -1
  134. data/lib/comet/models/test_response.rb +1 -1
  135. data/lib/comet/models/totp_regenerated_response.rb +1 -1
  136. data/lib/comet/models/u2fregister_request.rb +2 -1
  137. data/lib/comet/models/u2fregistered_key.rb +2 -1
  138. data/lib/comet/models/u2fregistration_challenge_response.rb +2 -1
  139. data/lib/comet/models/u2fsign_request.rb +2 -1
  140. data/lib/comet/models/u2fsign_response.rb +2 -1
  141. data/lib/comet/models/uninstall_config.rb +1 -1
  142. data/lib/comet/models/update_campaign_device_status.rb +1 -1
  143. data/lib/comet/models/update_campaign_options.rb +1 -1
  144. data/lib/comet/models/update_campaign_properties.rb +1 -1
  145. data/lib/comet/models/update_campaign_status.rb +1 -1
  146. data/lib/comet/models/update_campaign_status_device_entry.rb +1 -1
  147. data/lib/comet/models/user_custom_email_settings.rb +1 -1
  148. data/lib/comet/models/user_on_server.rb +1 -1
  149. data/lib/comet/models/user_policy.rb +1 -1
  150. data/lib/comet/models/user_profile_config.rb +1 -1
  151. data/lib/comet/models/user_profile_fragment.rb +1 -1
  152. data/lib/comet/models/vault_snapshot.rb +1 -1
  153. data/lib/comet/models/vsscomponent.rb +1 -1
  154. data/lib/comet/models/vsswriter_info.rb +1 -1
  155. data/lib/comet/models/wasabi_virtual_storage_role_settings.rb +1 -1
  156. data/lib/comet/models/web_authn_authenticator_selection.rb +96 -0
  157. data/lib/comet/models/web_authn_credential.rb +105 -0
  158. data/lib/comet/models/web_authn_credential_assertion.rb +74 -0
  159. data/lib/comet/models/web_authn_credential_descriptor.rb +101 -0
  160. data/lib/comet/models/web_authn_credential_entity.rb +86 -0
  161. data/lib/comet/models/web_authn_credential_parameter.rb +84 -0
  162. data/lib/comet/models/web_authn_public_key_credential_creation_options.rb +172 -0
  163. data/lib/comet/models/web_authn_public_key_credential_request_options.rb +140 -0
  164. data/lib/comet/models/web_authn_registration_challenge_response.rb +101 -0
  165. data/lib/comet/models/web_authn_relying_party_entity.rb +95 -0
  166. data/lib/comet/models/web_authn_sign_request.rb +83 -0
  167. data/lib/comet/models/web_authn_sign_response.rb +84 -0
  168. data/lib/comet/models/web_authn_user_entity.rb +105 -0
  169. data/lib/comet/models/web_interface_branding_properties.rb +1 -1
  170. data/lib/comet/models/webhook_option.rb +1 -1
  171. data/lib/comet/models/win_smbauth.rb +1 -1
  172. data/lib/comet/models/windows_code_sign_properties.rb +1 -1
  173. data/lib/comet_backup_ruby_sdk.rb +20 -1
  174. metadata +24 -4
@@ -0,0 +1,121 @@
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 'base64'
11
+ require 'json'
12
+
13
+ module Comet
14
+
15
+ # AdminWebAuthnRegistration is a typed class wrapper around the underlying Comet Server API data structure.
16
+ class AdminWebAuthnRegistration
17
+
18
+ # @type [String] description
19
+ attr_accessor :description
20
+
21
+ # @type [Number] register_time
22
+ attr_accessor :register_time
23
+
24
+ # @type [Number] type
25
+ attr_accessor :type
26
+
27
+ # @type [Boolean] is_legacy_u2f
28
+ attr_accessor :is_legacy_u2f
29
+
30
+ # @type [Array<Object>] id
31
+ attr_accessor :id
32
+
33
+ # @type [Comet::WebAuthnCredential] credential
34
+ attr_accessor :credential
35
+
36
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
37
+ attr_accessor :unknown_json_fields
38
+
39
+ def initialize
40
+ clear
41
+ end
42
+
43
+ def clear
44
+ @description = ''
45
+ @register_time = 0
46
+ @type = 0
47
+ @id = []
48
+ @credential = Comet::WebAuthnCredential.new
49
+ @unknown_json_fields = {}
50
+ end
51
+
52
+ # @param [String] json_string The complete object in JSON format
53
+ def from_json(json_string)
54
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
55
+
56
+ from_hash(JSON.parse(json_string))
57
+ end
58
+
59
+ # @param [Hash] obj The complete object as a Ruby hash
60
+ def from_hash(obj)
61
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
62
+
63
+ obj.each do |k, v|
64
+ case k
65
+ when 'Description'
66
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
67
+
68
+ @description = v
69
+ when 'RegisterTime'
70
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
71
+
72
+ @register_time = v
73
+ when 'Type'
74
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
75
+
76
+ @type = v
77
+ when 'IsLegacyU2F'
78
+ @is_legacy_u2f = v
79
+ when 'ID'
80
+ @id = Base64.decode64(v)
81
+ when 'Credential'
82
+ @credential = Comet::WebAuthnCredential.new
83
+ @credential.from_hash(v)
84
+ else
85
+ @unknown_json_fields[k] = v
86
+ end
87
+ end
88
+ end
89
+
90
+ # @return [Hash] The complete object as a Ruby hash
91
+ def to_hash
92
+ ret = {}
93
+ ret['Description'] = @description
94
+ ret['RegisterTime'] = @register_time
95
+ ret['Type'] = @type
96
+ unless @is_legacy_u2f.nil?
97
+ ret['IsLegacyU2F'] = @is_legacy_u2f
98
+ end
99
+ unless @id.nil?
100
+ ret['ID'] = @id
101
+ end
102
+ unless @credential.nil?
103
+ ret['Credential'] = @credential
104
+ end
105
+ @unknown_json_fields.each do |k, v|
106
+ ret[k] = v
107
+ end
108
+ ret
109
+ end
110
+
111
+ # @return [Hash] The complete object as a Ruby hash
112
+ def to_h
113
+ to_hash
114
+ end
115
+
116
+ # @return [String] The complete object as a JSON string
117
+ def to_json(options = {})
118
+ to_hash.to_json(options)
119
+ end
120
+ end
121
+ end
@@ -0,0 +1,214 @@
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
+ # AllowedAdminUser is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class AllowedAdminUser
16
+
17
+ # @type [String] username
18
+ attr_accessor :username
19
+
20
+ # @type [String] organization_id
21
+ attr_accessor :organization_id
22
+
23
+ # @type [String] external_authentication_source
24
+ attr_accessor :external_authentication_source
25
+
26
+ # @type [Number] password_format
27
+ attr_accessor :password_format
28
+
29
+ # @type [String] password
30
+ attr_accessor :password
31
+
32
+ # @type [Boolean] allow_password_login
33
+ attr_accessor :allow_password_login
34
+
35
+ # @type [Boolean] allow_password_and_totplogin
36
+ attr_accessor :allow_password_and_totplogin
37
+
38
+ # @type [Boolean] allow_password_and_u2flogin
39
+ # @deprecated This member has been deprecated since Comet version 21.12.0
40
+ attr_accessor :allow_password_and_u2flogin
41
+
42
+ # @type [Boolean] allow_password_and_web_authn_login
43
+ attr_accessor :allow_password_and_web_authn_login
44
+
45
+ # @type [Array<Comet::AdminU2FRegistration>] u2fregistrations
46
+ # @deprecated This member has been deprecated since Comet version 21.12.0
47
+ attr_accessor :u2fregistrations
48
+
49
+ # @type [Array<Comet::AdminWebAuthnRegistration>] web_authn_registrations
50
+ attr_accessor :web_authn_registrations
51
+
52
+ # @type [Number] totpkey_encryption_format
53
+ attr_accessor :totpkey_encryption_format
54
+
55
+ # @type [String] totpkey
56
+ attr_accessor :totpkey
57
+
58
+ # @type [String] ipwhitelist
59
+ attr_accessor :ipwhitelist
60
+
61
+ # @type [Comet::AdminUserPermissions] permissions
62
+ attr_accessor :permissions
63
+
64
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
65
+ attr_accessor :unknown_json_fields
66
+
67
+ def initialize
68
+ clear
69
+ end
70
+
71
+ def clear
72
+ @username = ''
73
+ @organization_id = ''
74
+ @external_authentication_source = ''
75
+ @password_format = 0
76
+ @password = ''
77
+ @u2fregistrations = []
78
+ @web_authn_registrations = []
79
+ @totpkey_encryption_format = 0
80
+ @totpkey = ''
81
+ @ipwhitelist = ''
82
+ @permissions = Comet::AdminUserPermissions.new
83
+ @unknown_json_fields = {}
84
+ end
85
+
86
+ # @param [String] json_string The complete object in JSON format
87
+ def from_json(json_string)
88
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
89
+
90
+ from_hash(JSON.parse(json_string))
91
+ end
92
+
93
+ # @param [Hash] obj The complete object as a Ruby hash
94
+ def from_hash(obj)
95
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
96
+
97
+ obj.each do |k, v|
98
+ case k
99
+ when 'Username'
100
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
101
+
102
+ @username = v
103
+ when 'OrganizationID'
104
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
105
+
106
+ @organization_id = v
107
+ when 'ExternalAuthenticationSource'
108
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
109
+
110
+ @external_authentication_source = v
111
+ when 'PasswordFormat'
112
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
113
+
114
+ @password_format = v
115
+ when 'Password'
116
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
117
+
118
+ @password = v
119
+ when 'AllowPasswordLogin'
120
+ @allow_password_login = v
121
+ when 'AllowPasswordAndTOTPLogin'
122
+ @allow_password_and_totplogin = v
123
+ when 'AllowPasswordAndU2FLogin'
124
+ @allow_password_and_u2flogin = v
125
+ when 'AllowPasswordAndWebAuthnLogin'
126
+ @allow_password_and_web_authn_login = v
127
+ when 'U2FRegistrations'
128
+ if v.nil?
129
+ @u2fregistrations = []
130
+ else
131
+ @u2fregistrations = Array.new(v.length)
132
+ v.each_with_index do |v1, i1|
133
+ @u2fregistrations[i1] = Comet::AdminU2FRegistration.new
134
+ @u2fregistrations[i1].from_hash(v1)
135
+ end
136
+ end
137
+ when 'WebAuthnRegistrations'
138
+ if v.nil?
139
+ @web_authn_registrations = []
140
+ else
141
+ @web_authn_registrations = Array.new(v.length)
142
+ v.each_with_index do |v1, i1|
143
+ @web_authn_registrations[i1] = Comet::AdminWebAuthnRegistration.new
144
+ @web_authn_registrations[i1].from_hash(v1)
145
+ end
146
+ end
147
+ when 'TOTPKeyEncryptionFormat'
148
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
149
+
150
+ @totpkey_encryption_format = v
151
+ when 'TOTPKey'
152
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
153
+
154
+ @totpkey = v
155
+ when 'IPWhitelist'
156
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
157
+
158
+ @ipwhitelist = v
159
+ when 'Permissions'
160
+ @permissions = Comet::AdminUserPermissions.new
161
+ @permissions.from_hash(v)
162
+ else
163
+ @unknown_json_fields[k] = v
164
+ end
165
+ end
166
+ end
167
+
168
+ # @return [Hash] The complete object as a Ruby hash
169
+ def to_hash
170
+ ret = {}
171
+ ret['Username'] = @username
172
+ ret['OrganizationID'] = @organization_id
173
+ unless @external_authentication_source.nil?
174
+ ret['ExternalAuthenticationSource'] = @external_authentication_source
175
+ end
176
+ ret['PasswordFormat'] = @password_format
177
+ ret['Password'] = @password
178
+ ret['AllowPasswordLogin'] = @allow_password_login
179
+ ret['AllowPasswordAndTOTPLogin'] = @allow_password_and_totplogin
180
+ ret['AllowPasswordAndU2FLogin'] = @allow_password_and_u2flogin
181
+ ret['AllowPasswordAndWebAuthnLogin'] = @allow_password_and_web_authn_login
182
+ unless @u2fregistrations.nil?
183
+ ret['U2FRegistrations'] = @u2fregistrations
184
+ end
185
+ unless @web_authn_registrations.nil?
186
+ ret['WebAuthnRegistrations'] = @web_authn_registrations
187
+ end
188
+ unless @totpkey_encryption_format.nil?
189
+ ret['TOTPKeyEncryptionFormat'] = @totpkey_encryption_format
190
+ end
191
+ unless @totpkey.nil?
192
+ ret['TOTPKey'] = @totpkey
193
+ end
194
+ unless @ipwhitelist.nil?
195
+ ret['IPWhitelist'] = @ipwhitelist
196
+ end
197
+ ret['Permissions'] = @permissions
198
+ @unknown_json_fields.each do |k, v|
199
+ ret[k] = v
200
+ end
201
+ ret
202
+ end
203
+
204
+ # @return [Hash] The complete object as a Ruby hash
205
+ def to_h
206
+ to_hash
207
+ end
208
+
209
+ # @return [String] The complete object as a JSON string
210
+ def to_json(options = {})
211
+ to_hash.to_json(options)
212
+ end
213
+ end
214
+ end
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -27,8 +27,12 @@ module Comet
27
27
  attr_accessor :prefix
28
28
 
29
29
  # @type [Number] max_connections
30
+ # @deprecated This member has been deprecated since Comet version 21.9.7
30
31
  attr_accessor :max_connections
31
32
 
33
+ # @type [Boolean] hide_deleted_files
34
+ attr_accessor :hide_deleted_files
35
+
32
36
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
33
37
  attr_accessor :unknown_json_fields
34
38
 
@@ -78,6 +82,8 @@ module Comet
78
82
  raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
79
83
 
80
84
  @max_connections = v
85
+ when 'HideDeletedFiles'
86
+ @hide_deleted_files = v
81
87
  else
82
88
  @unknown_json_fields[k] = v
83
89
  end
@@ -102,6 +108,9 @@ module Comet
102
108
  unless @max_connections.nil?
103
109
  ret['MaxConnections'] = @max_connections
104
110
  end
111
+ unless @hide_deleted_files.nil?
112
+ ret['HideDeletedFiles'] = @hide_deleted_files
113
+ end
105
114
  @unknown_json_fields.each do |k, v|
106
115
  ret[k] = v
107
116
  end
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -23,6 +23,9 @@ module Comet
23
23
  # @type [String] app_key
24
24
  attr_accessor :app_key
25
25
 
26
+ # @type [Boolean] hide_deleted_files
27
+ attr_accessor :hide_deleted_files
28
+
26
29
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
27
30
  attr_accessor :unknown_json_fields
28
31
 
@@ -62,6 +65,8 @@ module Comet
62
65
  raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
63
66
 
64
67
  @app_key = v
68
+ when 'HideDeletedFiles'
69
+ @hide_deleted_files = v
65
70
  else
66
71
  @unknown_json_fields[k] = v
67
72
  end
@@ -74,6 +79,7 @@ module Comet
74
79
  ret['MasterBucket'] = @master_bucket
75
80
  ret['KeyID'] = @key_id
76
81
  ret['AppKey'] = @app_key
82
+ ret['HideDeletedFiles'] = @hide_deleted_files
77
83
  @unknown_json_fields.each do |k, v|
78
84
  ret[k] = v
79
85
  end
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -74,12 +74,24 @@ module Comet
74
74
  # @type [Number] total_accounts_count
75
75
  attr_accessor :total_accounts_count
76
76
 
77
+ # @type [Number] total_licensed_mails_count
78
+ attr_accessor :total_licensed_mails_count
79
+
80
+ # @type [Number] total_unlicensed_mails_count
81
+ attr_accessor :total_unlicensed_mails_count
82
+
77
83
  # @type [String] cancellation_id
78
84
  attr_accessor :cancellation_id
79
85
 
80
86
  # @type [Comet::BackupJobProgress] progress
81
87
  attr_accessor :progress
82
88
 
89
+ # @type [Comet::SizeMeasurement] destination_size_start
90
+ attr_accessor :destination_size_start
91
+
92
+ # @type [Comet::SizeMeasurement] destination_size_end
93
+ attr_accessor :destination_size_end
94
+
83
95
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
84
96
  attr_accessor :unknown_json_fields
85
97
 
@@ -108,8 +120,12 @@ module Comet
108
120
  @total_mails_count = 0
109
121
  @total_sites_count = 0
110
122
  @total_accounts_count = 0
123
+ @total_licensed_mails_count = 0
124
+ @total_unlicensed_mails_count = 0
111
125
  @cancellation_id = ''
112
126
  @progress = Comet::BackupJobProgress.new
127
+ @destination_size_start = Comet::SizeMeasurement.new
128
+ @destination_size_end = Comet::SizeMeasurement.new
113
129
  @unknown_json_fields = {}
114
130
  end
115
131
 
@@ -206,6 +222,14 @@ module Comet
206
222
  raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
207
223
 
208
224
  @total_accounts_count = v
225
+ when 'TotalLicensedMailsCount'
226
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
227
+
228
+ @total_licensed_mails_count = v
229
+ when 'TotalUnlicensedMailsCount'
230
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
231
+
232
+ @total_unlicensed_mails_count = v
209
233
  when 'CancellationID'
210
234
  raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
211
235
 
@@ -213,6 +237,12 @@ module Comet
213
237
  when 'Progress'
214
238
  @progress = Comet::BackupJobProgress.new
215
239
  @progress.from_hash(v)
240
+ when 'DestinationSizeStart'
241
+ @destination_size_start = Comet::SizeMeasurement.new
242
+ @destination_size_start.from_hash(v)
243
+ when 'DestinationSizeEnd'
244
+ @destination_size_end = Comet::SizeMeasurement.new
245
+ @destination_size_end.from_hash(v)
216
246
  else
217
247
  @unknown_json_fields[k] = v
218
248
  end
@@ -250,12 +280,24 @@ module Comet
250
280
  unless @total_accounts_count.nil?
251
281
  ret['TotalAccountsCount'] = @total_accounts_count
252
282
  end
283
+ unless @total_licensed_mails_count.nil?
284
+ ret['TotalLicensedMailsCount'] = @total_licensed_mails_count
285
+ end
286
+ unless @total_unlicensed_mails_count.nil?
287
+ ret['TotalUnlicensedMailsCount'] = @total_unlicensed_mails_count
288
+ end
253
289
  unless @cancellation_id.nil?
254
290
  ret['CancellationID'] = @cancellation_id
255
291
  end
256
292
  unless @progress.nil?
257
293
  ret['Progress'] = @progress
258
294
  end
295
+ unless @destination_size_start.nil?
296
+ ret['DestinationSizeStart'] = @destination_size_start
297
+ end
298
+ unless @destination_size_end.nil?
299
+ ret['DestinationSizeEnd'] = @destination_size_end
300
+ end
259
301
  @unknown_json_fields.each do |k, v|
260
302
  ret[k] = v
261
303
  end
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2021 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT