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
@@ -12,12 +12,15 @@ module Comet
12
12
  # SizeMeasurement is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class SizeMeasurement
14
14
 
15
+ # Bytes
15
16
  # @type [Number] size
16
17
  attr_accessor :size
17
18
 
19
+ # Unix timestamp in seconds
18
20
  # @type [Number] measure_started
19
21
  attr_accessor :measure_started
20
22
 
23
+ # Unix timestamp in seconds
21
24
  # @type [Number] measure_completed
22
25
  attr_accessor :measure_completed
23
26
 
@@ -18,6 +18,7 @@ module Comet
18
18
  # @type [Number] o365account_count
19
19
  attr_accessor :o365account_count
20
20
 
21
+ # Bytes
21
22
  # @type [Number] size
22
23
  attr_accessor :size
23
24
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # SourceConfig is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class SourceConfig
14
14
 
15
+ # One of the ENGINE_BUILTIN_ constants
15
16
  # @type [String] engine
16
17
  attr_accessor :engine
17
18
 
@@ -21,24 +22,76 @@ module Comet
21
22
  # @type [String] owner_device
22
23
  attr_accessor :owner_device
23
24
 
25
+ # Unix timestamp in seconds
24
26
  # @type [Number] create_time
25
27
  attr_accessor :create_time
26
28
 
29
+ # Unix timestamp in seconds
27
30
  # @type [Number] modify_time
28
31
  attr_accessor :modify_time
29
32
 
33
+ # Custom commands to run before the job
30
34
  # @type [Array<String>] pre_exec
31
35
  attr_accessor :pre_exec
32
36
 
37
+ # Custom commands to run after taking a disk snapshot
33
38
  # @type [Array<String>] thaw_exec
34
39
  attr_accessor :thaw_exec
35
40
 
41
+ # Custom commands to run after the job
36
42
  # @type [Array<String>] post_exec
37
43
  attr_accessor :post_exec
38
44
 
45
+ # Configuration for the selected Protected Item type. Each "Engine" supports
46
+ # different configuration options for the EngineProps values.
47
+ #
48
+ # For engine1/file, Comet understands the following EngineProp keys:
49
+ #
50
+ # - Any key starting with INCLUDE: A path that is included
51
+ # - Any key starting with EXCLUDE: An exclusion (glob format)
52
+ # - Any key starting with REXCLUDE: An exclusion (regular expression format)
53
+ # - Any key starting with PINCLUDE: A SourceIncludePattern type encoded in JSON format, describing
54
+ # an advanced inclusion in glob format
55
+ # - Any key starting with RINCLUDE: A SourceIncludePattern type encoded in JSON format, describing
56
+ # an advanced inclusion in regular expression format
57
+ # - Any key starting with SMBAUTH: A set of Windows network share credentials in WinSMBAuth JSON
58
+ # format
59
+ # - USE_WIN_VSS: If present, the 'Take filesystem snapshot' checkbox is checked
60
+ # - CONFIRM_EFS: If present, the 'Dismiss EFS warning' checkbox is checked
61
+ # - RESCAN_UNCHANGED: If present, the 'Rescan unchanged files' checkbox is checked
62
+ #
63
+ # For engine1/mssql, Comet understands the following EngineProp keys:
64
+ #
65
+ # - ALL_DATABASES: If present, include all databases with specified exclusions. If not present, only
66
+ # back up the specified inclusions
67
+ # - Any key starting with DATABASE- : A database that is included. Only valid if ALL_DATABASES is
68
+ # not present.
69
+ # - Any key starting with EXCEPT-DATABASE- : A database that is excluded. Only valid if
70
+ # ALL_DATABASES is present.
71
+ # - INSTANCE: The Microsoft SQL Server instance name
72
+ # - USERNAME: The username to connect to Microsoft SQL Server
73
+ # - PASSWORD: The password to connect to Microsoft SQL Server
74
+ # - AUTHMODE: Either "windows" or "native" (corresponding to the declared MSSQL_AUTH_WINDOWS and
75
+ # MSSQL_AUTH_NATIVE constant values). If not present, use native authentication if the USERNAME
76
+ # and/or PASSWORD fields are filled in, use windows authentication if they are blank
77
+ # - METHOD: Either "OLEDB_NATIVE" or "OLEDB_32" (corresponding to the declared
78
+ # MSSQL_METHOD_OLEDB_NATIVE and MSSQL_METHOD_OLEDB_32 constant values). If not present, defaults to
79
+ # Native
80
+ # - DIFFBASE: If present, take a "Full (base image)" backup job. Otherwise, take a "Full (copy
81
+ # only)" backup job.
82
+ # - DIFFERENTIAL: If present, take a "Differential increment" backup job. Otherwise, take a "Full
83
+ # (copy only)" backup job.
84
+ # - LOGTRUNC: If present, take a "Log (truncating)" backup job. Otherwise, take a "Full (copy only)"
85
+ # backup job.
86
+ # - LOGNOTRUNC: If present, take a "Log (no truncation)" backup job. Otherwise, take a "Full (copy
87
+ # only)" backup job.
88
+ #
39
89
  # @type [Hash{String => String}] engine_props
40
90
  attr_accessor :engine_props
41
91
 
92
+ # By default, backup jobs from this Protected Item will be subject
93
+ # to the overall retention policy for the Storage Vault. You can override the policy
94
+ # for specific Storage Vaults by putting their destination ID as a key here.
42
95
  # @type [Hash{String => Comet::RetentionPolicy}] override_destination_retention
43
96
  attr_accessor :override_destination_retention
44
97
 
@@ -10,11 +10,16 @@ require 'json'
10
10
  module Comet
11
11
 
12
12
  # SourceIncludePattern is a typed class wrapper around the underlying Comet Server API data structure.
13
+ # SourceIncludePattern is used for pattern inclusions for File and Folder Protected Items
14
+ # (ENGINE_BUILTIN_FILE).
15
+ # It should be marshalled as JSON and then stored in the PINCLUDE / RINCLUDE EngineProp keys.
13
16
  class SourceIncludePattern
14
17
 
18
+ # The filesystem path to search within, for matches
15
19
  # @type [String] top_directory
16
20
  attr_accessor :top_directory
17
21
 
22
+ # The pattern (glob or regex format) to match
18
23
  # @type [String] value
19
24
  attr_accessor :value
20
25
 
@@ -12,9 +12,20 @@ module Comet
12
12
  # SpannedDestinationLocation is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class SpannedDestinationLocation
14
14
 
15
+ # A list of underlying destinations, that will be combined and presented as one.
15
16
  # @type [Array<Comet::DestinationLocation>] span_targets
16
17
  attr_accessor :span_targets
17
18
 
19
+ # If true, this Spanned destination will use a consistent hashing scheme
20
+ # to immediately find specific files on exactly one of the target destinations.
21
+ # In the Static Slots mode, the span targets cannot be moved or merged, and
22
+ # the files must always remain in their original location.
23
+ #
24
+ # If false, the Spanned destination system will search all targets to find
25
+ # the requested file. This is slightly slower, but allows you to freely merge,
26
+ # split, and reorder the underlying destination locations.
27
+ #
28
+ # The default option is false.
18
29
  # @type [Boolean] span_use_static_slots
19
30
  attr_accessor :span_use_static_slots
20
31
 
@@ -18,18 +18,25 @@ module Comet
18
18
  # @type [String] sshusername
19
19
  attr_accessor :sshusername
20
20
 
21
+ # One of the SSHCONNECTION_AUTHMODE_ constants
21
22
  # @type [Number] sshauth_mode
22
23
  attr_accessor :sshauth_mode
23
24
 
25
+ # For use with SSHCONNECTION_AUTHMODE_PASSWORD only: the SSH password to connect with
24
26
  # @type [String] sshpassword
25
27
  attr_accessor :sshpassword
26
28
 
29
+ # For use with SSHCONNECTION_AUTHMODE_PRIVATEKEY only: the SSH private key to connect with, in
30
+ # OpenSSH format.
27
31
  # @type [String] sshprivate_key
28
32
  attr_accessor :sshprivate_key
29
33
 
34
+ # If true, then the SSHCustomAuth_KnownHostsFile will be used to verify the remote SSH server's host
35
+ # key, using Trust On First Use (TOFU).
30
36
  # @type [Boolean] sshcustom_auth__use_known_hosts_file
31
37
  attr_accessor :sshcustom_auth__use_known_hosts_file
32
38
 
39
+ # If SSHCustomAuth_UseKnownHostsFile is true, the path to the SSH known_hosts file.
33
40
  # @type [String] sshcustom_auth__known_hosts_file
34
41
  attr_accessor :sshcustom_auth__known_hosts_file
35
42
 
@@ -12,9 +12,11 @@ module Comet
12
12
  # StoredObject is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class StoredObject
14
14
 
15
+ # The name of the stored object. It is unique within this directory tree.
15
16
  # @type [String] name
16
17
  attr_accessor :name
17
18
 
19
+ # Unix timestamp in seconds
18
20
  # @type [Number] modify_time
19
21
  attr_accessor :modify_time
20
22
 
@@ -22,9 +24,12 @@ module Comet
22
24
  # @type [String] type
23
25
  attr_accessor :type
24
26
 
27
+ # If this StoredObject represents a directory, this value can be used to recursively select the
28
+ # directory contents.
25
29
  # @type [String] subtree
26
30
  attr_accessor :subtree
27
31
 
32
+ # Bytes
28
33
  # @type [Number] size
29
34
  attr_accessor :size
30
35
 
@@ -46,9 +51,11 @@ module Comet
46
51
  # @type [Boolean] has_attachments
47
52
  attr_accessor :has_attachments
48
53
 
54
+ # Unix timestamp in seconds
49
55
  # @type [Number] start_time
50
56
  attr_accessor :start_time
51
57
 
58
+ # Unix timestamp in seconds
52
59
  # @type [Number] end_time
53
60
  attr_accessor :end_time
54
61
 
@@ -12,12 +12,24 @@ module Comet
12
12
  # StreamableEvent is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class StreamableEvent
14
14
 
15
+ # @type [String] actor
16
+ attr_accessor :actor
17
+
15
18
  # @type [String] owner_organization_id
16
19
  attr_accessor :owner_organization_id
17
20
 
21
+ # @type [String] resource_id
22
+ attr_accessor :resource_id
23
+
18
24
  # @type [Number] type
19
25
  attr_accessor :type
20
26
 
27
+ # @type [Number] timestamp
28
+ attr_accessor :timestamp
29
+
30
+ # @type [String] type_string
31
+ attr_accessor :type_string
32
+
21
33
  # @type [Object] data
22
34
  attr_accessor :data
23
35
 
@@ -29,8 +41,12 @@ module Comet
29
41
  end
30
42
 
31
43
  def clear
44
+ @actor = ''
32
45
  @owner_organization_id = ''
46
+ @resource_id = ''
33
47
  @type = 0
48
+ @timestamp = 0
49
+ @type_string = ''
34
50
  @unknown_json_fields = {}
35
51
  end
36
52
 
@@ -47,14 +63,30 @@ module Comet
47
63
 
48
64
  obj.each do |k, v|
49
65
  case k
66
+ when 'Actor'
67
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
68
+
69
+ @actor = v
50
70
  when 'OwnerOrganizationID'
51
71
  raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
52
72
 
53
73
  @owner_organization_id = v
74
+ when 'ResourceID'
75
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
76
+
77
+ @resource_id = v
54
78
  when 'Type'
55
79
  raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
56
80
 
57
81
  @type = v
82
+ when 'Timestamp'
83
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
84
+
85
+ @timestamp = v
86
+ when 'TypeString'
87
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
88
+
89
+ @type_string = v
58
90
  when 'Data'
59
91
  @data = v
60
92
  else
@@ -66,8 +98,18 @@ module Comet
66
98
  # @return [Hash] The complete object as a Ruby hash
67
99
  def to_hash
68
100
  ret = {}
101
+ ret['Actor'] = @actor
69
102
  ret['OwnerOrganizationID'] = @owner_organization_id
103
+ unless @resource_id.nil?
104
+ ret['ResourceID'] = @resource_id
105
+ end
70
106
  ret['Type'] = @type
107
+ unless @timestamp.nil?
108
+ ret['Timestamp'] = @timestamp
109
+ end
110
+ unless @type_string.nil?
111
+ ret['TypeString'] = @type_string
112
+ end
71
113
  unless @data.nil?
72
114
  ret['Data'] = @data
73
115
  end
@@ -12,24 +12,30 @@ module Comet
12
12
  # SwiftDestinationLocation is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class SwiftDestinationLocation
14
14
 
15
+ # Username or UserID or Application Credential name or Application Credential ID, or blank for token
16
+ # authentication
15
17
  # @type [String] username
16
18
  attr_accessor :username
17
19
 
20
+ # User Password, or Application Credential Key, or token if the Username field is blank
18
21
  # @type [String] apikey
19
22
  attr_accessor :apikey
20
23
 
21
24
  # @type [String] region
22
25
  attr_accessor :region
23
26
 
27
+ # Mandatory
24
28
  # @type [String] auth_url
25
29
  attr_accessor :auth_url
26
30
 
27
31
  # @type [String] domain
28
32
  attr_accessor :domain
29
33
 
34
+ # Tenant name (v2) or Project name (v3)
30
35
  # @type [String] tenant
31
36
  attr_accessor :tenant
32
37
 
38
+ # Project domain name (v3)
33
39
  # @type [String] tenant_domain
34
40
  attr_accessor :tenant_domain
35
41
 
@@ -40,6 +46,7 @@ module Comet
40
46
  attr_accessor :trust_id
41
47
 
42
48
  # @type [String] auth_token
49
+ # @deprecated This member has been deprecated since Comet version 17.8.0
43
50
  attr_accessor :auth_token
44
51
 
45
52
  # @type [String] prefix
@@ -12,6 +12,7 @@ module Comet
12
12
  # TestResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class TestResponse
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,9 +12,11 @@ module Comet
12
12
  # TimeSpan is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class TimeSpan
14
14
 
15
+ # SCHEDULE_FREQUENCY_<TYPE>
15
16
  # @type [Number] frequency_type
16
17
  attr_accessor :frequency_type
17
18
 
19
+ # Used for Periodic and Once Only
18
20
  # @type [Number] seconds
19
21
  attr_accessor :seconds
20
22
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # TotpRegeneratedResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class TotpRegeneratedResponse
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,6 +13,7 @@ module Comet
13
13
  # @deprecated This type has been deprecated since Comet version 21.12.0
14
14
  class U2FRegistrationChallengeResponse
15
15
 
16
+ # If the operation was successful, the status will be in the 200-299 range.
16
17
  # @type [Number] status
17
18
  attr_accessor :status
18
19
 
@@ -10,11 +10,15 @@ require 'json'
10
10
  module Comet
11
11
 
12
12
  # UninstallConfig is a typed class wrapper around the underlying Comet Server API data structure.
13
+ # UninstallConfig allows configuring whether the target device will be uninstalled or not.
13
14
  class UninstallConfig
14
15
 
16
+ # If this option is true, the target device will receive a message asking it to uninstall the Comet
17
+ # Backup app.
15
18
  # @type [Boolean] uninstall_flag
16
19
  attr_accessor :uninstall_flag
17
20
 
21
+ # This controls the "Remove all user settings from this device" option.
18
22
  # @type [Boolean] remove_config_file
19
23
  attr_accessor :remove_config_file
20
24
 
@@ -28,9 +28,12 @@ module Comet
28
28
  # @type [Boolean] downgrade_newer
29
29
  attr_accessor :downgrade_newer
30
30
 
31
+ # Choose whether this bulk upgrade campaign is allowed to interrupt a running backup job.
31
32
  # @type [Boolean] force_upgrade_running
32
33
  attr_accessor :force_upgrade_running
33
34
 
35
+ # If true, then the UserFilter will be used to restrict which accounts and devices will be eligible
36
+ # for the software update. If false, all users and devices will be eligible for the software update.
34
37
  # @type [Boolean] apply_device_filter
35
38
  attr_accessor :apply_device_filter
36
39
 
@@ -24,9 +24,12 @@ module Comet
24
24
  # @type [Boolean] downgrade_newer
25
25
  attr_accessor :downgrade_newer
26
26
 
27
+ # Choose whether this bulk upgrade campaign is allowed to interrupt a running backup job.
27
28
  # @type [Boolean] force_upgrade_running
28
29
  attr_accessor :force_upgrade_running
29
30
 
31
+ # If true, then the UserFilter will be used to restrict which accounts and devices will be eligible
32
+ # for the software update. If false, all users and devices will be eligible for the software update.
30
33
  # @type [Boolean] apply_device_filter
31
34
  attr_accessor :apply_device_filter
32
35
 
@@ -24,9 +24,12 @@ module Comet
24
24
  # @type [Boolean] downgrade_newer
25
25
  attr_accessor :downgrade_newer
26
26
 
27
+ # Choose whether this bulk upgrade campaign is allowed to interrupt a running backup job.
27
28
  # @type [Boolean] force_upgrade_running
28
29
  attr_accessor :force_upgrade_running
29
30
 
31
+ # If true, then the UserFilter will be used to restrict which accounts and devices will be eligible
32
+ # for the software update. If false, all users and devices will be eligible for the software update.
30
33
  # @type [Boolean] apply_device_filter
31
34
  attr_accessor :apply_device_filter
32
35
 
@@ -12,6 +12,8 @@ module Comet
12
12
  # UserOnServer is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class UserOnServer
14
14
 
15
+ # The server where this user was found. The 0-based indexes here correspond to the entries inside
16
+ # ConstellationRoleOptions->Servers.
15
17
  # @type [Number] server_id
16
18
  attr_accessor :server_id
17
19
 
@@ -13,15 +13,22 @@ module Comet
13
13
  # This is the main data structure for a user's profile.
14
14
  class UserProfileConfig
15
15
 
16
+ # The name for this account. It uniquely identifies this UserProfileConfig across the entire Comet
17
+ # Server. It cannot be changed directly.
16
18
  # @type [String] username
17
19
  attr_accessor :username
18
20
 
21
+ # A longer descriptive name for this account. It is not necessarily unique to the Comet Server. The
22
+ # end-user might be able to change it inside the Comet Backup desktop app.
19
23
  # @type [String] account_name
20
24
  attr_accessor :account_name
21
25
 
26
+ # Timezone in IANA format. Individual devices may declare a more specific timezone in the Devices
27
+ # field.
22
28
  # @type [String] local_timezone
23
29
  attr_accessor :local_timezone
24
30
 
31
+ # One of the supported languages, such as en_US (DEFAULT_LANGUAGE).
25
32
  # @type [String] language_code
26
33
  attr_accessor :language_code
27
34
 
@@ -29,44 +36,68 @@ module Comet
29
36
  # @type [String] organization_id
30
37
  attr_accessor :organization_id
31
38
 
39
+ # A list of email addresses to send reports to.
32
40
  # @type [Array<String>] emails
33
41
  attr_accessor :emails
34
42
 
43
+ # By default, all the email addresses in the Emails field will receieve the policy-default or
44
+ # server-wide-default style of email report. Add an override for a specific email address in here to
45
+ # allow customizing the email report that will be received.
35
46
  # @type [Hash{String => Comet::UserCustomEmailSettings}] override_email_settings
36
47
  attr_accessor :override_email_settings
37
48
 
49
+ # This option can be used to control whether any email reports are sent.
38
50
  # @type [Boolean] send_email_reports
39
51
  attr_accessor :send_email_reports
40
52
 
41
53
  # Storage Vaults
54
+ # The string keys can be any unique key. Using a GUID is recommended, but optional.
42
55
  # @type [Hash{String => Comet::DestinationConfig}] destinations
43
56
  attr_accessor :destinations
44
57
 
45
58
  # Protected Items
59
+ # The string keys can be any unique key. Using a GUID is recommended, but optional.
46
60
  # @type [Hash{String => Comet::SourceConfig}] sources
47
61
  attr_accessor :sources
48
62
 
63
+ # Schedules
64
+ # The string keys can be any unique key. Using a GUID is recommended, but optional.
49
65
  # @type [Hash{String => Comet::BackupRuleConfig}] backup_rules
50
66
  attr_accessor :backup_rules
51
67
 
68
+ # Devices
69
+ # The string keys are the device's ID. The device ID is generated automatically based on a mix of
70
+ # hardware and software identifiers on the installed PC.
71
+ # To revoke a device, use the AdminRevokeDevice API instead of accessing these fields directly. This
72
+ # API can also remove associated Protected Items, uninstall the remote device, and disconnect its
73
+ # live connection.
52
74
  # @type [Hash{String => Comet::DeviceConfig}] devices
53
75
  attr_accessor :devices
54
76
 
55
77
  # @type [Boolean] is_suspended
56
78
  attr_accessor :is_suspended
57
79
 
80
+ # Unix timestamp in seconds. Zero if the device is not suspended.
58
81
  # @type [Number] last_suspended
59
82
  attr_accessor :last_suspended
60
83
 
84
+ # A limit on the total Size of all Protected Items in this account. The number of bytes should be
85
+ # configured in AllProtectedItemsQuotaBytes.
61
86
  # @type [Boolean] all_protected_items_quota_enabled
62
87
  attr_accessor :all_protected_items_quota_enabled
63
88
 
89
+ # A limit on the total Size of all Protected Items in this account. It is enforced if
90
+ # AllProtectedItemsQuotaEnabled is true.
64
91
  # @type [Number] all_protected_items_quota_bytes
65
92
  attr_accessor :all_protected_items_quota_bytes
66
93
 
94
+ # A limit on the total number of devices registered in this account. Set to zero to allow unlimited
95
+ # devices.
67
96
  # @type [Number] maximum_devices
68
97
  attr_accessor :maximum_devices
69
98
 
99
+ # A limit on the total number of Office 365 Protected Accounts across all Office 365 Protected Items
100
+ # in this account. Set to zero to allow unlimited Office 365 Protected Accounts.
70
101
  # @type [Number] quota_office_365protected_accounts
71
102
  attr_accessor :quota_office_365protected_accounts
72
103
 
@@ -76,9 +107,12 @@ module Comet
76
107
  # @type [String] policy_id
77
108
  attr_accessor :policy_id
78
109
 
110
+ # The Policy field contains a read-only copy of the effective Policy that is applied to this user
111
+ # account.
79
112
  # @type [Comet::UserPolicy] policy
80
113
  attr_accessor :policy
81
114
 
115
+ # One of the PASSWORD_FORMAT_ constants
82
116
  # To change the user's password, use the AdminResetUserPassword API instead of accessing these
83
117
  # fields directly. Otherwise, other encrypted fields in the user profile may become corrupted.
84
118
  # @type [Number] password_format
@@ -87,30 +121,41 @@ module Comet
87
121
  # @type [String] password_hash
88
122
  attr_accessor :password_hash
89
123
 
124
+ # If this field is empty, the "Allow administrator to reset my password" feature is turned off. If
125
+ # this field is filled, it contains a cryptographic root of trust that can decrypt and re-encrypt
126
+ # other secrets in this profile.
90
127
  # @type [String] password_recovery
91
128
  attr_accessor :password_recovery
92
129
 
93
130
  # @type [Boolean] allow_password_login
94
131
  attr_accessor :allow_password_login
95
132
 
133
+ # If true, then TOTP is required to open the desktop app or the Comet Server web interface with this
134
+ # user's credentials.
96
135
  # @type [Boolean] allow_password_and_totplogin
97
136
  attr_accessor :allow_password_and_totplogin
98
137
 
138
+ # One of the ENCRYPTIONMETHOD_ constants
99
139
  # @type [Number] totpkey_encryption_format
100
140
  attr_accessor :totpkey_encryption_format
101
141
 
102
142
  # @type [String] totpkey
103
143
  attr_accessor :totpkey
104
144
 
145
+ # This field is available in Comet 20.3.4 and later.
105
146
  # @type [Boolean] require_password_change
106
147
  attr_accessor :require_password_change
107
148
 
149
+ # Unix timestamp in seconds
108
150
  # @type [Number] create_time
109
151
  attr_accessor :create_time
110
152
 
153
+ # A random GUID that is allocated when the user profile is created for the first time. You can use
154
+ # this to help disambiguate users with the same username across multiple Comet Servers.
111
155
  # @type [String] creation_guid
112
156
  attr_accessor :creation_guid
113
157
 
158
+ # Additional server-wide settings that are enforced for this user profile
114
159
  # @type [Comet::UserServerConfig] server_config
115
160
  attr_accessor :server_config
116
161
 
@@ -10,6 +10,7 @@ require 'json'
10
10
  module Comet
11
11
 
12
12
  # UserProfileFragment is a typed class wrapper around the underlying Comet Server API data structure.
13
+ # @deprecated This type has been deprecated since Comet version 23.3.5
13
14
  class UserProfileFragment
14
15
 
15
16
  # @type [String] username
@@ -12,12 +12,16 @@ module Comet
12
12
  # VMDKSnapshotViewOptions is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class VMDKSnapshotViewOptions
14
14
 
15
+ # Request a list of stored objects in vmdk file. It should be always true for restoring single files
16
+ # from vmdk file
15
17
  # @type [Boolean] enabled
16
18
  attr_accessor :enabled
17
19
 
20
+ # The vmdk filename inside subdirectory of disk image, should be end with .vmdk
18
21
  # @type [String] partition_guid
19
22
  attr_accessor :partition_guid
20
23
 
24
+ # Browse objects' paths inside vmdk file
21
25
  # @type [String] list_path
22
26
  attr_accessor :list_path
23
27
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # WebAuthnRegistrationChallengeResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class WebAuthnRegistrationChallengeResponse
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,8 @@ module Comet
12
12
  # WebInterfaceBrandingProperties is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class WebInterfaceBrandingProperties
14
14
 
15
+ # One of the BRANDINGSTYLETYPE_ constants
16
+ # This field is available in Comet 23.3.3 and later.
15
17
  # @type [Number] branding_style_type
16
18
  attr_accessor :branding_style_type
17
19