comet_backup_ruby_sdk 1.13.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 (180) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -0
  3. data/.rubocop.yml +0 -0
  4. data/CHANGELOG.md +5 -0
  5. data/Gemfile.lock +1 -1
  6. data/README.md +3 -2
  7. data/RELEASING.md +0 -0
  8. data/comet_backup_ruby_sdk.gemspec +1 -1
  9. data/lib/api_response_error.rb +27 -0
  10. data/lib/comet/comet_server.rb +2 -2
  11. data/lib/comet/models/update_campaign_options.rb +2 -2
  12. data/lib/comet_server.rb +3785 -0
  13. data/lib/definitions.rb +710 -0
  14. data/lib/models/add_bucket_response_message.rb +102 -0
  15. data/lib/models/admin_account_properties_response.rb +91 -0
  16. data/lib/models/admin_email_options.rb +84 -0
  17. data/lib/models/admin_resource_response.rb +93 -0
  18. data/lib/models/admin_security_options.rb +177 -0
  19. data/lib/models/admin_u2fregistration.rb +93 -0
  20. data/lib/models/admin_user_permissions.rb +106 -0
  21. data/lib/models/admin_web_authn_registration.rb +121 -0
  22. data/lib/models/allowed_admin_user.rb +214 -0
  23. data/lib/models/available_download.rb +90 -0
  24. data/lib/models/azure_destination_location.rb +111 -0
  25. data/lib/models/b2destination_location.rb +130 -0
  26. data/lib/models/b2storage_extra_info.rb +81 -0
  27. data/lib/models/b2transaction_totals.rb +93 -0
  28. data/lib/models/b2virtual_storage_role_settings.rb +99 -0
  29. data/lib/models/backup_job_advanced_options.rb +117 -0
  30. data/lib/models/backup_job_detail.rb +328 -0
  31. data/lib/models/backup_job_progress.rb +111 -0
  32. data/lib/models/backup_rule_config.rb +233 -0
  33. data/lib/models/backup_rule_event_triggers.rb +82 -0
  34. data/lib/models/branding_options.rb +335 -0
  35. data/lib/models/branding_properties.rb +293 -0
  36. data/lib/models/browse_disk_drives_response.rb +99 -0
  37. data/lib/models/browse_edbresponse.rb +99 -0
  38. data/lib/models/browse_hvresponse.rb +99 -0
  39. data/lib/models/browse_office_365list_virtual_accounts_response.rb +99 -0
  40. data/lib/models/browse_office_365objects_response.rb +99 -0
  41. data/lib/models/browse_sqlserver_response.rb +100 -0
  42. data/lib/models/browse_vssresponse.rb +99 -0
  43. data/lib/models/bucket_properties.rb +110 -0
  44. data/lib/models/bucket_usage_info.rb +97 -0
  45. data/lib/models/comet_apiresponse_message.rb +84 -0
  46. data/lib/models/comet_destination_location.rb +93 -0
  47. data/lib/models/constellation_check_report.rb +99 -0
  48. data/lib/models/constellation_stats.rb +102 -0
  49. data/lib/models/constellation_status_apiresponse.rb +114 -0
  50. data/lib/models/content_measurement.rb +99 -0
  51. data/lib/models/content_measurement_component.rb +91 -0
  52. data/lib/models/create_group_policy_response.rb +93 -0
  53. data/lib/models/custom_remote_bucket_settings.rb +75 -0
  54. data/lib/models/days_of_week_config.rb +108 -0
  55. data/lib/models/default_email_report_policy.rb +87 -0
  56. data/lib/models/default_source_with_osrestriction.rb +83 -0
  57. data/lib/models/destination_config.rb +562 -0
  58. data/lib/models/destination_location.rb +421 -0
  59. data/lib/models/destination_statistics.rb +115 -0
  60. data/lib/models/device_config.rb +124 -0
  61. data/lib/models/disk_drive.rb +180 -0
  62. data/lib/models/dispatcher_admin_sources_response.rb +100 -0
  63. data/lib/models/dispatcher_stored_objects_response.rb +99 -0
  64. data/lib/models/dispatcher_vault_snapshots_response.rb +99 -0
  65. data/lib/models/dispatcher_windisk_snapshot_response.rb +99 -0
  66. data/lib/models/edbfile_info.rb +99 -0
  67. data/lib/models/email_options.rb +153 -0
  68. data/lib/models/email_report_config.rb +98 -0
  69. data/lib/models/email_report_generated_preview.rb +136 -0
  70. data/lib/models/external_ldapauthentication_source_settings.rb +135 -0
  71. data/lib/models/extra_file_exclusion.rb +90 -0
  72. data/lib/models/ftpdestination_location.rb +141 -0
  73. data/lib/models/get_group_policy_response.rb +101 -0
  74. data/lib/models/get_profile_and_hash_response_message.rb +101 -0
  75. data/lib/models/get_profile_hash_response_message.rb +93 -0
  76. data/lib/models/group_policy.rb +98 -0
  77. data/lib/models/hour_sched_config.rb +84 -0
  78. data/lib/models/hyper_vmachine_info.rb +84 -0
  79. data/lib/models/install_creds.rb +99 -0
  80. data/lib/models/install_token.rb +117 -0
  81. data/lib/models/install_token_response.rb +92 -0
  82. data/lib/models/job_entry.rb +94 -0
  83. data/lib/models/live_user_connection.rb +149 -0
  84. data/lib/models/local_destination_location.rb +102 -0
  85. data/lib/models/mac_oscode_sign_properties.rb +197 -0
  86. data/lib/models/mongo_dbconnection.rb +230 -0
  87. data/lib/models/mssqlconnection.rb +120 -0
  88. data/lib/models/my_sqlconnection.rb +141 -0
  89. data/lib/models/new_bucket_detail.rb +84 -0
  90. data/lib/models/news_entry.rb +93 -0
  91. data/lib/models/office_365connection.rb +131 -0
  92. data/lib/models/office_365credential.rb +111 -0
  93. data/lib/models/office_365custom_setting.rb +133 -0
  94. data/lib/models/office_365custom_setting_v2.rb +108 -0
  95. data/lib/models/office_365mixed_virtual_account.rb +211 -0
  96. data/lib/models/office_365object_info.rb +118 -0
  97. data/lib/models/organization.rb +151 -0
  98. data/lib/models/organization_response.rb +101 -0
  99. data/lib/models/osinfo.rb +99 -0
  100. data/lib/models/partition.rb +172 -0
  101. data/lib/models/private_branding_properties.rb +227 -0
  102. data/lib/models/protected_item_engine_type_policy.rb +88 -0
  103. data/lib/models/public_branding_properties.rb +132 -0
  104. data/lib/models/register_office_application_begin_response.rb +93 -0
  105. data/lib/models/register_office_application_check_response.rb +100 -0
  106. data/lib/models/remote_server_address.rb +167 -0
  107. data/lib/models/remote_storage_option.rb +188 -0
  108. data/lib/models/replicator_state_apiresponse.rb +174 -0
  109. data/lib/models/request_storage_vault_response_message.rb +93 -0
  110. data/lib/models/restore_job_advanced_options.rb +131 -0
  111. data/lib/models/retention_policy.rb +90 -0
  112. data/lib/models/retention_range.rb +138 -0
  113. data/lib/models/s3destination_location.rb +123 -0
  114. data/lib/models/s3generic_virtual_storage_role.rb +111 -0
  115. data/lib/models/schedule_config.rb +131 -0
  116. data/lib/models/search_clause.rb +119 -0
  117. data/lib/models/self_backup_statistics.rb +108 -0
  118. data/lib/models/server_config_options_branding_fragment.rb +74 -0
  119. data/lib/models/server_config_options_software_build_role_fragment.rb +74 -0
  120. data/lib/models/server_meta_branding_properties.rb +144 -0
  121. data/lib/models/server_meta_version_info.rb +261 -0
  122. data/lib/models/session_key_regenerated_response.rb +102 -0
  123. data/lib/models/sftpdestination_location.rb +135 -0
  124. data/lib/models/size_measurement.rb +93 -0
  125. data/lib/models/software_build_role_options.rb +78 -0
  126. data/lib/models/software_update_news_response.rb +109 -0
  127. data/lib/models/source_basic_info.rb +101 -0
  128. data/lib/models/source_config.rb +202 -0
  129. data/lib/models/source_include_pattern.rb +84 -0
  130. data/lib/models/source_statistics.rb +82 -0
  131. data/lib/models/spanned_destination_location.rb +87 -0
  132. data/lib/models/spanned_storage_extra_info.rb +81 -0
  133. data/lib/models/sshconnection.rb +126 -0
  134. data/lib/models/stat_result.rb +111 -0
  135. data/lib/models/storage_free_space_info.rb +110 -0
  136. data/lib/models/storage_vault_provider_policy.rb +88 -0
  137. data/lib/models/stored_object.rb +238 -0
  138. data/lib/models/streamable_event.rb +92 -0
  139. data/lib/models/swift_destination_location.rb +209 -0
  140. data/lib/models/test_response.rb +90 -0
  141. data/lib/models/totp_regenerated_response.rb +111 -0
  142. data/lib/models/u2fregister_request.rb +85 -0
  143. data/lib/models/u2fregistered_key.rb +94 -0
  144. data/lib/models/u2fregistration_challenge_response.rb +133 -0
  145. data/lib/models/u2fsign_request.rb +109 -0
  146. data/lib/models/u2fsign_response.rb +103 -0
  147. data/lib/models/uninstall_config.rb +78 -0
  148. data/lib/models/update_campaign_device_status.rb +75 -0
  149. data/lib/models/update_campaign_options.rb +113 -0
  150. data/lib/models/update_campaign_properties.rb +128 -0
  151. data/lib/models/update_campaign_status.rb +143 -0
  152. data/lib/models/update_campaign_status_device_entry.rb +93 -0
  153. data/lib/models/user_custom_email_settings.rb +81 -0
  154. data/lib/models/user_on_server.rb +84 -0
  155. data/lib/models/user_policy.rb +339 -0
  156. data/lib/models/user_profile_config.rb +349 -0
  157. data/lib/models/user_profile_fragment.rb +75 -0
  158. data/lib/models/vault_snapshot.rb +99 -0
  159. data/lib/models/vmdksnapshot_view_options.rb +90 -0
  160. data/lib/models/vsscomponent.rb +99 -0
  161. data/lib/models/vsswriter_info.rb +90 -0
  162. data/lib/models/wasabi_virtual_storage_role_settings.rb +93 -0
  163. data/lib/models/web_authn_authenticator_selection.rb +96 -0
  164. data/lib/models/web_authn_credential.rb +105 -0
  165. data/lib/models/web_authn_credential_assertion.rb +74 -0
  166. data/lib/models/web_authn_credential_descriptor.rb +101 -0
  167. data/lib/models/web_authn_credential_entity.rb +86 -0
  168. data/lib/models/web_authn_credential_parameter.rb +84 -0
  169. data/lib/models/web_authn_public_key_credential_creation_options.rb +172 -0
  170. data/lib/models/web_authn_public_key_credential_request_options.rb +140 -0
  171. data/lib/models/web_authn_registration_challenge_response.rb +101 -0
  172. data/lib/models/web_authn_relying_party_entity.rb +95 -0
  173. data/lib/models/web_authn_sign_request.rb +83 -0
  174. data/lib/models/web_authn_sign_response.rb +84 -0
  175. data/lib/models/web_authn_user_entity.rb +105 -0
  176. data/lib/models/web_interface_branding_properties.rb +108 -0
  177. data/lib/models/webhook_option.rb +107 -0
  178. data/lib/models/win_smbauth.rb +102 -0
  179. data/lib/models/windows_code_sign_properties.rb +147 -0
  180. metadata +171 -2
@@ -0,0 +1,293 @@
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
+ # BrandingProperties is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class BrandingProperties
16
+
17
+ # @type [String] product_name
18
+ attr_accessor :product_name
19
+
20
+ # @type [String] company_name
21
+ attr_accessor :company_name
22
+
23
+ # @type [String] help_url
24
+ attr_accessor :help_url
25
+
26
+ # @type [Boolean] help_is_popup
27
+ attr_accessor :help_is_popup
28
+
29
+ # @type [String] default_login_server_url
30
+ attr_accessor :default_login_server_url
31
+
32
+ # @type [String] tile_background_color
33
+ attr_accessor :tile_background_color
34
+
35
+ # @type [String] account_register_url
36
+ attr_accessor :account_register_url
37
+
38
+ # @type [Boolean] hide_background_logo
39
+ attr_accessor :hide_background_logo
40
+
41
+ # @type [String] path_ico_file
42
+ attr_accessor :path_ico_file
43
+
44
+ # @type [String] path_icns_file
45
+ attr_accessor :path_icns_file
46
+
47
+ # @type [String] path_menu_bar_icns_file
48
+ attr_accessor :path_menu_bar_icns_file
49
+
50
+ # @type [String] path_eula_rtf
51
+ attr_accessor :path_eula_rtf
52
+
53
+ # @type [String] path_tile_png
54
+ attr_accessor :path_tile_png
55
+
56
+ # @type [String] path_header_image
57
+ attr_accessor :path_header_image
58
+
59
+ # @type [String] path_app_icon_image
60
+ attr_accessor :path_app_icon_image
61
+
62
+ # @type [String] package_identifier
63
+ attr_accessor :package_identifier
64
+
65
+ # @type [String] windows_code_sign_pkcs12file_path
66
+ attr_accessor :windows_code_sign_pkcs12file_path
67
+
68
+ # @type [Number] windows_code_sign_pkcs12password_format
69
+ attr_accessor :windows_code_sign_pkcs12password_format
70
+
71
+ # @type [String] windows_code_sign_pkcs12password
72
+ attr_accessor :windows_code_sign_pkcs12password
73
+
74
+ # @type [String] windows_code_sign_pkcs11engine
75
+ attr_accessor :windows_code_sign_pkcs11engine
76
+
77
+ # @type [String] windows_code_sign_pkcs11module
78
+ attr_accessor :windows_code_sign_pkcs11module
79
+
80
+ # @type [String] windows_code_sign_pkcs11certfile
81
+ attr_accessor :windows_code_sign_pkcs11certfile
82
+
83
+ # @type [String] windows_code_sign_pkcs11key_id
84
+ attr_accessor :windows_code_sign_pkcs11key_id
85
+
86
+ # @type [Number] windows_code_sign_pkcs11password_format
87
+ attr_accessor :windows_code_sign_pkcs11password_format
88
+
89
+ # @type [String] windows_code_sign_pkcs11password
90
+ attr_accessor :windows_code_sign_pkcs11password
91
+
92
+ # @type [Comet::MacOSCodeSignProperties] mac_oscode_sign
93
+ attr_accessor :mac_oscode_sign
94
+
95
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
96
+ attr_accessor :unknown_json_fields
97
+
98
+ def initialize
99
+ clear
100
+ end
101
+
102
+ def clear
103
+ @product_name = ''
104
+ @company_name = ''
105
+ @help_url = ''
106
+ @default_login_server_url = ''
107
+ @tile_background_color = ''
108
+ @account_register_url = ''
109
+ @path_ico_file = ''
110
+ @path_icns_file = ''
111
+ @path_menu_bar_icns_file = ''
112
+ @path_eula_rtf = ''
113
+ @path_tile_png = ''
114
+ @path_header_image = ''
115
+ @path_app_icon_image = ''
116
+ @package_identifier = ''
117
+ @windows_code_sign_pkcs12file_path = ''
118
+ @windows_code_sign_pkcs12password_format = 0
119
+ @windows_code_sign_pkcs12password = ''
120
+ @windows_code_sign_pkcs11engine = ''
121
+ @windows_code_sign_pkcs11module = ''
122
+ @windows_code_sign_pkcs11certfile = ''
123
+ @windows_code_sign_pkcs11key_id = ''
124
+ @windows_code_sign_pkcs11password_format = 0
125
+ @windows_code_sign_pkcs11password = ''
126
+ @mac_oscode_sign = Comet::MacOSCodeSignProperties.new
127
+ @unknown_json_fields = {}
128
+ end
129
+
130
+ # @param [String] json_string The complete object in JSON format
131
+ def from_json(json_string)
132
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
133
+
134
+ from_hash(JSON.parse(json_string))
135
+ end
136
+
137
+ # @param [Hash] obj The complete object as a Ruby hash
138
+ def from_hash(obj)
139
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
140
+
141
+ obj.each do |k, v|
142
+ case k
143
+ when 'ProductName'
144
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
145
+
146
+ @product_name = v
147
+ when 'CompanyName'
148
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
149
+
150
+ @company_name = v
151
+ when 'HelpURL'
152
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
153
+
154
+ @help_url = v
155
+ when 'HelpIsPopup'
156
+ @help_is_popup = v
157
+ when 'DefaultLoginServerURL'
158
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
159
+
160
+ @default_login_server_url = v
161
+ when 'TileBackgroundColor'
162
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
163
+
164
+ @tile_background_color = v
165
+ when 'AccountRegisterURL'
166
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
167
+
168
+ @account_register_url = v
169
+ when 'HideBackgroundLogo'
170
+ @hide_background_logo = v
171
+ when 'PathIcoFile'
172
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
173
+
174
+ @path_ico_file = v
175
+ when 'PathIcnsFile'
176
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
177
+
178
+ @path_icns_file = v
179
+ when 'PathMenuBarIcnsFile'
180
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
181
+
182
+ @path_menu_bar_icns_file = v
183
+ when 'PathEulaRtf'
184
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
185
+
186
+ @path_eula_rtf = v
187
+ when 'PathTilePng'
188
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
189
+
190
+ @path_tile_png = v
191
+ when 'PathHeaderImage'
192
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
193
+
194
+ @path_header_image = v
195
+ when 'PathAppIconImage'
196
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
197
+
198
+ @path_app_icon_image = v
199
+ when 'PackageIdentifier'
200
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
201
+
202
+ @package_identifier = v
203
+ when 'WindowsCodeSignPKCS12FilePath'
204
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
205
+
206
+ @windows_code_sign_pkcs12file_path = v
207
+ when 'WindowsCodeSignPKCS12PasswordFormat'
208
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
209
+
210
+ @windows_code_sign_pkcs12password_format = v
211
+ when 'WindowsCodeSignPKCS12Password'
212
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
213
+
214
+ @windows_code_sign_pkcs12password = v
215
+ when 'WindowsCodeSignPKCS11Engine'
216
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
217
+
218
+ @windows_code_sign_pkcs11engine = v
219
+ when 'WindowsCodeSignPKCS11Module'
220
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
221
+
222
+ @windows_code_sign_pkcs11module = v
223
+ when 'WindowsCodeSignPKCS11Certfile'
224
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
225
+
226
+ @windows_code_sign_pkcs11certfile = v
227
+ when 'WindowsCodeSignPKCS11KeyID'
228
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
229
+
230
+ @windows_code_sign_pkcs11key_id = v
231
+ when 'WindowsCodeSignPKCS11PasswordFormat'
232
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
233
+
234
+ @windows_code_sign_pkcs11password_format = v
235
+ when 'WindowsCodeSignPKCS11Password'
236
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
237
+
238
+ @windows_code_sign_pkcs11password = v
239
+ when 'MacOSCodeSign'
240
+ @mac_oscode_sign = Comet::MacOSCodeSignProperties.new
241
+ @mac_oscode_sign.from_hash(v)
242
+ else
243
+ @unknown_json_fields[k] = v
244
+ end
245
+ end
246
+ end
247
+
248
+ # @return [Hash] The complete object as a Ruby hash
249
+ def to_hash
250
+ ret = {}
251
+ ret['ProductName'] = @product_name
252
+ ret['CompanyName'] = @company_name
253
+ ret['HelpURL'] = @help_url
254
+ ret['HelpIsPopup'] = @help_is_popup
255
+ ret['DefaultLoginServerURL'] = @default_login_server_url
256
+ ret['TileBackgroundColor'] = @tile_background_color
257
+ ret['AccountRegisterURL'] = @account_register_url
258
+ ret['HideBackgroundLogo'] = @hide_background_logo
259
+ ret['PathIcoFile'] = @path_ico_file
260
+ ret['PathIcnsFile'] = @path_icns_file
261
+ ret['PathMenuBarIcnsFile'] = @path_menu_bar_icns_file
262
+ ret['PathEulaRtf'] = @path_eula_rtf
263
+ ret['PathTilePng'] = @path_tile_png
264
+ ret['PathHeaderImage'] = @path_header_image
265
+ ret['PathAppIconImage'] = @path_app_icon_image
266
+ ret['PackageIdentifier'] = @package_identifier
267
+ ret['WindowsCodeSignPKCS12FilePath'] = @windows_code_sign_pkcs12file_path
268
+ ret['WindowsCodeSignPKCS12PasswordFormat'] = @windows_code_sign_pkcs12password_format
269
+ ret['WindowsCodeSignPKCS12Password'] = @windows_code_sign_pkcs12password
270
+ ret['WindowsCodeSignPKCS11Engine'] = @windows_code_sign_pkcs11engine
271
+ ret['WindowsCodeSignPKCS11Module'] = @windows_code_sign_pkcs11module
272
+ ret['WindowsCodeSignPKCS11Certfile'] = @windows_code_sign_pkcs11certfile
273
+ ret['WindowsCodeSignPKCS11KeyID'] = @windows_code_sign_pkcs11key_id
274
+ ret['WindowsCodeSignPKCS11PasswordFormat'] = @windows_code_sign_pkcs11password_format
275
+ ret['WindowsCodeSignPKCS11Password'] = @windows_code_sign_pkcs11password
276
+ ret['MacOSCodeSign'] = @mac_oscode_sign
277
+ @unknown_json_fields.each do |k, v|
278
+ ret[k] = v
279
+ end
280
+ ret
281
+ end
282
+
283
+ # @return [Hash] The complete object as a Ruby hash
284
+ def to_h
285
+ to_hash
286
+ end
287
+
288
+ # @return [String] The complete object as a JSON string
289
+ def to_json(options = {})
290
+ to_hash.to_json(options)
291
+ end
292
+ end
293
+ end
@@ -0,0 +1,99 @@
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
+ # BrowseDiskDrivesResponse is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class BrowseDiskDrivesResponse
16
+
17
+ # @type [Number] status
18
+ attr_accessor :status
19
+
20
+ # @type [String] message
21
+ attr_accessor :message
22
+
23
+ # @type [Array<Comet::DiskDrive>] disks
24
+ attr_accessor :disks
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
+ @status = 0
35
+ @message = ''
36
+ @disks = []
37
+ @unknown_json_fields = {}
38
+ end
39
+
40
+ # @param [String] json_string The complete object in JSON format
41
+ def from_json(json_string)
42
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
43
+
44
+ from_hash(JSON.parse(json_string))
45
+ end
46
+
47
+ # @param [Hash] obj The complete object as a Ruby hash
48
+ def from_hash(obj)
49
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
50
+
51
+ obj.each do |k, v|
52
+ case k
53
+ when 'Status'
54
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
55
+
56
+ @status = v
57
+ when 'Message'
58
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
59
+
60
+ @message = v
61
+ when 'Disks'
62
+ if v.nil?
63
+ @disks = []
64
+ else
65
+ @disks = Array.new(v.length)
66
+ v.each_with_index do |v1, i1|
67
+ @disks[i1] = Comet::DiskDrive.new
68
+ @disks[i1].from_hash(v1)
69
+ end
70
+ end
71
+ else
72
+ @unknown_json_fields[k] = v
73
+ end
74
+ end
75
+ end
76
+
77
+ # @return [Hash] The complete object as a Ruby hash
78
+ def to_hash
79
+ ret = {}
80
+ ret['Status'] = @status
81
+ ret['Message'] = @message
82
+ ret['Disks'] = @disks
83
+ @unknown_json_fields.each do |k, v|
84
+ ret[k] = v
85
+ end
86
+ ret
87
+ end
88
+
89
+ # @return [Hash] The complete object as a Ruby hash
90
+ def to_h
91
+ to_hash
92
+ end
93
+
94
+ # @return [String] The complete object as a JSON string
95
+ def to_json(options = {})
96
+ to_hash.to_json(options)
97
+ end
98
+ end
99
+ end
@@ -0,0 +1,99 @@
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
+ # BrowseEDBResponse is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class BrowseEDBResponse
16
+
17
+ # @type [Number] status
18
+ attr_accessor :status
19
+
20
+ # @type [String] message
21
+ attr_accessor :message
22
+
23
+ # @type [Array<Comet::EDBFileInfo>] databases
24
+ attr_accessor :databases
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
+ @status = 0
35
+ @message = ''
36
+ @databases = []
37
+ @unknown_json_fields = {}
38
+ end
39
+
40
+ # @param [String] json_string The complete object in JSON format
41
+ def from_json(json_string)
42
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
43
+
44
+ from_hash(JSON.parse(json_string))
45
+ end
46
+
47
+ # @param [Hash] obj The complete object as a Ruby hash
48
+ def from_hash(obj)
49
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
50
+
51
+ obj.each do |k, v|
52
+ case k
53
+ when 'Status'
54
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
55
+
56
+ @status = v
57
+ when 'Message'
58
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
59
+
60
+ @message = v
61
+ when 'Databases'
62
+ if v.nil?
63
+ @databases = []
64
+ else
65
+ @databases = Array.new(v.length)
66
+ v.each_with_index do |v1, i1|
67
+ @databases[i1] = Comet::EDBFileInfo.new
68
+ @databases[i1].from_hash(v1)
69
+ end
70
+ end
71
+ else
72
+ @unknown_json_fields[k] = v
73
+ end
74
+ end
75
+ end
76
+
77
+ # @return [Hash] The complete object as a Ruby hash
78
+ def to_hash
79
+ ret = {}
80
+ ret['Status'] = @status
81
+ ret['Message'] = @message
82
+ ret['Databases'] = @databases
83
+ @unknown_json_fields.each do |k, v|
84
+ ret[k] = v
85
+ end
86
+ ret
87
+ end
88
+
89
+ # @return [Hash] The complete object as a Ruby hash
90
+ def to_h
91
+ to_hash
92
+ end
93
+
94
+ # @return [String] The complete object as a JSON string
95
+ def to_json(options = {})
96
+ to_hash.to_json(options)
97
+ end
98
+ end
99
+ end
@@ -0,0 +1,99 @@
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
+ # BrowseHVResponse is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class BrowseHVResponse
16
+
17
+ # @type [Number] status
18
+ attr_accessor :status
19
+
20
+ # @type [String] message
21
+ attr_accessor :message
22
+
23
+ # @type [Array<Comet::HyperVMachineInfo>] virtual_machines
24
+ attr_accessor :virtual_machines
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
+ @status = 0
35
+ @message = ''
36
+ @virtual_machines = []
37
+ @unknown_json_fields = {}
38
+ end
39
+
40
+ # @param [String] json_string The complete object in JSON format
41
+ def from_json(json_string)
42
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
43
+
44
+ from_hash(JSON.parse(json_string))
45
+ end
46
+
47
+ # @param [Hash] obj The complete object as a Ruby hash
48
+ def from_hash(obj)
49
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
50
+
51
+ obj.each do |k, v|
52
+ case k
53
+ when 'Status'
54
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
55
+
56
+ @status = v
57
+ when 'Message'
58
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
59
+
60
+ @message = v
61
+ when 'VirtualMachines'
62
+ if v.nil?
63
+ @virtual_machines = []
64
+ else
65
+ @virtual_machines = Array.new(v.length)
66
+ v.each_with_index do |v1, i1|
67
+ @virtual_machines[i1] = Comet::HyperVMachineInfo.new
68
+ @virtual_machines[i1].from_hash(v1)
69
+ end
70
+ end
71
+ else
72
+ @unknown_json_fields[k] = v
73
+ end
74
+ end
75
+ end
76
+
77
+ # @return [Hash] The complete object as a Ruby hash
78
+ def to_hash
79
+ ret = {}
80
+ ret['Status'] = @status
81
+ ret['Message'] = @message
82
+ ret['VirtualMachines'] = @virtual_machines
83
+ @unknown_json_fields.each do |k, v|
84
+ ret[k] = v
85
+ end
86
+ ret
87
+ end
88
+
89
+ # @return [Hash] The complete object as a Ruby hash
90
+ def to_h
91
+ to_hash
92
+ end
93
+
94
+ # @return [String] The complete object as a JSON string
95
+ def to_json(options = {})
96
+ to_hash.to_json(options)
97
+ end
98
+ end
99
+ end
@@ -0,0 +1,99 @@
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
+ # BrowseOffice365ListVirtualAccountsResponse is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class BrowseOffice365ListVirtualAccountsResponse
16
+
17
+ # @type [Number] status
18
+ attr_accessor :status
19
+
20
+ # @type [String] message
21
+ attr_accessor :message
22
+
23
+ # @type [Array<Comet::Office365MixedVirtualAccount>] objects
24
+ attr_accessor :objects
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
+ @status = 0
35
+ @message = ''
36
+ @objects = []
37
+ @unknown_json_fields = {}
38
+ end
39
+
40
+ # @param [String] json_string The complete object in JSON format
41
+ def from_json(json_string)
42
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
43
+
44
+ from_hash(JSON.parse(json_string))
45
+ end
46
+
47
+ # @param [Hash] obj The complete object as a Ruby hash
48
+ def from_hash(obj)
49
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
50
+
51
+ obj.each do |k, v|
52
+ case k
53
+ when 'Status'
54
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
55
+
56
+ @status = v
57
+ when 'Message'
58
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
59
+
60
+ @message = v
61
+ when 'Objects'
62
+ if v.nil?
63
+ @objects = []
64
+ else
65
+ @objects = Array.new(v.length)
66
+ v.each_with_index do |v1, i1|
67
+ @objects[i1] = Comet::Office365MixedVirtualAccount.new
68
+ @objects[i1].from_hash(v1)
69
+ end
70
+ end
71
+ else
72
+ @unknown_json_fields[k] = v
73
+ end
74
+ end
75
+ end
76
+
77
+ # @return [Hash] The complete object as a Ruby hash
78
+ def to_hash
79
+ ret = {}
80
+ ret['Status'] = @status
81
+ ret['Message'] = @message
82
+ ret['Objects'] = @objects
83
+ @unknown_json_fields.each do |k, v|
84
+ ret[k] = v
85
+ end
86
+ ret
87
+ end
88
+
89
+ # @return [Hash] The complete object as a Ruby hash
90
+ def to_h
91
+ to_hash
92
+ end
93
+
94
+ # @return [String] The complete object as a JSON string
95
+ def to_json(options = {})
96
+ to_hash.to_json(options)
97
+ end
98
+ end
99
+ end