comet_backup_ruby_sdk 2.7.0 → 2.9.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 (103) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +17 -0
  3. data/Gemfile.lock +1 -1
  4. data/comet_backup_ruby_sdk.gemspec +1 -1
  5. data/lib/comet/definitions.rb +331 -188
  6. data/lib/comet/models/add_bucket_response_message.rb +1 -0
  7. data/lib/comet/models/admin_resource_response.rb +1 -0
  8. data/lib/comet/models/azure_destination_location.rb +3 -0
  9. data/lib/comet/models/b2destination_location.rb +7 -0
  10. data/lib/comet/models/backup_job_advanced_options.rb +9 -0
  11. data/lib/comet/models/backup_job_detail.rb +15 -0
  12. data/lib/comet/models/backup_job_progress.rb +4 -0
  13. data/lib/comet/models/backup_rule_config.rb +17 -0
  14. data/lib/comet/models/backup_rule_event_triggers.rb +3 -0
  15. data/lib/comet/models/branding_options.rb +2 -0
  16. data/lib/comet/models/browse_disk_drives_response.rb +1 -0
  17. data/lib/comet/models/browse_edbresponse.rb +1 -0
  18. data/lib/comet/models/browse_hvresponse.rb +1 -0
  19. data/lib/comet/models/browse_office_365list_virtual_accounts_response.rb +1 -0
  20. data/lib/comet/models/browse_office_365objects_response.rb +1 -0
  21. data/lib/comet/models/browse_sqlserver_response.rb +1 -0
  22. data/lib/comet/models/browse_vssresponse.rb +1 -0
  23. data/lib/comet/models/bucket_usage_info.rb +2 -0
  24. data/lib/comet/models/comet_apiresponse_message.rb +1 -0
  25. data/lib/comet/models/comet_destination_location.rb +1 -0
  26. data/lib/comet/models/constellation_check_report.rb +2 -0
  27. data/lib/comet/models/constellation_status_apiresponse.rb +1 -0
  28. data/lib/comet/models/content_measurement.rb +2 -0
  29. data/lib/comet/models/content_measurement_component.rb +12 -0
  30. data/lib/comet/models/create_group_policy_response.rb +1 -0
  31. data/lib/comet/models/default_email_report_policy.rb +4 -0
  32. data/lib/comet/models/destination_config.rb +47 -0
  33. data/lib/comet/models/destination_location.rb +36 -0
  34. data/lib/comet/models/destination_statistics.rb +2 -0
  35. data/lib/comet/models/device_config.rb +5 -0
  36. data/lib/comet/models/dispatcher_admin_sources_response.rb +1 -0
  37. data/lib/comet/models/dispatcher_stored_objects_response.rb +1 -0
  38. data/lib/comet/models/dispatcher_vault_snapshots_response.rb +1 -0
  39. data/lib/comet/models/dispatcher_windisk_snapshot_response.rb +1 -0
  40. data/lib/comet/models/email_options.rb +1 -0
  41. data/lib/comet/models/email_report_config.rb +3 -0
  42. data/lib/comet/models/email_report_generated_preview.rb +1 -0
  43. data/lib/comet/models/extra_file_exclusion.rb +4 -0
  44. data/lib/comet/models/file_option.rb +132 -0
  45. data/lib/comet/models/ftpdestination_location.rb +5 -0
  46. data/lib/comet/models/get_group_policy_response.rb +1 -0
  47. data/lib/comet/models/get_profile_and_hash_response_message.rb +4 -0
  48. data/lib/comet/models/get_profile_hash_response_message.rb +1 -0
  49. data/lib/comet/models/group_policy.rb +4 -0
  50. data/lib/comet/models/install_token_response.rb +1 -0
  51. data/lib/comet/models/job_entry.rb +2 -0
  52. data/lib/comet/models/live_user_connection.rb +11 -0
  53. data/lib/comet/models/local_destination_location.rb +5 -0
  54. data/lib/comet/models/mac_oscode_sign_properties.rb +1 -0
  55. data/lib/comet/models/mongo_dbconnection.rb +2 -0
  56. data/lib/comet/models/mssqllogin_args.rb +2 -0
  57. data/lib/comet/models/my_sqlconnection.rb +2 -0
  58. data/lib/comet/models/office_365custom_setting.rb +3 -0
  59. data/lib/comet/models/office_365custom_setting_v2.rb +9 -0
  60. data/lib/comet/models/office_365object_info.rb +1 -0
  61. data/lib/comet/models/organization.rb +85 -70
  62. data/lib/comet/models/request_storage_vault_response_message.rb +1 -0
  63. data/lib/comet/models/restore_job_advanced_options.rb +19 -0
  64. data/lib/comet/models/retention_policy.rb +1 -0
  65. data/lib/comet/models/retention_range.rb +1 -0
  66. data/lib/comet/models/s3destination_location.rb +1 -0
  67. data/lib/comet/models/search_result_file_info.rb +39 -17
  68. data/lib/comet/models/search_snapshots_response.rb +1 -0
  69. data/lib/comet/models/self_backup_export_options.rb +3 -0
  70. data/lib/comet/models/self_backup_target.rb +4 -0
  71. data/lib/comet/models/server_config_options.rb +28 -0
  72. data/lib/comet/models/server_meta_branding_properties.rb +4 -0
  73. data/lib/comet/models/server_meta_version_info.rb +8 -0
  74. data/lib/comet/models/session_key_regenerated_response.rb +1 -0
  75. data/lib/comet/models/session_options.rb +2 -0
  76. data/lib/comet/models/sftpdestination_location.rb +8 -0
  77. data/lib/comet/models/size_measurement.rb +3 -0
  78. data/lib/comet/models/source_basic_info.rb +1 -0
  79. data/lib/comet/models/source_config.rb +53 -0
  80. data/lib/comet/models/source_include_pattern.rb +5 -0
  81. data/lib/comet/models/spanned_destination_location.rb +11 -0
  82. data/lib/comet/models/sshconnection.rb +7 -0
  83. data/lib/comet/models/stored_object.rb +7 -0
  84. data/lib/comet/models/streamable_event.rb +42 -0
  85. data/lib/comet/models/swift_destination_location.rb +7 -0
  86. data/lib/comet/models/test_response.rb +1 -0
  87. data/lib/comet/models/time_span.rb +2 -0
  88. data/lib/comet/models/totp_regenerated_response.rb +1 -0
  89. data/lib/comet/models/u2fregistration_challenge_response.rb +1 -0
  90. data/lib/comet/models/uninstall_config.rb +4 -0
  91. data/lib/comet/models/update_campaign_options.rb +3 -0
  92. data/lib/comet/models/update_campaign_properties.rb +3 -0
  93. data/lib/comet/models/update_campaign_status.rb +3 -0
  94. data/lib/comet/models/user_on_server.rb +2 -0
  95. data/lib/comet/models/user_profile_config.rb +45 -0
  96. data/lib/comet/models/user_profile_fragment.rb +1 -0
  97. data/lib/comet/models/vmdksnapshot_view_options.rb +4 -0
  98. data/lib/comet/models/web_authn_registration_challenge_response.rb +1 -0
  99. data/lib/comet/models/web_interface_branding_properties.rb +2 -0
  100. data/lib/comet/models/webhook_option.rb +35 -16
  101. data/lib/comet/models/win_smbauth.rb +6 -0
  102. data/lib/comet_backup_ruby_sdk.rb +1 -0
  103. metadata +3 -2
@@ -10,11 +10,16 @@ require 'json'
10
10
  module Comet
11
11
 
12
12
  # DestinationLocation is a typed class wrapper around the underlying Comet Server API data structure.
13
+ # DestinationLocation describes the underlying storage location for a Storage Vault.
14
+ # Prior to Comet 17.3.3 this was an embedded part of the DestinationConfig type.
15
+ # This type is available in Comet 17.3.3 and later.
13
16
  class DestinationLocation
14
17
 
18
+ # One of the DESTINATIONTYPE_ constants
15
19
  # @type [Number] destination_type
16
20
  attr_accessor :destination_type
17
21
 
22
+ # The URL for the target Comet Server Storage Role, including http/https and trailing slash
18
23
  # @type [String] comet_server
19
24
  attr_accessor :comet_server
20
25
 
@@ -45,6 +50,7 @@ module Comet
45
50
  # @type [String] s3custom_region
46
51
  attr_accessor :s3custom_region
47
52
 
53
+ # If true, use legacy v2 signing. If false (default), use modern v4 signing
48
54
  # @type [Boolean] s3uses_v2signing
49
55
  attr_accessor :s3uses_v2signing
50
56
 
@@ -60,21 +66,29 @@ module Comet
60
66
  # @type [String] sftpusername
61
67
  attr_accessor :sftpusername
62
68
 
69
+ # The directory on the SFTP server in which data is stored.
63
70
  # @type [String] sftpremote_path
64
71
  attr_accessor :sftpremote_path
65
72
 
73
+ # One of the DESTINATION_SFTP_AUTHMODE_ constants
66
74
  # @type [Number] sftpauth_mode
67
75
  attr_accessor :sftpauth_mode
68
76
 
77
+ # For use with DESTINATION_SFTP_AUTHMODE_PASSWORD only: the SSH password to connect with
69
78
  # @type [String] sftppassword
70
79
  attr_accessor :sftppassword
71
80
 
81
+ # For use with DESTINATION_SFTP_AUTHMODE_PRIVATEKEY only: the SSH private key to connect with, in
82
+ # OpenSSH format.
72
83
  # @type [String] sftpprivate_key
73
84
  attr_accessor :sftpprivate_key
74
85
 
86
+ # If true, then the SFTPCustomAuth_KnownHostsFile will be used to verify the remote SSH server's
87
+ # host key, using Trust On First Use (TOFU).
75
88
  # @type [Boolean] sftpcustom_auth__use_known_hosts_file
76
89
  attr_accessor :sftpcustom_auth__use_known_hosts_file
77
90
 
91
+ # If SFTPCustomAuth_UseKnownHostFile is true, the path to the SSH known_hosts file.
78
92
  # @type [String] sftpcustom_auth__known_hosts_file
79
93
  attr_accessor :sftpcustom_auth__known_hosts_file
80
94
 
@@ -87,18 +101,23 @@ module Comet
87
101
  # @type [String] ftppassword
88
102
  attr_accessor :ftppassword
89
103
 
104
+ # If true, store data in the default home directory given by the FTP server. If false, store data in
105
+ # the FTPCustomBaseDirectory path.
90
106
  # @type [Boolean] ftpbase_use_home_directory
91
107
  attr_accessor :ftpbase_use_home_directory
92
108
 
109
+ # If FTPBaseUseHomeDirectory is false, this field controls the path where data is stored.
93
110
  # @type [String] ftpcustom_base_directory
94
111
  attr_accessor :ftpcustom_base_directory
95
112
 
113
+ # Control whether this is plaintext FTP or secure FTPS by using one of the FTPS_MODE_ constants.
96
114
  # @type [Number] ftpsmode
97
115
  attr_accessor :ftpsmode
98
116
 
99
117
  # @type [Number] ftpport
100
118
  attr_accessor :ftpport
101
119
 
120
+ # If set to zero, uses a system default value that is not unlimited.
102
121
  # @type [Number] ftpmax_connections
103
122
  attr_accessor :ftpmax_connections
104
123
 
@@ -114,6 +133,7 @@ module Comet
114
133
  # @type [String] azbcontainer
115
134
  attr_accessor :azbcontainer
116
135
 
136
+ # The base URL for the Azure Blob Storage service. Leave blank to use the global default URL.
117
137
  # @type [String] azbrealm
118
138
  attr_accessor :azbrealm
119
139
 
@@ -123,12 +143,17 @@ module Comet
123
143
  # @type [String] localcopy_path
124
144
  attr_accessor :localcopy_path
125
145
 
146
+ # If logging in to a Windows network share (SMB/CIFS) is required, enter the username here.
126
147
  # @type [String] localcopy_win_smbusername
127
148
  attr_accessor :localcopy_win_smbusername
128
149
 
150
+ # If logging in to a Windows network share (SMB/CIFS) is required, enter the password here. The
151
+ # password may be hashed as per the LocalcopyWinSMBPasswordFormat field.
129
152
  # @type [String] localcopy_win_smbpassword
130
153
  attr_accessor :localcopy_win_smbpassword
131
154
 
155
+ # One of the PASSWORD_FORMAT_ constants. It controls the hash format of the LocalcopyWinSMBPassword
156
+ # field.
132
157
  # @type [Number] localcopy_win_smbpassword_format
133
158
  attr_accessor :localcopy_win_smbpassword_format
134
159
 
@@ -141,9 +166,20 @@ module Comet
141
166
  # @type [Comet::StorjDestinationLocation] storj
142
167
  attr_accessor :storj
143
168
 
169
+ # A list of underlying destinations, that will be combined and presented as one.
144
170
  # @type [Array<Comet::DestinationLocation>] span_targets
145
171
  attr_accessor :span_targets
146
172
 
173
+ # If true, this Spanned destination will use a consistent hashing scheme
174
+ # to immediately find specific files on exactly one of the target destinations.
175
+ # In the Static Slots mode, the span targets cannot be moved or merged, and
176
+ # the files must always remain in their original location.
177
+ #
178
+ # If false, the Spanned destination system will search all targets to find
179
+ # the requested file. This is slightly slower, but allows you to freely merge,
180
+ # split, and reorder the underlying destination locations.
181
+ #
182
+ # The default option is false.
147
183
  # @type [Boolean] span_use_static_slots
148
184
  attr_accessor :span_use_static_slots
149
185
 
@@ -21,9 +21,11 @@ module Comet
21
21
  # @type [String] last_successful_deep_verify__guid
22
22
  attr_accessor :last_successful_deep_verify__guid
23
23
 
24
+ # Unix timestamp in seconds
24
25
  # @type [Number] last_successful_deep_verify__start_time
25
26
  attr_accessor :last_successful_deep_verify__start_time
26
27
 
28
+ # Unix timestamp in seconds
27
29
  # @type [Number] last_successful_deep_verify__end_time
28
30
  attr_accessor :last_successful_deep_verify__end_time
29
31
 
@@ -15,15 +15,20 @@ module Comet
15
15
  # @type [String] friendly_name
16
16
  attr_accessor :friendly_name
17
17
 
18
+ # Unix timestamp in seconds
18
19
  # @type [Number] registration_time
19
20
  attr_accessor :registration_time
20
21
 
22
+ # The operating system that the device uses.
21
23
  # @type [Comet::OSInfo] platform_version
22
24
  attr_accessor :platform_version
23
25
 
26
+ # Minimal information about the device's private Protected Items, so that other devices can safely
27
+ # run retention passes on a shared Storage Vault.
24
28
  # @type [Hash{String => Comet::SourceBasicInfo}] sources
25
29
  attr_accessor :sources
26
30
 
31
+ # The device's reported timezone in IANA format.
27
32
  # @type [String] device_timezone
28
33
  attr_accessor :device_timezone
29
34
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # DispatcherAdminSourcesResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class DispatcherAdminSourcesResponse
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # DispatcherStoredObjectsResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class DispatcherStoredObjectsResponse
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # DispatcherVaultSnapshotsResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class DispatcherVaultSnapshotsResponse
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # DispatcherWindiskSnapshotResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class DispatcherWindiskSnapshotResponse
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -18,6 +18,7 @@ module Comet
18
18
  # @type [String] from_name
19
19
  attr_accessor :from_name
20
20
 
21
+ # One of the EMAIL_DELIVERY_ constants
21
22
  # @type [String] mode
22
23
  attr_accessor :mode
23
24
 
@@ -12,12 +12,15 @@ module Comet
12
12
  # EmailReportConfig is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class EmailReportConfig
14
14
 
15
+ # One of the EMAILREPORTTYPE_ constants
15
16
  # @type [Number] report_type
16
17
  attr_accessor :report_type
17
18
 
19
+ # Used as a list of scheduled times to send
18
20
  # @type [Array<Comet::ScheduleConfig>] summary_frequency
19
21
  attr_accessor :summary_frequency
20
22
 
23
+ # Used to the determine the time bounds of a report
21
24
  # @type [Comet::TimeSpan] time_span
22
25
  attr_accessor :time_span
23
26
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # EmailReportGeneratedPreview is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class EmailReportGeneratedPreview
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -12,12 +12,16 @@ module Comet
12
12
  # ExtraFileExclusion is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class ExtraFileExclusion
14
14
 
15
+ # The glob or regular expression to exclude from backup jobs
15
16
  # @type [String] exclude
16
17
  attr_accessor :exclude
17
18
 
19
+ # Choose whether the 'Exclude' parameter will be treated as a regular expression (true) or a glob
20
+ # (false)
18
21
  # @type [Boolean] regex
19
22
  attr_accessor :regex
20
23
 
24
+ # Either OS_ANY or one of the OS_ONLY constants
21
25
  # @type [Number] restrict_os
22
26
  attr_accessor :restrict_os
23
27
 
@@ -0,0 +1,132 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2020-2023 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
+ # FileOption is a typed class wrapper around the underlying Comet Server API data structure.
13
+ # FileOption defines the configuration for Comet Server to log live events to a file. See the SEVT_
14
+ # constants for more information.
15
+ # This type is available in Comet 23.3.7 and later.
16
+ class FileOption
17
+
18
+ # The prefix for the log filename. It will be stored in the same file location as the Comet Server
19
+ # log files
20
+ # @type [String] filename
21
+ attr_accessor :filename
22
+
23
+ # Configure a subset of allowed event types (see SEVT_ constants). If the array is empty, all events
24
+ # will be sent
25
+ # @type [Array<Number>] allow_event_types
26
+ attr_accessor :allow_event_types
27
+
28
+ # One of the STREAM_LEVEL_ constants. This controls how much data is logged into the file
29
+ # @type [String] level
30
+ attr_accessor :level
31
+
32
+ # Enables pruning of log files
33
+ # @type [Boolean] pruning_enabled
34
+ attr_accessor :pruning_enabled
35
+
36
+ # Limit in days to keep log files when PruningEnabled is set to true. If not set or 0, uses server's
37
+ # PruneLogsAfterDays
38
+ # @type [Number] pruning_limit
39
+ attr_accessor :pruning_limit
40
+
41
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
42
+ attr_accessor :unknown_json_fields
43
+
44
+ def initialize
45
+ clear
46
+ end
47
+
48
+ def clear
49
+ @filename = ''
50
+ @allow_event_types = []
51
+ @level = ''
52
+ @pruning_limit = 0
53
+ @unknown_json_fields = {}
54
+ end
55
+
56
+ # @param [String] json_string The complete object in JSON format
57
+ def from_json(json_string)
58
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
59
+
60
+ from_hash(JSON.parse(json_string))
61
+ end
62
+
63
+ # @param [Hash] obj The complete object as a Ruby hash
64
+ def from_hash(obj)
65
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
66
+
67
+ obj.each do |k, v|
68
+ case k
69
+ when 'Filename'
70
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
71
+
72
+ @filename = v
73
+ when 'AllowEventTypes'
74
+ if v.nil?
75
+ @allow_event_types = []
76
+ else
77
+ @allow_event_types = Array.new(v.length)
78
+ v.each_with_index do |v1, i1|
79
+ raise TypeError, "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric
80
+
81
+ @allow_event_types[i1] = v1
82
+ end
83
+ end
84
+ when 'Level'
85
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
86
+
87
+ @level = v
88
+ when 'PruningEnabled'
89
+ @pruning_enabled = v
90
+ when 'PruningLimit'
91
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
92
+
93
+ @pruning_limit = v
94
+ else
95
+ @unknown_json_fields[k] = v
96
+ end
97
+ end
98
+ end
99
+
100
+ # @return [Hash] The complete object as a Ruby hash
101
+ def to_hash
102
+ ret = {}
103
+ ret['Filename'] = @filename
104
+ unless @allow_event_types.nil?
105
+ ret['AllowEventTypes'] = @allow_event_types
106
+ end
107
+ unless @level.nil?
108
+ ret['Level'] = @level
109
+ end
110
+ unless @pruning_enabled.nil?
111
+ ret['PruningEnabled'] = @pruning_enabled
112
+ end
113
+ unless @pruning_limit.nil?
114
+ ret['PruningLimit'] = @pruning_limit
115
+ end
116
+ @unknown_json_fields.each do |k, v|
117
+ ret[k] = v
118
+ end
119
+ ret
120
+ end
121
+
122
+ # @return [Hash] The complete object as a Ruby hash
123
+ def to_h
124
+ to_hash
125
+ end
126
+
127
+ # @return [String] The complete object as a JSON string
128
+ def to_json(options = {})
129
+ to_hash.to_json(options)
130
+ end
131
+ end
132
+ end
@@ -21,18 +21,23 @@ module Comet
21
21
  # @type [String] ftppassword
22
22
  attr_accessor :ftppassword
23
23
 
24
+ # If true, store data in the default home directory given by the FTP server. If false, store data in
25
+ # the FTPCustomBaseDirectory path.
24
26
  # @type [Boolean] ftpbase_use_home_directory
25
27
  attr_accessor :ftpbase_use_home_directory
26
28
 
29
+ # If FTPBaseUseHomeDirectory is false, this field controls the path where data is stored.
27
30
  # @type [String] ftpcustom_base_directory
28
31
  attr_accessor :ftpcustom_base_directory
29
32
 
33
+ # Control whether this is plaintext FTP or secure FTPS by using one of the FTPS_MODE_ constants.
30
34
  # @type [Number] ftpsmode
31
35
  attr_accessor :ftpsmode
32
36
 
33
37
  # @type [Number] ftpport
34
38
  attr_accessor :ftpport
35
39
 
40
+ # If set to zero, uses a system default value that is not unlimited.
36
41
  # @type [Number] ftpmax_connections
37
42
  attr_accessor :ftpmax_connections
38
43
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # GetGroupPolicyResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class GetGroupPolicyResponse
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -12,12 +12,16 @@ module Comet
12
12
  # GetProfileAndHashResponseMessage is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class GetProfileAndHashResponseMessage
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
18
19
  # @type [String] message
19
20
  attr_accessor :message
20
21
 
22
+ # A hash identifier for the current state of the user's profile. If you supply this in the
23
+ # AdminSetUserProfileHash API, the server can safely reject your change if another change has
24
+ # happened concurrently. This allows you to retry the request.
21
25
  # @type [String] profile_hash
22
26
  attr_accessor :profile_hash
23
27
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # GetProfileHashResponseMessage is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class GetProfileHashResponseMessage
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -21,12 +21,16 @@ module Comet
21
21
  # @type [Comet::UserPolicy] policy
22
22
  attr_accessor :policy
23
23
 
24
+ # DefaultUserPolicy marks that this UserPolicy should be applied to all new users. The Comet Server
25
+ # will ensure that only one policy can be set as default.
24
26
  # @type [Boolean] default_user_policy
25
27
  attr_accessor :default_user_policy
26
28
 
29
+ # Unix timestamp in seconds. May be zero for Policies created prior to Comet 23.3.3.
27
30
  # @type [Number] created_date
28
31
  attr_accessor :created_date
29
32
 
33
+ # Unix timestamp in seconds. May be zero for Policies created prior to Comet 23.3.3.
30
34
  # @type [Number] modified_date
31
35
  attr_accessor :modified_date
32
36
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # InstallTokenResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class InstallTokenResponse
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -13,9 +13,11 @@ module Comet
13
13
  # JobEntry is a single entry within a job report.
14
14
  class JobEntry
15
15
 
16
+ # Unix timestamp in seconds
16
17
  # @type [Number] time
17
18
  attr_accessor :time
18
19
 
20
+ # One of the SEVERITY_ constants.
19
21
  # @type [String] severity
20
22
  attr_accessor :severity
21
23
 
@@ -18,24 +18,35 @@ module Comet
18
18
  # @type [String] device_id
19
19
  attr_accessor :device_id
20
20
 
21
+ # The Comet Backup software version that this live-connected device reports that it is running. It
22
+ # takes the format "MAJOR.MINOR.PATCH", such as "23.2.0". See the APPLICATION_VERSION constant for
23
+ # more information.
21
24
  # @type [String] reported_version
22
25
  attr_accessor :reported_version
23
26
 
27
+ # The operating system of the device. It is one of the PLATFORM_ constants; then a forwardslash (/);
28
+ # then the device's GOARCH.
24
29
  # @type [String] reported_platform
25
30
  attr_accessor :reported_platform
26
31
 
32
+ # The operating system of the device, in extended detail.
27
33
  # @type [Comet::OSInfo] reported_platform_version
28
34
  attr_accessor :reported_platform_version
29
35
 
36
+ # The reported timezone of the device, in IANA format.
30
37
  # @type [String] device_time_zone
31
38
  attr_accessor :device_time_zone
32
39
 
40
+ # The live-connected device's remote IP address, as seen from the Comet Server.
33
41
  # @type [String] ipaddress
34
42
  attr_accessor :ipaddress
35
43
 
44
+ # Unix timestamp, in seconds.
36
45
  # @type [Number] connection_time
37
46
  attr_accessor :connection_time
38
47
 
48
+ # The current state of the "Allow administrator to view my files" client-side option. If this option
49
+ # is refused, some live-connected actions will be refused by the device.
39
50
  # @type [Boolean] allows_filenames
40
51
  attr_accessor :allows_filenames
41
52
 
@@ -15,12 +15,17 @@ module Comet
15
15
  # @type [String] localcopy_path
16
16
  attr_accessor :localcopy_path
17
17
 
18
+ # If logging in to a Windows network share (SMB/CIFS) is required, enter the username here.
18
19
  # @type [String] localcopy_win_smbusername
19
20
  attr_accessor :localcopy_win_smbusername
20
21
 
22
+ # If logging in to a Windows network share (SMB/CIFS) is required, enter the password here. The
23
+ # password may be hashed as per the LocalcopyWinSMBPasswordFormat field.
21
24
  # @type [String] localcopy_win_smbpassword
22
25
  attr_accessor :localcopy_win_smbpassword
23
26
 
27
+ # One of the PASSWORD_FORMAT_ constants. It controls the hash format of the LocalcopyWinSMBPassword
28
+ # field.
24
29
  # @type [Number] localcopy_win_smbpassword_format
25
30
  attr_accessor :localcopy_win_smbpassword_format
26
31
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # MacOSCodeSignProperties is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class MacOSCodeSignProperties
14
14
 
15
+ # One of the MACOSCODESIGN_LEVEL_ constants
15
16
  # @type [Number] level
16
17
  attr_accessor :level
17
18
 
@@ -27,6 +27,8 @@ module Comet
27
27
  # @type [String] authentication_db
28
28
  attr_accessor :authentication_db
29
29
 
30
+ # Prior to Comet 22.12.3, must be a filesystem path to `mongo` (n.b. not `mongosh`). In Comet >=
31
+ # 22.12.3, not used.
30
32
  # @type [String] mongo_shell_path
31
33
  # @deprecated This member has been deprecated since Comet version 22.12.3
32
34
  attr_accessor :mongo_shell_path
@@ -27,6 +27,8 @@ module Comet
27
27
  # @type [Boolean] method_is_oledb_32bit
28
28
  attr_accessor :method_is_oledb_32bit
29
29
 
30
+ # If this MSSQLLoginArgs structure is used for a restore job (RestoreJobAdvancedOptions) using
31
+ # RESTORETYPE_MSSQL, then, this field controls the RECOVERY / NO RECOVERY option state.
30
32
  # @type [Boolean] restore_no_recovery
31
33
  attr_accessor :restore_no_recovery
32
34
 
@@ -18,9 +18,11 @@ module Comet
18
18
  # @type [String] port
19
19
  attr_accessor :port
20
20
 
21
+ # Optional
21
22
  # @type [String] username
22
23
  attr_accessor :username
23
24
 
25
+ # Optional
24
26
  # @type [String] password
25
27
  attr_accessor :password
26
28
 
@@ -10,6 +10,9 @@ require 'json'
10
10
  module Comet
11
11
 
12
12
  # Office365CustomSetting is a typed class wrapper around the underlying Comet Server API data structure.
13
+ # Office365CustomSetting is used in the EngineProps for an Office 365 Protected Item (see
14
+ # ENGINE_BUILTIN_MSOFFICE).
15
+ # If present, it will be automatically converted to the replacement Office365CustomSettingV2 type.
13
16
  # @deprecated This type has been deprecated since Comet version 21.9.xx
14
17
  class Office365CustomSetting
15
18
 
@@ -10,14 +10,23 @@ require 'json'
10
10
  module Comet
11
11
 
12
12
  # Office365CustomSettingV2 is a typed class wrapper around the underlying Comet Server API data structure.
13
+ # Office365CustomSettingV2 is used in the EngineProps for an Office 365 Protected Item (see
14
+ # ENGINE_BUILTIN_MSOFFICE).
15
+ # This type is available in Comet 21.9.xx and later.
13
16
  class Office365CustomSettingV2
14
17
 
18
+ # If true, then backup the entire Office 365 Tenant except the selected members. If false, backup
19
+ # the selected members only.
15
20
  # @type [Boolean] organization
16
21
  attr_accessor :organization
17
22
 
23
+ # Key can be the ID of user, group or SharePoint
24
+ # Value is a bitset of the SERVICE_ constants, to select which services to back up for this member.
18
25
  # @type [Hash{String => Number}] backup_options
19
26
  attr_accessor :backup_options
20
27
 
28
+ # Key must be a group ID
29
+ # Value is a bitset of the SERVICE_ constants, to select which services to back up for this member.
21
30
  # @type [Hash{String => Number}] member_backup_options
22
31
  attr_accessor :member_backup_options
23
32
 
@@ -21,6 +21,7 @@ module Comet
21
21
  # @type [String] type
22
22
  attr_accessor :type
23
23
 
24
+ # May be an email address or a SharePoint site URL
24
25
  # @type [String] value
25
26
  attr_accessor :value
26
27