comet_backup_ruby_sdk 1.1.0 → 1.6.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 (154) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +39 -0
  3. data/Gemfile.lock +2 -2
  4. data/LICENSE +1 -1
  5. data/RELEASING.md +5 -3
  6. data/comet_backup_ruby_sdk.gemspec +1 -1
  7. data/lib/comet/api_response_error.rb +1 -1
  8. data/lib/comet/comet_server.rb +445 -169
  9. data/lib/comet/definitions.rb +42 -4
  10. data/lib/comet/models/add_bucket_response_message.rb +7 -7
  11. data/lib/comet/models/admin_account_properties_response.rb +4 -4
  12. data/lib/comet/models/admin_email_options.rb +5 -5
  13. data/lib/comet/models/admin_resource_response.rb +6 -6
  14. data/lib/comet/models/admin_security_options.rb +8 -8
  15. data/lib/comet/models/admin_u2fregistration.rb +5 -5
  16. data/lib/comet/models/admin_user_permissions.rb +3 -3
  17. data/lib/comet/models/available_download.rb +5 -5
  18. data/lib/comet/models/azure_destination_location.rb +8 -8
  19. data/lib/comet/models/b2destination_location.rb +8 -8
  20. data/lib/comet/models/b2storage_extra_info.rb +3 -3
  21. data/lib/comet/models/b2transaction_totals.rb +6 -6
  22. data/lib/comet/models/b2virtual_storage_role_settings.rb +6 -6
  23. data/lib/comet/models/backup_job_advanced_options.rb +5 -5
  24. data/lib/comet/models/backup_job_detail.rb +54 -21
  25. data/lib/comet/models/backup_job_progress.rb +8 -8
  26. data/lib/comet/models/backup_rule_config.rb +28 -12
  27. data/lib/comet/models/backup_rule_event_triggers.rb +3 -3
  28. data/lib/comet/models/branding_options.rb +37 -28
  29. data/lib/comet/models/branding_properties.rb +33 -24
  30. data/lib/comet/models/browse_disk_drives_response.rb +5 -5
  31. data/lib/comet/models/browse_edbresponse.rb +5 -5
  32. data/lib/comet/models/browse_hvresponse.rb +5 -5
  33. data/lib/comet/models/browse_office_365objects_response.rb +99 -0
  34. data/lib/comet/models/browse_sqlserver_response.rb +100 -0
  35. data/lib/comet/models/browse_vssresponse.rb +5 -5
  36. data/lib/comet/models/bucket_properties.rb +7 -7
  37. data/lib/comet/models/bucket_usage_info.rb +4 -4
  38. data/lib/comet/models/comet_apiresponse_message.rb +5 -5
  39. data/lib/comet/models/comet_destination_location.rb +6 -6
  40. data/lib/comet/models/constellation_check_report.rb +5 -5
  41. data/lib/comet/models/constellation_stats.rb +7 -7
  42. data/lib/comet/models/constellation_status_apiresponse.rb +5 -5
  43. data/lib/comet/models/content_measurement.rb +5 -5
  44. data/lib/comet/models/content_measurement_component.rb +5 -5
  45. data/lib/comet/models/create_group_policy_response.rb +6 -6
  46. data/lib/comet/models/custom_remote_bucket_settings.rb +75 -0
  47. data/lib/comet/models/default_email_report_policy.rb +3 -3
  48. data/lib/comet/models/default_source_with_osrestriction.rb +83 -0
  49. data/lib/comet/models/destination_config.rb +66 -44
  50. data/lib/comet/models/destination_location.rb +41 -35
  51. data/lib/comet/models/destination_statistics.rb +6 -6
  52. data/lib/comet/models/device_config.rb +4 -4
  53. data/lib/comet/models/disk_drive.rb +14 -14
  54. data/lib/comet/models/dispatcher_admin_sources_response.rb +6 -6
  55. data/lib/comet/models/dispatcher_stored_objects_response.rb +5 -5
  56. data/lib/comet/models/dispatcher_vault_snapshots_response.rb +5 -5
  57. data/lib/comet/models/edbfile_info.rb +6 -6
  58. data/lib/comet/models/email_options.rb +10 -10
  59. data/lib/comet/models/email_report_config.rb +4 -4
  60. data/lib/comet/models/email_report_generated_preview.rb +8 -8
  61. data/lib/comet/models/external_ldapauthentication_source_settings.rb +40 -7
  62. data/lib/comet/models/extra_file_exclusion.rb +5 -5
  63. data/lib/comet/models/ftpdestination_location.rb +10 -10
  64. data/lib/comet/models/get_group_policy_response.rb +6 -6
  65. data/lib/comet/models/get_profile_and_hash_response_message.rb +6 -6
  66. data/lib/comet/models/get_profile_hash_response_message.rb +6 -6
  67. data/lib/comet/models/group_policy.rb +5 -5
  68. data/lib/comet/models/hyper_vmachine_info.rb +5 -5
  69. data/lib/comet/models/install_creds.rb +6 -6
  70. data/lib/comet/models/install_token.rb +8 -8
  71. data/lib/comet/models/install_token_response.rb +5 -5
  72. data/lib/comet/models/job_entry.rb +6 -6
  73. data/lib/comet/models/live_user_connection.rb +9 -9
  74. data/lib/comet/models/local_destination_location.rb +7 -7
  75. data/lib/comet/models/mac_oscode_sign_properties.rb +9 -9
  76. data/lib/comet/models/mongo_dbconnection.rb +16 -16
  77. data/lib/comet/models/mssqlconnection.rb +120 -0
  78. data/lib/comet/models/my_sqlconnection.rb +102 -0
  79. data/lib/comet/models/new_bucket_detail.rb +5 -5
  80. data/lib/comet/models/news_entry.rb +6 -6
  81. data/lib/comet/models/office_365connection.rb +123 -0
  82. data/lib/comet/models/office_365credential.rb +111 -0
  83. data/lib/comet/models/office_365custom_setting.rb +132 -0
  84. data/lib/comet/models/office_365object_info.rb +118 -0
  85. data/lib/comet/models/organization.rb +11 -5
  86. data/lib/comet/models/organization_response.rb +6 -6
  87. data/lib/comet/models/osinfo.rb +6 -6
  88. data/lib/comet/models/partition.rb +14 -14
  89. data/lib/comet/models/private_branding_properties.rb +27 -18
  90. data/lib/comet/models/protected_item_engine_type_policy.rb +4 -4
  91. data/lib/comet/models/public_branding_properties.rb +9 -9
  92. data/lib/comet/models/register_office_application_begin_response.rb +93 -0
  93. data/lib/comet/models/register_office_application_check_response.rb +100 -0
  94. data/lib/comet/models/remote_server_address.rb +18 -8
  95. data/lib/comet/models/remote_storage_option.rb +19 -9
  96. data/lib/comet/models/replicator_state_apiresponse.rb +15 -15
  97. data/lib/comet/models/request_storage_vault_response_message.rb +6 -6
  98. data/lib/comet/models/restore_job_advanced_options.rb +23 -7
  99. data/lib/comet/models/retention_policy.rb +4 -4
  100. data/lib/comet/models/retention_range.rb +11 -11
  101. data/lib/comet/models/s3destination_location.rb +8 -8
  102. data/lib/comet/models/schedule_config.rb +6 -6
  103. data/lib/comet/models/search_clause.rb +7 -7
  104. data/lib/comet/models/self_backup_statistics.rb +108 -0
  105. data/lib/comet/models/server_config_options_branding_fragment.rb +3 -3
  106. data/lib/comet/models/server_config_options_software_build_role_fragment.rb +3 -3
  107. data/lib/comet/models/server_meta_branding_properties.rb +135 -0
  108. data/lib/comet/models/server_meta_version_info.rb +33 -18
  109. data/lib/comet/models/session_key_regenerated_response.rb +7 -7
  110. data/lib/comet/models/sftpdestination_location.rb +10 -10
  111. data/lib/comet/models/size_measurement.rb +6 -6
  112. data/lib/comet/models/software_build_role_options.rb +3 -3
  113. data/lib/comet/models/software_update_news_response.rb +7 -7
  114. data/lib/comet/models/source_basic_info.rb +5 -5
  115. data/lib/comet/models/source_config.rb +27 -11
  116. data/lib/comet/models/source_include_pattern.rb +84 -0
  117. data/lib/comet/models/source_statistics.rb +11 -3
  118. data/lib/comet/models/spanned_destination_location.rb +9 -3
  119. data/lib/comet/models/spanned_storage_extra_info.rb +3 -3
  120. data/lib/comet/models/sshconnection.rb +9 -9
  121. data/lib/comet/models/stat_result.rb +7 -7
  122. data/lib/comet/models/storage_free_space_info.rb +5 -5
  123. data/lib/comet/models/storage_vault_provider_policy.rb +4 -4
  124. data/lib/comet/models/stored_object.rb +96 -11
  125. data/lib/comet/models/streamable_event.rb +8 -6
  126. data/lib/comet/models/swift_destination_location.rb +16 -16
  127. data/lib/comet/models/test_response.rb +5 -5
  128. data/lib/comet/models/totp_regenerated_response.rb +8 -8
  129. data/lib/comet/models/u2fregister_request.rb +5 -5
  130. data/lib/comet/models/u2fregistered_key.rb +6 -6
  131. data/lib/comet/models/u2fregistration_challenge_response.rb +7 -7
  132. data/lib/comet/models/u2fsign_request.rb +6 -6
  133. data/lib/comet/models/u2fsign_response.rb +7 -7
  134. data/lib/comet/models/uninstall_config.rb +3 -3
  135. data/lib/comet/models/update_campaign_device_status.rb +4 -4
  136. data/lib/comet/models/update_campaign_options.rb +3 -3
  137. data/lib/comet/models/update_campaign_properties.rb +5 -5
  138. data/lib/comet/models/update_campaign_status.rb +5 -5
  139. data/lib/comet/models/update_campaign_status_device_entry.rb +6 -6
  140. data/lib/comet/models/user_custom_email_settings.rb +3 -3
  141. data/lib/comet/models/user_on_server.rb +5 -5
  142. data/lib/comet/models/user_policy.rb +22 -7
  143. data/lib/comet/models/user_profile_config.rb +19 -19
  144. data/lib/comet/models/user_profile_fragment.rb +4 -4
  145. data/lib/comet/models/vault_snapshot.rb +12 -6
  146. data/lib/comet/models/vsscomponent.rb +6 -6
  147. data/lib/comet/models/vsswriter_info.rb +4 -4
  148. data/lib/comet/models/wasabi_virtual_storage_role_settings.rb +6 -6
  149. data/lib/comet/models/web_interface_branding_properties.rb +7 -7
  150. data/lib/comet/models/webhook_option.rb +5 -5
  151. data/lib/comet/models/win_smbauth.rb +7 -7
  152. data/lib/comet/models/windows_code_sign_properties.rb +12 -12
  153. data/lib/comet_backup_ruby_sdk.rb +16 -1
  154. metadata +20 -5
@@ -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
@@ -17,6 +17,9 @@ module Comet
17
17
  # @type [Comet::BackupJobDetail] last_backup_job
18
18
  attr_accessor :last_backup_job
19
19
 
20
+ # @type [Comet::BackupJobDetail] last_successful_backup_job
21
+ attr_accessor :last_successful_backup_job
22
+
20
23
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
21
24
  attr_accessor :unknown_json_fields
22
25
 
@@ -26,25 +29,29 @@ module Comet
26
29
 
27
30
  def clear
28
31
  @last_backup_job = Comet::BackupJobDetail.new
32
+ @last_successful_backup_job = Comet::BackupJobDetail.new
29
33
  @unknown_json_fields = {}
30
34
  end
31
35
 
32
36
  # @param [String] json_string The complete object in JSON format
33
37
  def from_json(json_string)
34
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
38
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
35
39
 
36
40
  from_hash(JSON.parse(json_string))
37
41
  end
38
42
 
39
43
  # @param [Hash] obj The complete object as a Ruby hash
40
44
  def from_hash(obj)
41
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
45
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
42
46
 
43
47
  obj.each do |k, v|
44
48
  case k
45
49
  when 'LastBackupJob'
46
50
  @last_backup_job = Comet::BackupJobDetail.new
47
51
  @last_backup_job.from_hash(v)
52
+ when 'LastSuccessfulBackupJob'
53
+ @last_successful_backup_job = Comet::BackupJobDetail.new
54
+ @last_successful_backup_job.from_hash(v)
48
55
  else
49
56
  @unknown_json_fields[k] = v
50
57
  end
@@ -55,6 +62,7 @@ module Comet
55
62
  def to_hash
56
63
  ret = {}
57
64
  ret['LastBackupJob'] = @last_backup_job
65
+ ret['LastSuccessfulBackupJob'] = @last_successful_backup_job
58
66
  @unknown_json_fields.each do |k, v|
59
67
  ret[k] = v
60
68
  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
@@ -17,6 +17,9 @@ module Comet
17
17
  # @type [Array<Comet::DestinationLocation>] span_targets
18
18
  attr_accessor :span_targets
19
19
 
20
+ # @type [Boolean] span_use_static_slots
21
+ attr_accessor :span_use_static_slots
22
+
20
23
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
21
24
  attr_accessor :unknown_json_fields
22
25
 
@@ -31,14 +34,14 @@ module Comet
31
34
 
32
35
  # @param [String] json_string The complete object in JSON format
33
36
  def from_json(json_string)
34
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
37
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
35
38
 
36
39
  from_hash(JSON.parse(json_string))
37
40
  end
38
41
 
39
42
  # @param [Hash] obj The complete object as a Ruby hash
40
43
  def from_hash(obj)
41
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
44
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
42
45
 
43
46
  obj.each do |k, v|
44
47
  case k
@@ -52,6 +55,8 @@ module Comet
52
55
  @span_targets[i1].from_hash(v1)
53
56
  end
54
57
  end
58
+ when 'SpanUseStaticSlots'
59
+ @span_use_static_slots = v
55
60
  else
56
61
  @unknown_json_fields[k] = v
57
62
  end
@@ -62,6 +67,7 @@ module Comet
62
67
  def to_hash
63
68
  ret = {}
64
69
  ret['SpanTargets'] = @span_targets
70
+ ret['SpanUseStaticSlots'] = @span_use_static_slots
65
71
  @unknown_json_fields.each do |k, v|
66
72
  ret[k] = v
67
73
  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
@@ -54,41 +54,41 @@ module Comet
54
54
 
55
55
  # @param [String] json_string The complete object in JSON format
56
56
  def from_json(json_string)
57
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
57
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
58
58
 
59
59
  from_hash(JSON.parse(json_string))
60
60
  end
61
61
 
62
62
  # @param [Hash] obj The complete object as a Ruby hash
63
63
  def from_hash(obj)
64
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
64
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
65
65
 
66
66
  obj.each do |k, v|
67
67
  case k
68
68
  when 'SSHServer'
69
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
69
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
70
70
 
71
71
  @sshserver = v
72
72
  when 'SSHUsername'
73
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
73
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
74
74
 
75
75
  @sshusername = v
76
76
  when 'SSHAuthMode'
77
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
77
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
78
78
 
79
79
  @sshauth_mode = v
80
80
  when 'SSHPassword'
81
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
81
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
82
82
 
83
83
  @sshpassword = v
84
84
  when 'SSHPrivateKey'
85
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
85
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
86
86
 
87
87
  @sshprivate_key = v
88
88
  when 'SSHCustomAuth_UseKnownHostsFile'
89
89
  @sshcustom_auth__use_known_hosts_file = v
90
90
  when 'SSHCustomAuth_KnownHostsFile'
91
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
91
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
92
92
 
93
93
  @sshcustom_auth__known_hosts_file = v
94
94
  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
@@ -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 'Buckets'
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
  @buckets = v
61
61
  when 'Users'
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
  @users = v
65
65
  when 'Devices'
66
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
66
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
67
67
 
68
68
  @devices = v
69
69
  when 'Boosters'
70
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
70
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
71
71
 
72
72
  @boosters = v
73
73
  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
@@ -46,25 +46,25 @@ module Comet
46
46
 
47
47
  # @param [String] json_string The complete object in JSON format
48
48
  def from_json(json_string)
49
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
49
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
50
50
 
51
51
  from_hash(JSON.parse(json_string))
52
52
  end
53
53
 
54
54
  # @param [Hash] obj The complete object as a Ruby hash
55
55
  def from_hash(obj)
56
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
56
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
57
57
 
58
58
  obj.each do |k, v|
59
59
  case k
60
60
  when 'Unlimited'
61
61
  @unlimited = v
62
62
  when 'UsedPercent'
63
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
63
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
64
64
 
65
65
  @used_percent = v
66
66
  when 'AvailableBytes'
67
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
67
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
68
68
 
69
69
  @available_bytes = v
70
70
  when 'Spanned'
@@ -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
@@ -34,14 +34,14 @@ module Comet
34
34
 
35
35
  # @param [String] json_string The complete object in JSON format
36
36
  def from_json(json_string)
37
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
37
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
38
38
 
39
39
  from_hash(JSON.parse(json_string))
40
40
  end
41
41
 
42
42
  # @param [Hash] obj The complete object as a Ruby hash
43
43
  def from_hash(obj)
44
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
44
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
45
45
 
46
46
  obj.each do |k, v|
47
47
  case k
@@ -53,7 +53,7 @@ module Comet
53
53
  else
54
54
  @allowed_providers_when_restricted = Array.new(v.length)
55
55
  v.each_with_index do |v1, i1|
56
- raise TypeError "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric
56
+ raise TypeError, "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric
57
57
 
58
58
  @allowed_providers_when_restricted[i1] = v1
59
59
  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
@@ -29,6 +29,30 @@ module Comet
29
29
  # @type [Number] size
30
30
  attr_accessor :size
31
31
 
32
+ # @type [String] display_name
33
+ attr_accessor :display_name
34
+
35
+ # @type [String] item_class
36
+ attr_accessor :item_class
37
+
38
+ # @type [String] from
39
+ attr_accessor :from
40
+
41
+ # @type [String] to
42
+ attr_accessor :to
43
+
44
+ # @type [Number] received_date_time
45
+ attr_accessor :received_date_time
46
+
47
+ # @type [Boolean] has_attachments
48
+ attr_accessor :has_attachments
49
+
50
+ # @type [Number] start_time
51
+ attr_accessor :start_time
52
+
53
+ # @type [Number] end_time
54
+ attr_accessor :end_time
55
+
32
56
  # @type [Boolean] recursive_count_known
33
57
  attr_accessor :recursive_count_known
34
58
 
@@ -54,6 +78,13 @@ module Comet
54
78
  @type = ''
55
79
  @subtree = ''
56
80
  @size = 0
81
+ @display_name = ''
82
+ @item_class = ''
83
+ @from = ''
84
+ @to = ''
85
+ @received_date_time = 0
86
+ @start_time = 0
87
+ @end_time = 0
57
88
  @recursive_files = 0
58
89
  @recursive_bytes = 0
59
90
  @recursive_folders = 0
@@ -62,49 +93,79 @@ module Comet
62
93
 
63
94
  # @param [String] json_string The complete object in JSON format
64
95
  def from_json(json_string)
65
- raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
96
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
66
97
 
67
98
  from_hash(JSON.parse(json_string))
68
99
  end
69
100
 
70
101
  # @param [Hash] obj The complete object as a Ruby hash
71
102
  def from_hash(obj)
72
- raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
103
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
73
104
 
74
105
  obj.each do |k, v|
75
106
  case k
76
107
  when 'name'
77
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
108
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
78
109
 
79
110
  @name = v
80
111
  when 'mtime'
81
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
112
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
82
113
 
83
114
  @modify_time = v
84
115
  when 'type'
85
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
116
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
86
117
 
87
118
  @type = v
88
119
  when 'subtree'
89
- raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
120
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
90
121
 
91
122
  @subtree = v
92
123
  when 'size'
93
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
124
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
94
125
 
95
126
  @size = v
127
+ when 'dname'
128
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
129
+
130
+ @display_name = v
131
+ when 'itemClass'
132
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
133
+
134
+ @item_class = v
135
+ when 'from'
136
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
137
+
138
+ @from = v
139
+ when 'to'
140
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
141
+
142
+ @to = v
143
+ when 'rtime'
144
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
145
+
146
+ @received_date_time = v
147
+ when 'has_attachments'
148
+ @has_attachments = v
149
+ when 'stime'
150
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
151
+
152
+ @start_time = v
153
+ when 'etime'
154
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
155
+
156
+ @end_time = v
96
157
  when 'r'
97
158
  @recursive_count_known = v
98
159
  when 'f'
99
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
160
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
100
161
 
101
162
  @recursive_files = v
102
163
  when 'b'
103
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
164
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
104
165
 
105
166
  @recursive_bytes = v
106
167
  when 'd'
107
- raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
168
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
108
169
 
109
170
  @recursive_folders = v
110
171
  else
@@ -121,6 +182,30 @@ module Comet
121
182
  ret['type'] = @type
122
183
  ret['subtree'] = @subtree
123
184
  ret['size'] = @size
185
+ unless @display_name.nil?
186
+ ret['dname'] = @display_name
187
+ end
188
+ unless @item_class.nil?
189
+ ret['itemClass'] = @item_class
190
+ end
191
+ unless @from.nil?
192
+ ret['from'] = @from
193
+ end
194
+ unless @to.nil?
195
+ ret['to'] = @to
196
+ end
197
+ unless @received_date_time.nil?
198
+ ret['rtime'] = @received_date_time
199
+ end
200
+ unless @has_attachments.nil?
201
+ ret['has_attachments'] = @has_attachments
202
+ end
203
+ unless @start_time.nil?
204
+ ret['stime'] = @start_time
205
+ end
206
+ unless @end_time.nil?
207
+ ret['etime'] = @end_time
208
+ end
124
209
  unless @recursive_count_known.nil?
125
210
  ret['r'] = @recursive_count_known
126
211
  end