comet_backup_ruby_sdk 1.15.0 → 2.2.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 (200) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -0
  3. data/.rubocop.yml +0 -0
  4. data/CHANGELOG.md +28 -1
  5. data/Gemfile +2 -4
  6. data/Gemfile.lock +1 -1
  7. data/LICENSE +0 -0
  8. data/README.md +0 -0
  9. data/RELEASING.md +0 -0
  10. data/Rakefile +2 -4
  11. data/comet_backup_ruby_sdk.gemspec +1 -1
  12. data/lib/comet/api_response_error.rb +2 -4
  13. data/lib/comet/comet_server.rb +76 -23
  14. data/lib/comet/definitions.rb +28 -7
  15. data/lib/comet/models/add_bucket_response_message.rb +2 -4
  16. data/lib/comet/models/admin_account_properties_response.rb +2 -4
  17. data/lib/comet/models/admin_email_options.rb +2 -4
  18. data/lib/comet/models/admin_resource_response.rb +2 -4
  19. data/lib/comet/models/admin_security_options.rb +2 -4
  20. data/lib/comet/models/admin_u2fregistration.rb +2 -4
  21. data/lib/comet/models/admin_user_permissions.rb +18 -4
  22. data/lib/comet/models/admin_web_authn_registration.rb +2 -4
  23. data/lib/comet/models/allowed_admin_user.rb +2 -4
  24. data/lib/comet/models/amazon_awsvirtual_storage_role_settings.rb +2 -4
  25. data/lib/comet/models/authentication_role_options.rb +149 -0
  26. data/lib/comet/models/available_download.rb +2 -4
  27. data/lib/comet/models/azure_destination_location.rb +2 -4
  28. data/lib/comet/models/b2destination_location.rb +2 -4
  29. data/lib/comet/models/b2storage_extra_info.rb +2 -4
  30. data/lib/comet/models/b2transaction_totals.rb +2 -4
  31. data/lib/comet/models/b2virtual_storage_role_settings.rb +2 -4
  32. data/lib/comet/models/backup_job_advanced_options.rb +2 -4
  33. data/lib/comet/models/backup_job_detail.rb +2 -4
  34. data/lib/comet/models/backup_job_progress.rb +2 -4
  35. data/lib/comet/models/backup_rule_config.rb +2 -4
  36. data/lib/comet/models/backup_rule_event_triggers.rb +2 -4
  37. data/lib/comet/models/branding_options.rb +11 -4
  38. data/lib/comet/models/branding_properties.rb +11 -4
  39. data/lib/comet/models/browse_disk_drives_response.rb +2 -4
  40. data/lib/comet/models/browse_edbresponse.rb +2 -4
  41. data/lib/comet/models/browse_hvresponse.rb +2 -4
  42. data/lib/comet/models/browse_office_365list_virtual_accounts_response.rb +2 -4
  43. data/lib/comet/models/browse_office_365objects_response.rb +2 -4
  44. data/lib/comet/models/browse_sqlserver_response.rb +2 -4
  45. data/lib/comet/models/browse_vssresponse.rb +2 -4
  46. data/lib/comet/models/bucket_properties.rb +2 -4
  47. data/lib/comet/models/bucket_usage_info.rb +11 -4
  48. data/lib/comet/models/comet_apiresponse_message.rb +2 -4
  49. data/lib/comet/models/comet_destination_location.rb +2 -4
  50. data/lib/comet/models/constellation_check_report.rb +2 -4
  51. data/lib/comet/models/constellation_role_options.rb +91 -0
  52. data/lib/comet/models/constellation_stats.rb +2 -4
  53. data/lib/comet/models/constellation_status_apiresponse.rb +2 -4
  54. data/lib/comet/models/content_measurement.rb +2 -4
  55. data/lib/comet/models/content_measurement_component.rb +2 -4
  56. data/lib/comet/models/create_group_policy_response.rb +2 -4
  57. data/lib/comet/models/custom_remote_bucket_settings.rb +2 -4
  58. data/lib/comet/models/days_of_week_config.rb +2 -4
  59. data/lib/comet/models/default_email_report_policy.rb +2 -4
  60. data/lib/comet/models/default_source_with_osrestriction.rb +2 -4
  61. data/lib/comet/models/destination_config.rb +19 -4
  62. data/lib/comet/models/destination_location.rb +19 -4
  63. data/lib/comet/models/destination_statistics.rb +2 -4
  64. data/lib/comet/models/device_config.rb +2 -4
  65. data/lib/comet/models/disk_drive.rb +2 -4
  66. data/lib/comet/models/dispatcher_admin_sources_response.rb +2 -4
  67. data/lib/comet/models/dispatcher_stored_objects_response.rb +2 -4
  68. data/lib/comet/models/dispatcher_vault_snapshots_response.rb +2 -4
  69. data/lib/comet/models/dispatcher_windisk_snapshot_response.rb +2 -4
  70. data/lib/comet/models/edbfile_info.rb +2 -4
  71. data/lib/comet/models/email_options.rb +2 -4
  72. data/lib/comet/models/email_report_config.rb +2 -4
  73. data/lib/comet/models/email_report_generated_preview.rb +2 -4
  74. data/lib/comet/models/external_authentication_source.rb +194 -0
  75. data/lib/comet/models/external_ldapauthentication_source_server.rb +97 -0
  76. data/lib/comet/models/external_ldapauthentication_source_settings.rb +23 -10
  77. data/lib/comet/models/extra_file_exclusion.rb +2 -4
  78. data/lib/comet/models/ftpdestination_location.rb +2 -4
  79. data/lib/comet/models/get_group_policy_response.rb +2 -4
  80. data/lib/comet/models/get_profile_and_hash_response_message.rb +2 -4
  81. data/lib/comet/models/get_profile_hash_response_message.rb +2 -4
  82. data/lib/comet/models/global_override_options.rb +75 -0
  83. data/lib/comet/models/group_policy.rb +2 -4
  84. data/lib/comet/models/hour_sched_config.rb +2 -4
  85. data/lib/comet/models/httpconnector_options.rb +139 -0
  86. data/lib/comet/models/hyper_vmachine_info.rb +2 -4
  87. data/lib/comet/models/install_creds.rb +2 -4
  88. data/lib/comet/models/install_token.rb +2 -4
  89. data/lib/comet/models/install_token_response.rb +2 -4
  90. data/lib/comet/models/job_entry.rb +2 -4
  91. data/lib/comet/models/license_options.rb +84 -0
  92. data/lib/comet/models/live_user_connection.rb +2 -4
  93. data/lib/comet/models/local_destination_location.rb +2 -4
  94. data/lib/comet/models/local_storage_directory.rb +73 -0
  95. data/lib/comet/models/mac_oscode_sign_properties.rb +2 -4
  96. data/lib/comet/models/mongo_dbconnection.rb +2 -4
  97. data/lib/comet/models/mssqlconnection.rb +2 -4
  98. data/lib/comet/models/my_sqlconnection.rb +2 -4
  99. data/lib/comet/models/new_bucket_detail.rb +2 -4
  100. data/lib/comet/models/news_entry.rb +2 -4
  101. data/lib/comet/models/office_365connection.rb +2 -4
  102. data/lib/comet/models/office_365credential.rb +2 -4
  103. data/lib/comet/models/office_365custom_setting.rb +2 -4
  104. data/lib/comet/models/office_365custom_setting_v2.rb +2 -4
  105. data/lib/comet/models/office_365mixed_virtual_account.rb +13 -4
  106. data/lib/comet/models/office_365object_info.rb +2 -4
  107. data/lib/comet/models/organization.rb +13 -7
  108. data/lib/comet/models/organization_response.rb +2 -4
  109. data/lib/comet/models/osinfo.rb +2 -4
  110. data/lib/comet/models/partition.rb +2 -4
  111. data/lib/comet/models/private_branding_properties.rb +11 -4
  112. data/lib/comet/models/protected_item_engine_type_policy.rb +2 -4
  113. data/lib/comet/models/public_branding_properties.rb +2 -4
  114. data/lib/comet/models/ratelimit_options.rb +81 -0
  115. data/lib/comet/models/ratelimit_rule.rb +82 -0
  116. data/lib/comet/models/register_office_application_begin_response.rb +2 -4
  117. data/lib/comet/models/register_office_application_check_response.rb +2 -4
  118. data/lib/comet/models/remote_server_address.rb +12 -4
  119. data/lib/comet/models/remote_storage_option.rb +12 -4
  120. data/lib/comet/models/replica_server.rb +197 -0
  121. data/lib/comet/models/replicator_state_apiresponse.rb +2 -4
  122. data/lib/comet/models/request_storage_vault_response_message.rb +2 -4
  123. data/lib/comet/models/restore_job_advanced_options.rb +83 -4
  124. data/lib/comet/models/retention_policy.rb +2 -4
  125. data/lib/comet/models/retention_range.rb +2 -4
  126. data/lib/comet/models/s3destination_location.rb +11 -4
  127. data/lib/comet/models/s3generic_virtual_storage_role.rb +2 -4
  128. data/lib/comet/models/schedule_config.rb +13 -4
  129. data/lib/comet/models/search_clause.rb +2 -4
  130. data/lib/comet/models/self_backup_options.rb +79 -0
  131. data/lib/comet/models/self_backup_statistics.rb +2 -4
  132. data/lib/comet/models/self_backup_target.rb +137 -0
  133. data/lib/comet/models/server_config_options.rb +253 -0
  134. data/lib/comet/models/server_config_options_branding_fragment.rb +2 -4
  135. data/lib/comet/models/server_config_options_software_build_role_fragment.rb +2 -4
  136. data/lib/comet/models/server_meta_branding_properties.rb +2 -4
  137. data/lib/comet/models/server_meta_version_info.rb +17 -4
  138. data/lib/comet/models/session_key_regenerated_response.rb +2 -4
  139. data/lib/comet/models/session_options.rb +73 -0
  140. data/lib/comet/models/sftpdestination_location.rb +2 -4
  141. data/lib/comet/models/size_measurement.rb +2 -4
  142. data/lib/comet/models/software_build_role_options.rb +2 -4
  143. data/lib/comet/models/software_update_news_response.rb +2 -4
  144. data/lib/comet/models/source_basic_info.rb +2 -4
  145. data/lib/comet/models/source_config.rb +2 -4
  146. data/lib/comet/models/source_include_pattern.rb +2 -4
  147. data/lib/comet/models/source_statistics.rb +2 -4
  148. data/lib/comet/models/spanned_destination_location.rb +2 -4
  149. data/lib/comet/models/spanned_storage_extra_info.rb +2 -4
  150. data/lib/comet/models/sshconnection.rb +2 -4
  151. data/lib/comet/models/stat_result.rb +2 -4
  152. data/lib/comet/models/storage_free_space_info.rb +2 -4
  153. data/lib/comet/models/storage_role_options.rb +110 -0
  154. data/lib/comet/models/storage_vault_provider_policy.rb +2 -4
  155. data/lib/comet/models/stored_object.rb +2 -4
  156. data/lib/comet/models/streamable_event.rb +2 -4
  157. data/lib/comet/models/swift_destination_location.rb +2 -4
  158. data/lib/comet/models/test_response.rb +2 -4
  159. data/lib/comet/models/totp_regenerated_response.rb +2 -4
  160. data/lib/comet/models/u2fregister_request.rb +2 -4
  161. data/lib/comet/models/u2fregistered_key.rb +2 -4
  162. data/lib/comet/models/u2fregistration_challenge_response.rb +2 -4
  163. data/lib/comet/models/u2fsign_request.rb +2 -4
  164. data/lib/comet/models/u2fsign_response.rb +2 -4
  165. data/lib/comet/models/uninstall_config.rb +2 -4
  166. data/lib/comet/models/update_campaign_device_status.rb +2 -4
  167. data/lib/comet/models/update_campaign_options.rb +5 -6
  168. data/lib/comet/models/update_campaign_properties.rb +2 -4
  169. data/lib/comet/models/update_campaign_status.rb +2 -4
  170. data/lib/comet/models/update_campaign_status_device_entry.rb +2 -4
  171. data/lib/comet/models/user_custom_email_settings.rb +2 -4
  172. data/lib/comet/models/user_on_server.rb +2 -4
  173. data/lib/comet/models/user_policy.rb +13 -4
  174. data/lib/comet/models/user_profile_config.rb +16 -8
  175. data/lib/comet/models/user_profile_fragment.rb +2 -4
  176. data/lib/comet/models/user_server_config.rb +75 -0
  177. data/lib/comet/models/vault_snapshot.rb +2 -4
  178. data/lib/comet/models/vmdksnapshot_view_options.rb +2 -4
  179. data/lib/comet/models/vsscomponent.rb +2 -4
  180. data/lib/comet/models/vsswriter_info.rb +2 -4
  181. data/lib/comet/models/wasabi_virtual_storage_role_settings.rb +2 -4
  182. data/lib/comet/models/web_authn_authenticator_selection.rb +2 -4
  183. data/lib/comet/models/web_authn_credential.rb +2 -4
  184. data/lib/comet/models/web_authn_credential_assertion.rb +2 -4
  185. data/lib/comet/models/web_authn_credential_descriptor.rb +2 -4
  186. data/lib/comet/models/web_authn_credential_entity.rb +2 -4
  187. data/lib/comet/models/web_authn_credential_parameter.rb +2 -4
  188. data/lib/comet/models/web_authn_public_key_credential_creation_options.rb +2 -4
  189. data/lib/comet/models/web_authn_public_key_credential_request_options.rb +2 -4
  190. data/lib/comet/models/web_authn_registration_challenge_response.rb +2 -4
  191. data/lib/comet/models/web_authn_relying_party_entity.rb +2 -4
  192. data/lib/comet/models/web_authn_sign_request.rb +2 -4
  193. data/lib/comet/models/web_authn_sign_response.rb +2 -4
  194. data/lib/comet/models/web_authn_user_entity.rb +2 -4
  195. data/lib/comet/models/web_interface_branding_properties.rb +2 -4
  196. data/lib/comet/models/webhook_option.rb +2 -4
  197. data/lib/comet/models/win_smbauth.rb +2 -4
  198. data/lib/comet/models/windows_code_sign_properties.rb +2 -4
  199. data/lib/comet_backup_ruby_sdk.rb +23 -4
  200. metadata +19 -2
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -113,6 +111,9 @@ module Comet
113
111
  # @type [Hash{String => Comet::BackupRuleConfig}] default_backup_rules
114
112
  attr_accessor :default_backup_rules
115
113
 
114
+ # @type [Number] random_delay_secs
115
+ attr_accessor :random_delay_secs
116
+
116
117
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
117
118
  attr_accessor :unknown_json_fields
118
119
 
@@ -134,6 +135,7 @@ module Comet
134
135
  @default_sources_backup_rules = {}
135
136
  @default_sources_with_osrestriction = {}
136
137
  @default_backup_rules = {}
138
+ @random_delay_secs = 0
137
139
  @unknown_json_fields = {}
138
140
  end
139
141
 
@@ -268,6 +270,10 @@ module Comet
268
270
  @default_backup_rules[k1].from_hash(v1)
269
271
  end
270
272
  end
273
+ when 'RandomDelaySecs'
274
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
275
+
276
+ @random_delay_secs = v
271
277
  else
272
278
  @unknown_json_fields[k] = v
273
279
  end
@@ -320,6 +326,9 @@ module Comet
320
326
  ret['DefaultSourcesBackupRules'] = @default_sources_backup_rules
321
327
  ret['DefaultSourcesWithOSRestriction'] = @default_sources_with_osrestriction
322
328
  ret['DefaultBackupRules'] = @default_backup_rules
329
+ unless @random_delay_secs.nil?
330
+ ret['RandomDelaySecs'] = @random_delay_secs
331
+ end
323
332
  @unknown_json_fields.each do |k, v|
324
333
  ret[k] = v
325
334
  end
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -67,16 +65,16 @@ module Comet
67
65
  attr_accessor :maximum_devices
68
66
 
69
67
  # If the PolicyID field is set to a non-empty string, the Comet Server will enforce the contents of
70
- # the Policy field based on the matching server's policy. Otherwise if the PolicyID field is set to an
71
- # empty string, the administrator may configure any custom values in the Policy field.
68
+ # the Policy field based on the matching server's policy. Otherwise if the PolicyID field is set to
69
+ # an empty string, the administrator may configure any custom values in the Policy field.
72
70
  # @type [String] policy_id
73
71
  attr_accessor :policy_id
74
72
 
75
73
  # @type [Comet::UserPolicy] policy
76
74
  attr_accessor :policy
77
75
 
78
- # To change the user's password, use the AdminResetUserPassword API instead of accessing these fields
79
- # directly. Otherwise, other encrypted fields in the user profile may become corrupted.
76
+ # To change the user's password, use the AdminResetUserPassword API instead of accessing these
77
+ # fields directly. Otherwise, other encrypted fields in the user profile may become corrupted.
80
78
  # @type [Number] password_format
81
79
  attr_accessor :password_format
82
80
 
@@ -107,6 +105,9 @@ module Comet
107
105
  # @type [String] creation_guid
108
106
  attr_accessor :creation_guid
109
107
 
108
+ # @type [Comet::UserServerConfig] server_config
109
+ attr_accessor :server_config
110
+
110
111
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
111
112
  attr_accessor :unknown_json_fields
112
113
 
@@ -137,6 +138,7 @@ module Comet
137
138
  @totpkey = ''
138
139
  @create_time = 0
139
140
  @creation_guid = ''
141
+ @server_config = Comet::UserServerConfig.new
140
142
  @unknown_json_fields = {}
141
143
  end
142
144
 
@@ -289,6 +291,9 @@ module Comet
289
291
  raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
290
292
 
291
293
  @creation_guid = v
294
+ when 'ServerConfig'
295
+ @server_config = Comet::UserServerConfig.new
296
+ @server_config.from_hash(v)
292
297
  else
293
298
  @unknown_json_fields[k] = v
294
299
  end
@@ -330,6 +335,9 @@ module Comet
330
335
  ret['RequirePasswordChange'] = @require_password_change
331
336
  ret['CreateTime'] = @create_time
332
337
  ret['CreationGUID'] = @creation_guid
338
+ unless @server_config.nil?
339
+ ret['ServerConfig'] = @server_config
340
+ end
333
341
  @unknown_json_fields.each do |k, v|
334
342
  ret[k] = v
335
343
  end
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
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
+ require 'json'
9
+
10
+ module Comet
11
+
12
+ # UserServerConfig is a typed class wrapper around the underlying Comet Server API data structure.
13
+ class UserServerConfig
14
+
15
+ # @type [Number] random_delay_secs
16
+ attr_accessor :random_delay_secs
17
+
18
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
19
+ attr_accessor :unknown_json_fields
20
+
21
+ def initialize
22
+ clear
23
+ end
24
+
25
+ def clear
26
+ @random_delay_secs = 0
27
+ @unknown_json_fields = {}
28
+ end
29
+
30
+ # @param [String] json_string The complete object in JSON format
31
+ def from_json(json_string)
32
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
33
+
34
+ from_hash(JSON.parse(json_string))
35
+ end
36
+
37
+ # @param [Hash] obj The complete object as a Ruby hash
38
+ def from_hash(obj)
39
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
40
+
41
+ obj.each do |k, v|
42
+ case k
43
+ when 'RandomDelaySecs'
44
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
45
+
46
+ @random_delay_secs = v
47
+ else
48
+ @unknown_json_fields[k] = v
49
+ end
50
+ end
51
+ end
52
+
53
+ # @return [Hash] The complete object as a Ruby hash
54
+ def to_hash
55
+ ret = {}
56
+ unless @random_delay_secs.nil?
57
+ ret['RandomDelaySecs'] = @random_delay_secs
58
+ end
59
+ @unknown_json_fields.each do |k, v|
60
+ ret[k] = v
61
+ end
62
+ ret
63
+ end
64
+
65
+ # @return [Hash] The complete object as a Ruby hash
66
+ def to_h
67
+ to_hash
68
+ end
69
+
70
+ # @return [String] The complete object as a JSON string
71
+ def to_json(options = {})
72
+ to_hash.to_json(options)
73
+ end
74
+ end
75
+ end
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'base64'
11
9
  require 'json'
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'base64'
11
9
  require 'json'
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'base64'
11
9
  require 'json'
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'base64'
11
9
  require 'json'
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'base64'
11
9
  require 'json'
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9
 
@@ -1,11 +1,9 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
1
+ # frozen_string_literal: true
2
+
3
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
7
- #
8
- # frozen_string_literal: true
9
7
 
10
8
  require 'json'
11
9