comet_backup_ruby_sdk 1.0.0 → 1.5.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 (150) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +37 -0
  3. data/Gemfile.lock +2 -2
  4. data/LICENSE +1 -1
  5. data/comet_backup_ruby_sdk.gemspec +1 -1
  6. data/lib/comet/api_response_error.rb +1 -1
  7. data/lib/comet/comet_server.rb +602 -291
  8. data/lib/comet/definitions.rb +48 -4
  9. data/lib/comet/models/add_bucket_response_message.rb +7 -7
  10. data/lib/comet/models/admin_account_properties_response.rb +4 -4
  11. data/lib/comet/models/admin_email_options.rb +5 -5
  12. data/lib/comet/models/admin_resource_response.rb +6 -6
  13. data/lib/comet/models/admin_security_options.rb +8 -8
  14. data/lib/comet/models/admin_u2fregistration.rb +5 -5
  15. data/lib/comet/models/admin_user_permissions.rb +3 -3
  16. data/lib/comet/models/available_download.rb +5 -5
  17. data/lib/comet/models/azure_destination_location.rb +8 -8
  18. data/lib/comet/models/b2destination_location.rb +8 -8
  19. data/lib/comet/models/b2storage_extra_info.rb +3 -3
  20. data/lib/comet/models/b2transaction_totals.rb +6 -6
  21. data/lib/comet/models/b2virtual_storage_role_settings.rb +6 -6
  22. data/lib/comet/models/backup_job_advanced_options.rb +5 -5
  23. data/lib/comet/models/backup_job_detail.rb +54 -21
  24. data/lib/comet/models/backup_job_progress.rb +8 -8
  25. data/lib/comet/models/backup_rule_config.rb +28 -12
  26. data/lib/comet/models/backup_rule_event_triggers.rb +3 -3
  27. data/lib/comet/models/branding_options.rb +37 -28
  28. data/lib/comet/models/branding_properties.rb +33 -24
  29. data/lib/comet/models/browse_disk_drives_response.rb +5 -5
  30. data/lib/comet/models/browse_edbresponse.rb +5 -5
  31. data/lib/comet/models/browse_hvresponse.rb +5 -5
  32. data/lib/comet/models/browse_office_365objects_response.rb +99 -0
  33. data/lib/comet/models/browse_sqlserver_response.rb +100 -0
  34. data/lib/comet/models/browse_vssresponse.rb +5 -5
  35. data/lib/comet/models/bucket_properties.rb +7 -7
  36. data/lib/comet/models/bucket_usage_info.rb +4 -4
  37. data/lib/comet/models/comet_apiresponse_message.rb +5 -5
  38. data/lib/comet/models/comet_destination_location.rb +6 -6
  39. data/lib/comet/models/constellation_check_report.rb +5 -5
  40. data/lib/comet/models/constellation_stats.rb +7 -7
  41. data/lib/comet/models/constellation_status_apiresponse.rb +5 -5
  42. data/lib/comet/models/content_measurement.rb +5 -5
  43. data/lib/comet/models/content_measurement_component.rb +5 -5
  44. data/lib/comet/models/create_group_policy_response.rb +6 -6
  45. data/lib/comet/models/custom_remote_bucket_settings.rb +75 -0
  46. data/lib/comet/models/default_email_report_policy.rb +3 -3
  47. data/lib/comet/models/destination_config.rb +66 -44
  48. data/lib/comet/models/destination_location.rb +41 -35
  49. data/lib/comet/models/destination_statistics.rb +6 -6
  50. data/lib/comet/models/device_config.rb +4 -4
  51. data/lib/comet/models/disk_drive.rb +14 -14
  52. data/lib/comet/models/dispatcher_admin_sources_response.rb +6 -6
  53. data/lib/comet/models/dispatcher_stored_objects_response.rb +5 -5
  54. data/lib/comet/models/dispatcher_vault_snapshots_response.rb +5 -5
  55. data/lib/comet/models/edbfile_info.rb +6 -6
  56. data/lib/comet/models/email_options.rb +10 -10
  57. data/lib/comet/models/email_report_config.rb +4 -4
  58. data/lib/comet/models/email_report_generated_preview.rb +8 -8
  59. data/lib/comet/models/external_ldapauthentication_source_settings.rb +40 -7
  60. data/lib/comet/models/extra_file_exclusion.rb +5 -5
  61. data/lib/comet/models/ftpdestination_location.rb +10 -10
  62. data/lib/comet/models/get_group_policy_response.rb +6 -6
  63. data/lib/comet/models/get_profile_and_hash_response_message.rb +6 -6
  64. data/lib/comet/models/get_profile_hash_response_message.rb +6 -6
  65. data/lib/comet/models/group_policy.rb +5 -5
  66. data/lib/comet/models/hyper_vmachine_info.rb +5 -5
  67. data/lib/comet/models/install_creds.rb +6 -6
  68. data/lib/comet/models/install_token.rb +8 -8
  69. data/lib/comet/models/install_token_response.rb +5 -5
  70. data/lib/comet/models/job_entry.rb +6 -6
  71. data/lib/comet/models/live_user_connection.rb +9 -9
  72. data/lib/comet/models/local_destination_location.rb +7 -7
  73. data/lib/comet/models/mac_oscode_sign_properties.rb +9 -9
  74. data/lib/comet/models/mongo_dbconnection.rb +16 -16
  75. data/lib/comet/models/mssqlconnection.rb +120 -0
  76. data/lib/comet/models/my_sqlconnection.rb +102 -0
  77. data/lib/comet/models/new_bucket_detail.rb +5 -5
  78. data/lib/comet/models/news_entry.rb +6 -6
  79. data/lib/comet/models/office_365connection.rb +123 -0
  80. data/lib/comet/models/office_365credential.rb +111 -0
  81. data/lib/comet/models/office_365custom_setting.rb +132 -0
  82. data/lib/comet/models/office_365object_info.rb +118 -0
  83. data/lib/comet/models/organization.rb +11 -5
  84. data/lib/comet/models/organization_response.rb +6 -6
  85. data/lib/comet/models/osinfo.rb +6 -6
  86. data/lib/comet/models/partition.rb +14 -14
  87. data/lib/comet/models/private_branding_properties.rb +27 -18
  88. data/lib/comet/models/protected_item_engine_type_policy.rb +4 -4
  89. data/lib/comet/models/public_branding_properties.rb +9 -9
  90. data/lib/comet/models/register_office_application_begin_response.rb +93 -0
  91. data/lib/comet/models/register_office_application_check_response.rb +100 -0
  92. data/lib/comet/models/remote_server_address.rb +18 -8
  93. data/lib/comet/models/remote_storage_option.rb +19 -9
  94. data/lib/comet/models/replicator_state_apiresponse.rb +15 -15
  95. data/lib/comet/models/request_storage_vault_response_message.rb +6 -6
  96. data/lib/comet/models/restore_job_advanced_options.rb +13 -7
  97. data/lib/comet/models/retention_policy.rb +4 -4
  98. data/lib/comet/models/retention_range.rb +11 -11
  99. data/lib/comet/models/s3destination_location.rb +8 -8
  100. data/lib/comet/models/schedule_config.rb +6 -6
  101. data/lib/comet/models/search_clause.rb +7 -7
  102. data/lib/comet/models/self_backup_statistics.rb +108 -0
  103. data/lib/comet/models/server_config_options_branding_fragment.rb +3 -3
  104. data/lib/comet/models/server_config_options_software_build_role_fragment.rb +3 -3
  105. data/lib/comet/models/server_meta_version_info.rb +33 -18
  106. data/lib/comet/models/session_key_regenerated_response.rb +7 -7
  107. data/lib/comet/models/sftpdestination_location.rb +10 -10
  108. data/lib/comet/models/size_measurement.rb +6 -6
  109. data/lib/comet/models/software_build_role_options.rb +3 -3
  110. data/lib/comet/models/software_update_news_response.rb +7 -7
  111. data/lib/comet/models/source_basic_info.rb +5 -5
  112. data/lib/comet/models/source_config.rb +27 -11
  113. data/lib/comet/models/source_statistics.rb +3 -3
  114. data/lib/comet/models/spanned_destination_location.rb +9 -3
  115. data/lib/comet/models/spanned_storage_extra_info.rb +3 -3
  116. data/lib/comet/models/sshconnection.rb +9 -9
  117. data/lib/comet/models/stat_result.rb +7 -7
  118. data/lib/comet/models/storage_free_space_info.rb +5 -5
  119. data/lib/comet/models/storage_vault_provider_policy.rb +4 -4
  120. data/lib/comet/models/stored_object.rb +96 -11
  121. data/lib/comet/models/streamable_event.rb +8 -6
  122. data/lib/comet/models/swift_destination_location.rb +16 -16
  123. data/lib/comet/models/test_response.rb +5 -5
  124. data/lib/comet/models/totp_regenerated_response.rb +8 -8
  125. data/lib/comet/models/u2fregister_request.rb +5 -5
  126. data/lib/comet/models/u2fregistered_key.rb +6 -6
  127. data/lib/comet/models/u2fregistration_challenge_response.rb +7 -7
  128. data/lib/comet/models/u2fsign_request.rb +6 -6
  129. data/lib/comet/models/u2fsign_response.rb +7 -7
  130. data/lib/comet/models/uninstall_config.rb +3 -3
  131. data/lib/comet/models/update_campaign_device_status.rb +4 -4
  132. data/lib/comet/models/update_campaign_options.rb +3 -3
  133. data/lib/comet/models/update_campaign_properties.rb +5 -5
  134. data/lib/comet/models/update_campaign_status.rb +5 -5
  135. data/lib/comet/models/update_campaign_status_device_entry.rb +6 -6
  136. data/lib/comet/models/user_custom_email_settings.rb +3 -3
  137. data/lib/comet/models/user_on_server.rb +5 -5
  138. data/lib/comet/models/user_policy.rb +7 -7
  139. data/lib/comet/models/user_profile_config.rb +19 -19
  140. data/lib/comet/models/user_profile_fragment.rb +4 -4
  141. data/lib/comet/models/vault_snapshot.rb +12 -6
  142. data/lib/comet/models/vsscomponent.rb +6 -6
  143. data/lib/comet/models/vsswriter_info.rb +4 -4
  144. data/lib/comet/models/wasabi_virtual_storage_role_settings.rb +6 -6
  145. data/lib/comet/models/web_interface_branding_properties.rb +7 -7
  146. data/lib/comet/models/webhook_option.rb +5 -5
  147. data/lib/comet/models/win_smbauth.rb +7 -7
  148. data/lib/comet/models/windows_code_sign_properties.rb +12 -12
  149. data/lib/comet_backup_ruby_sdk.rb +13 -1
  150. metadata +14 -2
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2020 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2021 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -53,37 +53,37 @@ module Comet
53
53
 
54
54
  # @param [String] json_string The complete object in JSON format
55
55
  def from_json(json_string)
56
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
56
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
57
57
 
58
58
  from_hash(JSON.parse(json_string))
59
59
  end
60
60
 
61
61
  # @param [Hash] obj The complete object as a Ruby hash
62
62
  def from_hash(obj)
63
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
63
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
64
64
 
65
65
  obj.each do |k, v|
66
66
  case k
67
67
  when 'S3Server'
68
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
68
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
69
69
 
70
70
  @s3server = v
71
71
  when 'S3UsesTLS'
72
72
  @s3uses_tls = v
73
73
  when 'S3AccessKey'
74
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
74
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
75
75
 
76
76
  @s3access_key = v
77
77
  when 'S3SecretKey'
78
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
78
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
79
79
 
80
80
  @s3secret_key = v
81
81
  when 'S3BucketName'
82
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
82
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
83
83
 
84
84
  @s3bucket_name = v
85
85
  when 'S3Subdir'
86
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
86
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
87
87
 
88
88
  @s3subdir = v
89
89
  when 'S3UsesV2Signing'
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2020 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2021 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -39,27 +39,27 @@ module Comet
39
39
 
40
40
  # @param [String] json_string The complete object in JSON format
41
41
  def from_json(json_string)
42
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
42
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
43
43
 
44
44
  from_hash(JSON.parse(json_string))
45
45
  end
46
46
 
47
47
  # @param [Hash] obj The complete object as a Ruby hash
48
48
  def from_hash(obj)
49
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
49
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
50
50
 
51
51
  obj.each do |k, v|
52
52
  case k
53
53
  when 'FrequencyType'
54
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
54
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
55
55
 
56
56
  @frequency_type = v
57
57
  when 'SecondsPast'
58
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
58
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
59
59
 
60
60
  @seconds_past = v
61
61
  when 'Offset'
62
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
62
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
63
63
 
64
64
  @offset = v
65
65
  else
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2020 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2021 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -47,31 +47,31 @@ module Comet
47
47
 
48
48
  # @param [String] json_string The complete object in JSON format
49
49
  def from_json(json_string)
50
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
50
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
51
51
 
52
52
  from_hash(JSON.parse(json_string))
53
53
  end
54
54
 
55
55
  # @param [Hash] obj The complete object as a Ruby hash
56
56
  def from_hash(obj)
57
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
57
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
58
58
 
59
59
  obj.each do |k, v|
60
60
  case k
61
61
  when 'ClauseType'
62
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
62
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
63
63
 
64
64
  @clause_type = v
65
65
  when 'RuleField'
66
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
66
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
67
67
 
68
68
  @rule_field = v
69
69
  when 'RuleOperator'
70
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
70
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
71
71
 
72
72
  @rule_operator = v
73
73
  when 'RuleValue'
74
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
74
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
75
75
 
76
76
  @rule_value = v
77
77
  when 'ClauseChildren'
@@ -0,0 +1,108 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2021 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
+ # SelfBackupStatistics is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class SelfBackupStatistics
16
+
17
+ # @type [Number] current_run_start
18
+ attr_accessor :current_run_start
19
+
20
+ # @type [Number] last_run_start
21
+ attr_accessor :last_run_start
22
+
23
+ # @type [Number] last_run_end
24
+ attr_accessor :last_run_end
25
+
26
+ # @type [Boolean] last_run_success
27
+ attr_accessor :last_run_success
28
+
29
+ # @type [Number] last_run_size
30
+ attr_accessor :last_run_size
31
+
32
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
33
+ attr_accessor :unknown_json_fields
34
+
35
+ def initialize
36
+ clear
37
+ end
38
+
39
+ def clear
40
+ @current_run_start = 0
41
+ @last_run_start = 0
42
+ @last_run_end = 0
43
+ @last_run_size = 0
44
+ @unknown_json_fields = {}
45
+ end
46
+
47
+ # @param [String] json_string The complete object in JSON format
48
+ def from_json(json_string)
49
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
50
+
51
+ from_hash(JSON.parse(json_string))
52
+ end
53
+
54
+ # @param [Hash] obj The complete object as a Ruby hash
55
+ def from_hash(obj)
56
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
57
+
58
+ obj.each do |k, v|
59
+ case k
60
+ when 'CurrentRunStart'
61
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
62
+
63
+ @current_run_start = v
64
+ when 'LastRunStart'
65
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
66
+
67
+ @last_run_start = v
68
+ when 'LastRunEnd'
69
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
70
+
71
+ @last_run_end = v
72
+ when 'LastRunSuccess'
73
+ @last_run_success = v
74
+ when 'LastRunSize'
75
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
76
+
77
+ @last_run_size = v
78
+ else
79
+ @unknown_json_fields[k] = v
80
+ end
81
+ end
82
+ end
83
+
84
+ # @return [Hash] The complete object as a Ruby hash
85
+ def to_hash
86
+ ret = {}
87
+ ret['CurrentRunStart'] = @current_run_start
88
+ ret['LastRunStart'] = @last_run_start
89
+ ret['LastRunEnd'] = @last_run_end
90
+ ret['LastRunSuccess'] = @last_run_success
91
+ ret['LastRunSize'] = @last_run_size
92
+ @unknown_json_fields.each do |k, v|
93
+ ret[k] = v
94
+ end
95
+ ret
96
+ end
97
+
98
+ # @return [Hash] The complete object as a Ruby hash
99
+ def to_h
100
+ to_hash
101
+ end
102
+
103
+ # @return [String] The complete object as a JSON string
104
+ def to_json(options = {})
105
+ to_hash.to_json(options)
106
+ end
107
+ end
108
+ end
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2020 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2021 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -31,14 +31,14 @@ module Comet
31
31
 
32
32
  # @param [String] json_string The complete object in JSON format
33
33
  def from_json(json_string)
34
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
34
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
35
35
 
36
36
  from_hash(JSON.parse(json_string))
37
37
  end
38
38
 
39
39
  # @param [Hash] obj The complete object as a Ruby hash
40
40
  def from_hash(obj)
41
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
41
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
42
42
 
43
43
  obj.each do |k, v|
44
44
  case k
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2020 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2021 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -31,14 +31,14 @@ module Comet
31
31
 
32
32
  # @param [String] json_string The complete object in JSON format
33
33
  def from_json(json_string)
34
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
34
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
35
35
 
36
36
  from_hash(JSON.parse(json_string))
37
37
  end
38
38
 
39
39
  # @param [Hash] obj The complete object as a Ruby hash
40
40
  def from_hash(obj)
41
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
41
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
42
42
 
43
43
  obj.each do |k, v|
44
44
  case k
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2020 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2021 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -77,6 +77,9 @@ module Comet
77
77
  # @type [Boolean] scheduled_email_thread_last_wake_sent_emails
78
78
  attr_accessor :scheduled_email_thread_last_wake_sent_emails
79
79
 
80
+ # @type [Array<Comet::SelfBackupStatistics>] self_backup
81
+ attr_accessor :self_backup
82
+
80
83
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
81
84
  attr_accessor :unknown_json_fields
82
85
 
@@ -100,28 +103,29 @@ module Comet
100
103
  @scheduled_email_thread_last_calculate_duration_nanos = 0
101
104
  @scheduled_email_thread_waiting_until = 0
102
105
  @scheduled_email_thread_last_wake_time = 0
106
+ @self_backup = []
103
107
  @unknown_json_fields = {}
104
108
  end
105
109
 
106
110
  # @param [String] json_string The complete object in JSON format
107
111
  def from_json(json_string)
108
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
112
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
109
113
 
110
114
  from_hash(JSON.parse(json_string))
111
115
  end
112
116
 
113
117
  # @param [Hash] obj The complete object as a Ruby hash
114
118
  def from_hash(obj)
115
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
119
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
116
120
 
117
121
  obj.each do |k, v|
118
122
  case k
119
123
  when 'Version'
120
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
124
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
121
125
 
122
126
  @version = v
123
127
  when 'VersionCodename'
124
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
128
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
125
129
 
126
130
  @version_codename = v
127
131
  when 'StorageRole'
@@ -140,61 +144,71 @@ module Comet
140
144
  else
141
145
  @experimental_options = Array.new(v.length)
142
146
  v.each_with_index do |v1, i1|
143
- raise TypeError "'v1' expected String, got #{v1.class}" unless v1.is_a? String
147
+ raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String
144
148
 
145
149
  @experimental_options[i1] = v1
146
150
  end
147
151
  end
148
152
  when 'ServerStartTime'
149
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
153
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
150
154
 
151
155
  @server_start_time = v
152
156
  when 'ServerStartHash'
153
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
157
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
154
158
 
155
159
  @server_start_hash = v
156
160
  when 'CurrentTime'
157
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
161
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
158
162
 
159
163
  @current_time = v
160
164
  when 'ServerLicenseHash'
161
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
165
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
162
166
 
163
167
  @server_license_hash = v
164
168
  when 'LicenseValidUntil'
165
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
169
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
166
170
 
167
171
  @license_valid_until = v
168
172
  when 'EmailsSentSuccessfully'
169
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
173
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
170
174
 
171
175
  @emails_sent_successfully = v
172
176
  when 'EmailsSentErrors'
173
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
177
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
174
178
 
175
179
  @emails_sent_errors = v
176
180
  when 'EmailsWaitingInQueue'
177
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
181
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
178
182
 
179
183
  @emails_waiting_in_queue = v
180
184
  when 'ScheduledEmailThreadCurrentState'
181
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
185
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
182
186
 
183
187
  @scheduled_email_thread_current_state = v
184
188
  when 'ScheduledEmailThreadLastCalculateDurationNanos'
185
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
189
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
186
190
 
187
191
  @scheduled_email_thread_last_calculate_duration_nanos = v
188
192
  when 'ScheduledEmailThreadWaitingUntil'
189
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
193
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
190
194
 
191
195
  @scheduled_email_thread_waiting_until = v
192
196
  when 'ScheduledEmailThreadLastWakeTime'
193
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
197
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
194
198
 
195
199
  @scheduled_email_thread_last_wake_time = v
196
200
  when 'ScheduledEmailThreadLastWakeSentEmails'
197
201
  @scheduled_email_thread_last_wake_sent_emails = v
202
+ when 'SelfBackup'
203
+ if v.nil?
204
+ @self_backup = []
205
+ else
206
+ @self_backup = Array.new(v.length)
207
+ v.each_with_index do |v1, i1|
208
+ @self_backup[i1] = Comet::SelfBackupStatistics.new
209
+ @self_backup[i1].from_hash(v1)
210
+ end
211
+ end
198
212
  else
199
213
  @unknown_json_fields[k] = v
200
214
  end
@@ -227,6 +241,7 @@ module Comet
227
241
  ret['ScheduledEmailThreadWaitingUntil'] = @scheduled_email_thread_waiting_until
228
242
  ret['ScheduledEmailThreadLastWakeTime'] = @scheduled_email_thread_last_wake_time
229
243
  ret['ScheduledEmailThreadLastWakeSentEmails'] = @scheduled_email_thread_last_wake_sent_emails
244
+ ret['SelfBackup'] = @self_backup
230
245
  @unknown_json_fields.each do |k, v|
231
246
  ret[k] = v
232
247
  end
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby --enable-frozen-string-literal
2
2
  #
3
- # Copyright (c) 2020-2020 Comet Licensing Ltd.
3
+ # Copyright (c) 2020-2021 Comet Licensing Ltd.
4
4
  # Please see the LICENSE file for usage information.
5
5
  #
6
6
  # SPDX-License-Identifier: MIT
@@ -43,31 +43,31 @@ module Comet
43
43
 
44
44
  # @param [String] json_string The complete object in JSON format
45
45
  def from_json(json_string)
46
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
46
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
47
47
 
48
48
  from_hash(JSON.parse(json_string))
49
49
  end
50
50
 
51
51
  # @param [Hash] obj The complete object as a Ruby hash
52
52
  def from_hash(obj)
53
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
53
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
54
54
 
55
55
  obj.each do |k, v|
56
56
  case k
57
57
  when 'Status'
58
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
58
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
59
59
 
60
60
  @status = v
61
61
  when 'Message'
62
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
62
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
63
63
 
64
64
  @message = v
65
65
  when 'SessionKey'
66
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
66
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
67
67
 
68
68
  @session_key = v
69
69
  when 'SessionType'
70
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
70
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
71
71
 
72
72
  @session_type = v
73
73
  else