comet_backup_ruby_sdk 1.14.0 → 1.15.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 (181) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -0
  3. data/.rubocop.yml +0 -0
  4. data/CHANGELOG.md +6 -0
  5. data/Gemfile.lock +0 -0
  6. data/RELEASING.md +0 -0
  7. data/comet_backup_ruby_sdk.gemspec +1 -1
  8. data/lib/comet/comet_server.rb +49 -10
  9. data/lib/comet/definitions.rb +37 -4
  10. data/lib/{models/wasabi_virtual_storage_role_settings.rb → comet/models/amazon_awsvirtual_storage_role_settings.rb} +2 -2
  11. data/lib/comet/models/remote_server_address.rb +21 -0
  12. data/lib/comet/models/remote_storage_option.rb +21 -0
  13. data/lib/{models → comet/models}/s3generic_virtual_storage_role.rb +0 -0
  14. metadata +4 -171
  15. data/lib/api_response_error.rb +0 -27
  16. data/lib/comet_server.rb +0 -3785
  17. data/lib/definitions.rb +0 -710
  18. data/lib/models/add_bucket_response_message.rb +0 -102
  19. data/lib/models/admin_account_properties_response.rb +0 -91
  20. data/lib/models/admin_email_options.rb +0 -84
  21. data/lib/models/admin_resource_response.rb +0 -93
  22. data/lib/models/admin_security_options.rb +0 -177
  23. data/lib/models/admin_u2fregistration.rb +0 -93
  24. data/lib/models/admin_user_permissions.rb +0 -106
  25. data/lib/models/admin_web_authn_registration.rb +0 -121
  26. data/lib/models/allowed_admin_user.rb +0 -214
  27. data/lib/models/available_download.rb +0 -90
  28. data/lib/models/azure_destination_location.rb +0 -111
  29. data/lib/models/b2destination_location.rb +0 -130
  30. data/lib/models/b2storage_extra_info.rb +0 -81
  31. data/lib/models/b2transaction_totals.rb +0 -93
  32. data/lib/models/b2virtual_storage_role_settings.rb +0 -99
  33. data/lib/models/backup_job_advanced_options.rb +0 -117
  34. data/lib/models/backup_job_detail.rb +0 -328
  35. data/lib/models/backup_job_progress.rb +0 -111
  36. data/lib/models/backup_rule_config.rb +0 -233
  37. data/lib/models/backup_rule_event_triggers.rb +0 -82
  38. data/lib/models/branding_options.rb +0 -335
  39. data/lib/models/branding_properties.rb +0 -293
  40. data/lib/models/browse_disk_drives_response.rb +0 -99
  41. data/lib/models/browse_edbresponse.rb +0 -99
  42. data/lib/models/browse_hvresponse.rb +0 -99
  43. data/lib/models/browse_office_365list_virtual_accounts_response.rb +0 -99
  44. data/lib/models/browse_office_365objects_response.rb +0 -99
  45. data/lib/models/browse_sqlserver_response.rb +0 -100
  46. data/lib/models/browse_vssresponse.rb +0 -99
  47. data/lib/models/bucket_properties.rb +0 -110
  48. data/lib/models/bucket_usage_info.rb +0 -97
  49. data/lib/models/comet_apiresponse_message.rb +0 -84
  50. data/lib/models/comet_destination_location.rb +0 -93
  51. data/lib/models/constellation_check_report.rb +0 -99
  52. data/lib/models/constellation_stats.rb +0 -102
  53. data/lib/models/constellation_status_apiresponse.rb +0 -114
  54. data/lib/models/content_measurement.rb +0 -99
  55. data/lib/models/content_measurement_component.rb +0 -91
  56. data/lib/models/create_group_policy_response.rb +0 -93
  57. data/lib/models/custom_remote_bucket_settings.rb +0 -75
  58. data/lib/models/days_of_week_config.rb +0 -108
  59. data/lib/models/default_email_report_policy.rb +0 -87
  60. data/lib/models/default_source_with_osrestriction.rb +0 -83
  61. data/lib/models/destination_config.rb +0 -562
  62. data/lib/models/destination_location.rb +0 -421
  63. data/lib/models/destination_statistics.rb +0 -115
  64. data/lib/models/device_config.rb +0 -124
  65. data/lib/models/disk_drive.rb +0 -180
  66. data/lib/models/dispatcher_admin_sources_response.rb +0 -100
  67. data/lib/models/dispatcher_stored_objects_response.rb +0 -99
  68. data/lib/models/dispatcher_vault_snapshots_response.rb +0 -99
  69. data/lib/models/dispatcher_windisk_snapshot_response.rb +0 -99
  70. data/lib/models/edbfile_info.rb +0 -99
  71. data/lib/models/email_options.rb +0 -153
  72. data/lib/models/email_report_config.rb +0 -98
  73. data/lib/models/email_report_generated_preview.rb +0 -136
  74. data/lib/models/external_ldapauthentication_source_settings.rb +0 -135
  75. data/lib/models/extra_file_exclusion.rb +0 -90
  76. data/lib/models/ftpdestination_location.rb +0 -141
  77. data/lib/models/get_group_policy_response.rb +0 -101
  78. data/lib/models/get_profile_and_hash_response_message.rb +0 -101
  79. data/lib/models/get_profile_hash_response_message.rb +0 -93
  80. data/lib/models/group_policy.rb +0 -98
  81. data/lib/models/hour_sched_config.rb +0 -84
  82. data/lib/models/hyper_vmachine_info.rb +0 -84
  83. data/lib/models/install_creds.rb +0 -99
  84. data/lib/models/install_token.rb +0 -117
  85. data/lib/models/install_token_response.rb +0 -92
  86. data/lib/models/job_entry.rb +0 -94
  87. data/lib/models/live_user_connection.rb +0 -149
  88. data/lib/models/local_destination_location.rb +0 -102
  89. data/lib/models/mac_oscode_sign_properties.rb +0 -197
  90. data/lib/models/mongo_dbconnection.rb +0 -230
  91. data/lib/models/mssqlconnection.rb +0 -120
  92. data/lib/models/my_sqlconnection.rb +0 -141
  93. data/lib/models/new_bucket_detail.rb +0 -84
  94. data/lib/models/news_entry.rb +0 -93
  95. data/lib/models/office_365connection.rb +0 -131
  96. data/lib/models/office_365credential.rb +0 -111
  97. data/lib/models/office_365custom_setting.rb +0 -133
  98. data/lib/models/office_365custom_setting_v2.rb +0 -108
  99. data/lib/models/office_365mixed_virtual_account.rb +0 -211
  100. data/lib/models/office_365object_info.rb +0 -118
  101. data/lib/models/organization.rb +0 -151
  102. data/lib/models/organization_response.rb +0 -101
  103. data/lib/models/osinfo.rb +0 -99
  104. data/lib/models/partition.rb +0 -172
  105. data/lib/models/private_branding_properties.rb +0 -227
  106. data/lib/models/protected_item_engine_type_policy.rb +0 -88
  107. data/lib/models/public_branding_properties.rb +0 -132
  108. data/lib/models/register_office_application_begin_response.rb +0 -93
  109. data/lib/models/register_office_application_check_response.rb +0 -100
  110. data/lib/models/remote_server_address.rb +0 -167
  111. data/lib/models/remote_storage_option.rb +0 -188
  112. data/lib/models/replicator_state_apiresponse.rb +0 -174
  113. data/lib/models/request_storage_vault_response_message.rb +0 -93
  114. data/lib/models/restore_job_advanced_options.rb +0 -131
  115. data/lib/models/retention_policy.rb +0 -90
  116. data/lib/models/retention_range.rb +0 -138
  117. data/lib/models/s3destination_location.rb +0 -123
  118. data/lib/models/schedule_config.rb +0 -131
  119. data/lib/models/search_clause.rb +0 -119
  120. data/lib/models/self_backup_statistics.rb +0 -108
  121. data/lib/models/server_config_options_branding_fragment.rb +0 -74
  122. data/lib/models/server_config_options_software_build_role_fragment.rb +0 -74
  123. data/lib/models/server_meta_branding_properties.rb +0 -144
  124. data/lib/models/server_meta_version_info.rb +0 -261
  125. data/lib/models/session_key_regenerated_response.rb +0 -102
  126. data/lib/models/sftpdestination_location.rb +0 -135
  127. data/lib/models/size_measurement.rb +0 -93
  128. data/lib/models/software_build_role_options.rb +0 -78
  129. data/lib/models/software_update_news_response.rb +0 -109
  130. data/lib/models/source_basic_info.rb +0 -101
  131. data/lib/models/source_config.rb +0 -202
  132. data/lib/models/source_include_pattern.rb +0 -84
  133. data/lib/models/source_statistics.rb +0 -82
  134. data/lib/models/spanned_destination_location.rb +0 -87
  135. data/lib/models/spanned_storage_extra_info.rb +0 -81
  136. data/lib/models/sshconnection.rb +0 -126
  137. data/lib/models/stat_result.rb +0 -111
  138. data/lib/models/storage_free_space_info.rb +0 -110
  139. data/lib/models/storage_vault_provider_policy.rb +0 -88
  140. data/lib/models/stored_object.rb +0 -238
  141. data/lib/models/streamable_event.rb +0 -92
  142. data/lib/models/swift_destination_location.rb +0 -209
  143. data/lib/models/test_response.rb +0 -90
  144. data/lib/models/totp_regenerated_response.rb +0 -111
  145. data/lib/models/u2fregister_request.rb +0 -85
  146. data/lib/models/u2fregistered_key.rb +0 -94
  147. data/lib/models/u2fregistration_challenge_response.rb +0 -133
  148. data/lib/models/u2fsign_request.rb +0 -109
  149. data/lib/models/u2fsign_response.rb +0 -103
  150. data/lib/models/uninstall_config.rb +0 -78
  151. data/lib/models/update_campaign_device_status.rb +0 -75
  152. data/lib/models/update_campaign_options.rb +0 -113
  153. data/lib/models/update_campaign_properties.rb +0 -128
  154. data/lib/models/update_campaign_status.rb +0 -143
  155. data/lib/models/update_campaign_status_device_entry.rb +0 -93
  156. data/lib/models/user_custom_email_settings.rb +0 -81
  157. data/lib/models/user_on_server.rb +0 -84
  158. data/lib/models/user_policy.rb +0 -339
  159. data/lib/models/user_profile_config.rb +0 -349
  160. data/lib/models/user_profile_fragment.rb +0 -75
  161. data/lib/models/vault_snapshot.rb +0 -99
  162. data/lib/models/vmdksnapshot_view_options.rb +0 -90
  163. data/lib/models/vsscomponent.rb +0 -99
  164. data/lib/models/vsswriter_info.rb +0 -90
  165. data/lib/models/web_authn_authenticator_selection.rb +0 -96
  166. data/lib/models/web_authn_credential.rb +0 -105
  167. data/lib/models/web_authn_credential_assertion.rb +0 -74
  168. data/lib/models/web_authn_credential_descriptor.rb +0 -101
  169. data/lib/models/web_authn_credential_entity.rb +0 -86
  170. data/lib/models/web_authn_credential_parameter.rb +0 -84
  171. data/lib/models/web_authn_public_key_credential_creation_options.rb +0 -172
  172. data/lib/models/web_authn_public_key_credential_request_options.rb +0 -140
  173. data/lib/models/web_authn_registration_challenge_response.rb +0 -101
  174. data/lib/models/web_authn_relying_party_entity.rb +0 -95
  175. data/lib/models/web_authn_sign_request.rb +0 -83
  176. data/lib/models/web_authn_sign_response.rb +0 -84
  177. data/lib/models/web_authn_user_entity.rb +0 -105
  178. data/lib/models/web_interface_branding_properties.rb +0 -108
  179. data/lib/models/webhook_option.rb +0 -107
  180. data/lib/models/win_smbauth.rb +0 -102
  181. data/lib/models/windows_code_sign_properties.rb +0 -147
@@ -1,84 +0,0 @@
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
- # UserOnServer is a typed class wrapper around the underlying Comet Server API data structure.
15
- class UserOnServer
16
-
17
- # @type [Number] server_id
18
- attr_accessor :server_id
19
-
20
- # @type [String] username
21
- attr_accessor :username
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
- @server_id = 0
32
- @username = ''
33
- @unknown_json_fields = {}
34
- end
35
-
36
- # @param [String] json_string The complete object in JSON format
37
- def from_json(json_string)
38
- raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
39
-
40
- from_hash(JSON.parse(json_string))
41
- end
42
-
43
- # @param [Hash] obj The complete object as a Ruby hash
44
- def from_hash(obj)
45
- raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
46
-
47
- obj.each do |k, v|
48
- case k
49
- when 'ServerID'
50
- raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
51
-
52
- @server_id = v
53
- when 'Username'
54
- raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
55
-
56
- @username = v
57
- else
58
- @unknown_json_fields[k] = v
59
- end
60
- end
61
- end
62
-
63
- # @return [Hash] The complete object as a Ruby hash
64
- def to_hash
65
- ret = {}
66
- ret['ServerID'] = @server_id
67
- ret['Username'] = @username
68
- @unknown_json_fields.each do |k, v|
69
- ret[k] = v
70
- end
71
- ret
72
- end
73
-
74
- # @return [Hash] The complete object as a Ruby hash
75
- def to_h
76
- to_hash
77
- end
78
-
79
- # @return [String] The complete object as a JSON string
80
- def to_json(options = {})
81
- to_hash.to_json(options)
82
- end
83
- end
84
- end
@@ -1,339 +0,0 @@
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
- # UserPolicy is a typed class wrapper around the underlying Comet Server API data structure.
15
- class UserPolicy
16
-
17
- # @type [Boolean] prevent_request_storage_vault
18
- attr_accessor :prevent_request_storage_vault
19
-
20
- # @type [Boolean] prevent_add_custom_storage_vault
21
- attr_accessor :prevent_add_custom_storage_vault
22
-
23
- # @type [Boolean] prevent_edit_storage_vault
24
- attr_accessor :prevent_edit_storage_vault
25
-
26
- # @type [Boolean] hide_cloud_storage_branding
27
- attr_accessor :hide_cloud_storage_branding
28
-
29
- # @type [Boolean] prevent_delete_storage_vault
30
- attr_accessor :prevent_delete_storage_vault
31
-
32
- # @type [Comet::StorageVaultProviderPolicy] storage_vault_providers
33
- attr_accessor :storage_vault_providers
34
-
35
- # @type [Boolean] prevent_new_protected_item
36
- attr_accessor :prevent_new_protected_item
37
-
38
- # @type [Boolean] prevent_edit_protected_item
39
- attr_accessor :prevent_edit_protected_item
40
-
41
- # @type [Boolean] prevent_delete_protected_item
42
- attr_accessor :prevent_delete_protected_item
43
-
44
- # @type [Comet::ProtectedItemEngineTypePolicy] protected_item_engine_types
45
- attr_accessor :protected_item_engine_types
46
-
47
- # @type [Array<Comet::ExtraFileExclusion>] file_and_folder_mandatory_exclusions
48
- attr_accessor :file_and_folder_mandatory_exclusions
49
-
50
- # @type [Number] mode_schedule_skip_already_running
51
- attr_accessor :mode_schedule_skip_already_running
52
-
53
- # @type [Number] mode_admin_reset_password
54
- attr_accessor :mode_admin_reset_password
55
-
56
- # @type [Number] mode_admin_view_filenames
57
- attr_accessor :mode_admin_view_filenames
58
-
59
- # @type [Number] mode_require_user_reset_password
60
- attr_accessor :mode_require_user_reset_password
61
-
62
- # @type [Boolean] prevent_delete_single_snapshots
63
- attr_accessor :prevent_delete_single_snapshots
64
-
65
- # @type [Boolean] prevent_change_account_password
66
- attr_accessor :prevent_change_account_password
67
-
68
- # @type [Boolean] prevent_change_email_settings
69
- attr_accessor :prevent_change_email_settings
70
-
71
- # @type [Boolean] prevent_change_account_name
72
- attr_accessor :prevent_change_account_name
73
-
74
- # @type [Boolean] prevent_open_app_ui
75
- attr_accessor :prevent_open_app_ui
76
-
77
- # @type [Boolean] require_password_open_app_ui
78
- attr_accessor :require_password_open_app_ui
79
-
80
- # @type [Boolean] hide_app_import
81
- attr_accessor :hide_app_import
82
-
83
- # @type [Boolean] hide_app_version
84
- attr_accessor :hide_app_version
85
-
86
- # @type [Boolean] prevent_open_web_ui
87
- attr_accessor :prevent_open_web_ui
88
-
89
- # @type [Boolean] prevent_view_device_names
90
- attr_accessor :prevent_view_device_names
91
-
92
- # @type [Comet::DefaultEmailReportPolicy] default_email_reports
93
- attr_accessor :default_email_reports
94
-
95
- # @type [Comet::RetentionPolicy] default_storage_vault_retention
96
- attr_accessor :default_storage_vault_retention
97
-
98
- # @type [Boolean] enforce_storage_vault_retention
99
- attr_accessor :enforce_storage_vault_retention
100
-
101
- # @type [Boolean] prevent_protected_item_retention
102
- attr_accessor :prevent_protected_item_retention
103
-
104
- # @type [Hash{String => Comet::SourceConfig}] default_sources
105
- attr_accessor :default_sources
106
-
107
- # @type [Hash{String => Comet::BackupRuleConfig}] default_sources_backup_rules
108
- attr_accessor :default_sources_backup_rules
109
-
110
- # @type [Hash{String => Comet::DefaultSourceWithOSRestriction}] default_sources_with_osrestriction
111
- attr_accessor :default_sources_with_osrestriction
112
-
113
- # @type [Hash{String => Comet::BackupRuleConfig}] default_backup_rules
114
- attr_accessor :default_backup_rules
115
-
116
- # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
117
- attr_accessor :unknown_json_fields
118
-
119
- def initialize
120
- clear
121
- end
122
-
123
- def clear
124
- @storage_vault_providers = Comet::StorageVaultProviderPolicy.new
125
- @protected_item_engine_types = Comet::ProtectedItemEngineTypePolicy.new
126
- @file_and_folder_mandatory_exclusions = []
127
- @mode_schedule_skip_already_running = 0
128
- @mode_admin_reset_password = 0
129
- @mode_admin_view_filenames = 0
130
- @mode_require_user_reset_password = 0
131
- @default_email_reports = Comet::DefaultEmailReportPolicy.new
132
- @default_storage_vault_retention = Comet::RetentionPolicy.new
133
- @default_sources = {}
134
- @default_sources_backup_rules = {}
135
- @default_sources_with_osrestriction = {}
136
- @default_backup_rules = {}
137
- @unknown_json_fields = {}
138
- end
139
-
140
- # @param [String] json_string The complete object in JSON format
141
- def from_json(json_string)
142
- raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
143
-
144
- from_hash(JSON.parse(json_string))
145
- end
146
-
147
- # @param [Hash] obj The complete object as a Ruby hash
148
- def from_hash(obj)
149
- raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
150
-
151
- obj.each do |k, v|
152
- case k
153
- when 'PreventRequestStorageVault'
154
- @prevent_request_storage_vault = v
155
- when 'PreventAddCustomStorageVault'
156
- @prevent_add_custom_storage_vault = v
157
- when 'PreventEditStorageVault'
158
- @prevent_edit_storage_vault = v
159
- when 'HideCloudStorageBranding'
160
- @hide_cloud_storage_branding = v
161
- when 'PreventDeleteStorageVault'
162
- @prevent_delete_storage_vault = v
163
- when 'StorageVaultProviders'
164
- @storage_vault_providers = Comet::StorageVaultProviderPolicy.new
165
- @storage_vault_providers.from_hash(v)
166
- when 'PreventNewProtectedItem'
167
- @prevent_new_protected_item = v
168
- when 'PreventEditProtectedItem'
169
- @prevent_edit_protected_item = v
170
- when 'PreventDeleteProtectedItem'
171
- @prevent_delete_protected_item = v
172
- when 'ProtectedItemEngineTypes'
173
- @protected_item_engine_types = Comet::ProtectedItemEngineTypePolicy.new
174
- @protected_item_engine_types.from_hash(v)
175
- when 'FileAndFolderMandatoryExclusions'
176
- if v.nil?
177
- @file_and_folder_mandatory_exclusions = []
178
- else
179
- @file_and_folder_mandatory_exclusions = Array.new(v.length)
180
- v.each_with_index do |v1, i1|
181
- @file_and_folder_mandatory_exclusions[i1] = Comet::ExtraFileExclusion.new
182
- @file_and_folder_mandatory_exclusions[i1].from_hash(v1)
183
- end
184
- end
185
- when 'ModeScheduleSkipAlreadyRunning'
186
- raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
187
-
188
- @mode_schedule_skip_already_running = v
189
- when 'ModeAdminResetPassword'
190
- raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
191
-
192
- @mode_admin_reset_password = v
193
- when 'ModeAdminViewFilenames'
194
- raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
195
-
196
- @mode_admin_view_filenames = v
197
- when 'ModeRequireUserResetPassword'
198
- raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
199
-
200
- @mode_require_user_reset_password = v
201
- when 'PreventDeleteSingleSnapshots'
202
- @prevent_delete_single_snapshots = v
203
- when 'PreventChangeAccountPassword'
204
- @prevent_change_account_password = v
205
- when 'PreventChangeEmailSettings'
206
- @prevent_change_email_settings = v
207
- when 'PreventChangeAccountName'
208
- @prevent_change_account_name = v
209
- when 'PreventOpenAppUI'
210
- @prevent_open_app_ui = v
211
- when 'RequirePasswordOpenAppUI'
212
- @require_password_open_app_ui = v
213
- when 'HideAppImport'
214
- @hide_app_import = v
215
- when 'HideAppVersion'
216
- @hide_app_version = v
217
- when 'PreventOpenWebUI'
218
- @prevent_open_web_ui = v
219
- when 'PreventViewDeviceNames'
220
- @prevent_view_device_names = v
221
- when 'DefaultEmailReports'
222
- @default_email_reports = Comet::DefaultEmailReportPolicy.new
223
- @default_email_reports.from_hash(v)
224
- when 'DefaultStorageVaultRetention'
225
- @default_storage_vault_retention = Comet::RetentionPolicy.new
226
- @default_storage_vault_retention.from_hash(v)
227
- when 'EnforceStorageVaultRetention'
228
- @enforce_storage_vault_retention = v
229
- when 'PreventProtectedItemRetention'
230
- @prevent_protected_item_retention = v
231
- when 'DefaultSources'
232
- @default_sources = {}
233
- if v.nil?
234
- @default_sources = {}
235
- else
236
- v.each do |k1, v1|
237
- @default_sources[k1] = Comet::SourceConfig.new
238
- @default_sources[k1].from_hash(v1)
239
- end
240
- end
241
- when 'DefaultSourcesBackupRules'
242
- @default_sources_backup_rules = {}
243
- if v.nil?
244
- @default_sources_backup_rules = {}
245
- else
246
- v.each do |k1, v1|
247
- @default_sources_backup_rules[k1] = Comet::BackupRuleConfig.new
248
- @default_sources_backup_rules[k1].from_hash(v1)
249
- end
250
- end
251
- when 'DefaultSourcesWithOSRestriction'
252
- @default_sources_with_osrestriction = {}
253
- if v.nil?
254
- @default_sources_with_osrestriction = {}
255
- else
256
- v.each do |k1, v1|
257
- @default_sources_with_osrestriction[k1] = Comet::DefaultSourceWithOSRestriction.new
258
- @default_sources_with_osrestriction[k1].from_hash(v1)
259
- end
260
- end
261
- when 'DefaultBackupRules'
262
- @default_backup_rules = {}
263
- if v.nil?
264
- @default_backup_rules = {}
265
- else
266
- v.each do |k1, v1|
267
- @default_backup_rules[k1] = Comet::BackupRuleConfig.new
268
- @default_backup_rules[k1].from_hash(v1)
269
- end
270
- end
271
- else
272
- @unknown_json_fields[k] = v
273
- end
274
- end
275
- end
276
-
277
- # @return [Hash] The complete object as a Ruby hash
278
- def to_hash
279
- ret = {}
280
- ret['PreventRequestStorageVault'] = @prevent_request_storage_vault
281
- ret['PreventAddCustomStorageVault'] = @prevent_add_custom_storage_vault
282
- ret['PreventEditStorageVault'] = @prevent_edit_storage_vault
283
- ret['HideCloudStorageBranding'] = @hide_cloud_storage_branding
284
- ret['PreventDeleteStorageVault'] = @prevent_delete_storage_vault
285
- ret['StorageVaultProviders'] = @storage_vault_providers
286
- ret['PreventNewProtectedItem'] = @prevent_new_protected_item
287
- ret['PreventEditProtectedItem'] = @prevent_edit_protected_item
288
- ret['PreventDeleteProtectedItem'] = @prevent_delete_protected_item
289
- ret['ProtectedItemEngineTypes'] = @protected_item_engine_types
290
- unless @file_and_folder_mandatory_exclusions.nil?
291
- ret['FileAndFolderMandatoryExclusions'] = @file_and_folder_mandatory_exclusions
292
- end
293
- unless @mode_schedule_skip_already_running.nil?
294
- ret['ModeScheduleSkipAlreadyRunning'] = @mode_schedule_skip_already_running
295
- end
296
- unless @mode_admin_reset_password.nil?
297
- ret['ModeAdminResetPassword'] = @mode_admin_reset_password
298
- end
299
- unless @mode_admin_view_filenames.nil?
300
- ret['ModeAdminViewFilenames'] = @mode_admin_view_filenames
301
- end
302
- unless @mode_require_user_reset_password.nil?
303
- ret['ModeRequireUserResetPassword'] = @mode_require_user_reset_password
304
- end
305
- ret['PreventDeleteSingleSnapshots'] = @prevent_delete_single_snapshots
306
- ret['PreventChangeAccountPassword'] = @prevent_change_account_password
307
- ret['PreventChangeEmailSettings'] = @prevent_change_email_settings
308
- ret['PreventChangeAccountName'] = @prevent_change_account_name
309
- ret['PreventOpenAppUI'] = @prevent_open_app_ui
310
- ret['RequirePasswordOpenAppUI'] = @require_password_open_app_ui
311
- ret['HideAppImport'] = @hide_app_import
312
- ret['HideAppVersion'] = @hide_app_version
313
- ret['PreventOpenWebUI'] = @prevent_open_web_ui
314
- ret['PreventViewDeviceNames'] = @prevent_view_device_names
315
- ret['DefaultEmailReports'] = @default_email_reports
316
- ret['DefaultStorageVaultRetention'] = @default_storage_vault_retention
317
- ret['EnforceStorageVaultRetention'] = @enforce_storage_vault_retention
318
- ret['PreventProtectedItemRetention'] = @prevent_protected_item_retention
319
- ret['DefaultSources'] = @default_sources
320
- ret['DefaultSourcesBackupRules'] = @default_sources_backup_rules
321
- ret['DefaultSourcesWithOSRestriction'] = @default_sources_with_osrestriction
322
- ret['DefaultBackupRules'] = @default_backup_rules
323
- @unknown_json_fields.each do |k, v|
324
- ret[k] = v
325
- end
326
- ret
327
- end
328
-
329
- # @return [Hash] The complete object as a Ruby hash
330
- def to_h
331
- to_hash
332
- end
333
-
334
- # @return [String] The complete object as a JSON string
335
- def to_json(options = {})
336
- to_hash.to_json(options)
337
- end
338
- end
339
- end