comet_backup_ruby_sdk 2.33.0 → 2.34.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cd9b5276738aaf54da0faa462ce15d892e9adc73f30c85498190a6b87bcc334a
4
- data.tar.gz: 2740b843b7deb8d9b5f1a4976458bc7df296806de0656994d818535f492c1e1b
3
+ metadata.gz: 2a5650246c6d613c814ac6c29ce1e20b08d354731c9a6552f350e86f7540c059
4
+ data.tar.gz: d05bbd26c3e6fa334ae38b799911de26e52486fac77d8fb87b99e02bbcd1f84a
5
5
  SHA512:
6
- metadata.gz: 298427323e3dd885832c689086054a7080080cd5fea6cbd2724432513b8c2df722fb99829d4a04b6789fc44263ac78720a76abc323b3ecad0323abb053bfd06b
7
- data.tar.gz: aa79fd2f522e0e8e772a33f513440f0471515476b6cd29fe8b29b5345ccab08d179b8d97f1b84a846abdec18e82c32b3e3c0fa8d6f4ebe1b9db4f56cf1326bb3
6
+ metadata.gz: de6d656ff7144991407310eff6850bdfa2df887c9f0fe93ed8f52bef4c78c786c24e72d2ac5d966e69fccded36f28b85666cb7de5f08674130a70bf495a55abf
7
+ data.tar.gz: baa8c18ea3bfc5e98445e3ec1e0f0828fb5c76e53f74418f0a73b2e0c9a8ca7b05dd7234c8eb768d69ab17a937237c38d95e82a59d2c765a4087b7d729e29de2
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 2024-07-16 v2.34.0
4
+
5
+ - Based on Comet 24.6.4
6
+ - Added Server Device and Booster Limits
7
+ - Added API to count devices registered on a Server
8
+ - Added Software Build Role configuration per tenant
9
+
3
10
  ## 2024-06-11 v2.33.0
4
11
 
5
12
  - Based on Comet 24.6.0
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- comet_backup_ruby_sdk (2.33.0)
4
+ comet_backup_ruby_sdk (2.34.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -12,7 +12,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
12
12
 
13
13
  Gem::Specification.new do |spec|
14
14
  spec.name = 'comet_backup_ruby_sdk'
15
- spec.version = '2.33.0'
15
+ spec.version = '2.34.0'
16
16
  spec.authors = ['Comet Licensing Ltd.']
17
17
  spec.email = ['hello@cometbackup.com']
18
18
 
@@ -7,13 +7,13 @@
7
7
 
8
8
  module Comet
9
9
 
10
- APPLICATION_VERSION = '24.6.0'
10
+ APPLICATION_VERSION = '24.6.4'
11
11
 
12
12
  APPLICATION_VERSION_MAJOR = 24
13
13
 
14
14
  APPLICATION_VERSION_MINOR = 6
15
15
 
16
- APPLICATION_VERSION_REVISION = 0
16
+ APPLICATION_VERSION_REVISION = 4
17
17
 
18
18
  # AutoRetentionLevel: The system will automatically choose how often to run an automatic Retention Pass after each backup job.
19
19
  BACKUPJOBAUTORETENTION_AUTOMATIC = 0
@@ -75,6 +75,10 @@ module Comet
75
75
  # @type [Array<String>] allowed_user_policies
76
76
  attr_accessor :allowed_user_policies
77
77
 
78
+ # This field is available in Comet 24.6.1 and later.
79
+ # @type [Boolean] deny_software_build_role
80
+ attr_accessor :deny_software_build_role
81
+
78
82
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
79
83
  attr_accessor :unknown_json_fields
80
84
 
@@ -155,6 +159,8 @@ module Comet
155
159
  @allowed_user_policies[i1] = v1
156
160
  end
157
161
  end
162
+ when 'DenySoftwareBuildRole'
163
+ @deny_software_build_role = v
158
164
  else
159
165
  @unknown_json_fields[k] = v
160
166
  end
@@ -218,6 +224,9 @@ module Comet
218
224
  unless @allowed_user_policies.nil?
219
225
  ret['AllowedUserPolicies'] = @allowed_user_policies
220
226
  end
227
+ unless @deny_software_build_role.nil?
228
+ ret['DenySoftwareBuildRole'] = @deny_software_build_role
229
+ end
221
230
  @unknown_json_fields.each do |k, v|
222
231
  ret[k] = v
223
232
  end
@@ -0,0 +1,93 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2020-2024 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
+ # LicenseLimits is a typed class wrapper around the underlying Comet Server API data structure.
13
+ class LicenseLimits
14
+
15
+ # @type [Number] device_count
16
+ attr_accessor :device_count
17
+
18
+ # @type [Hash{String => Number}] booster_count
19
+ attr_accessor :booster_count
20
+
21
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
22
+ attr_accessor :unknown_json_fields
23
+
24
+ def initialize
25
+ clear
26
+ end
27
+
28
+ def clear
29
+ @device_count = 0
30
+ @booster_count = {}
31
+ @unknown_json_fields = {}
32
+ end
33
+
34
+ # @param [String] json_string The complete object in JSON format
35
+ def from_json(json_string)
36
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
37
+
38
+ from_hash(JSON.parse(json_string))
39
+ end
40
+
41
+ # @param [Hash] obj The complete object as a Ruby hash
42
+ def from_hash(obj)
43
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
44
+
45
+ obj.each do |k, v|
46
+ case k
47
+ when 'deviceCount'
48
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
49
+
50
+ @device_count = v
51
+ when 'boosterCount'
52
+ @booster_count = {}
53
+ if v.nil?
54
+ @booster_count = {}
55
+ else
56
+ v.each do |k1, v1|
57
+ raise TypeError, "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric
58
+
59
+ @booster_count[k1] = v1
60
+ end
61
+ end
62
+ else
63
+ @unknown_json_fields[k] = v
64
+ end
65
+ end
66
+ end
67
+
68
+ # @return [Hash] The complete object as a Ruby hash
69
+ def to_hash
70
+ ret = {}
71
+ unless @device_count.nil?
72
+ ret['deviceCount'] = @device_count
73
+ end
74
+ unless @booster_count.nil?
75
+ ret['boosterCount'] = @booster_count
76
+ end
77
+ @unknown_json_fields.each do |k, v|
78
+ ret[k] = v
79
+ end
80
+ ret
81
+ end
82
+
83
+ # @return [Hash] The complete object as a Ruby hash
84
+ def to_h
85
+ to_hash
86
+ end
87
+
88
+ # @return [String] The complete object as a JSON string
89
+ def to_json(options = {})
90
+ to_hash.to_json(options)
91
+ end
92
+ end
93
+ end
@@ -62,6 +62,21 @@ module Comet
62
62
  # @type [Number] server_license_feature_set
63
63
  attr_accessor :server_license_feature_set
64
64
 
65
+ # If non-zero, the maximum numbers of devices and Protected Item types that this server is allowed.
66
+ # This field is available in Comet 24.6.3 and later.
67
+ # @type [Comet::LicenseLimits] server_license_limit
68
+ attr_accessor :server_license_limit
69
+
70
+ # A count of the devices registered on the server that have a configured Protected Item.
71
+ # This field is available in Comet 24.6.3 and later.
72
+ # @type [Number] configured_devices
73
+ attr_accessor :configured_devices
74
+
75
+ # The current number of Protected Item types configured on the server.
76
+ # This field is available in Comet 24.6.3 and later.
77
+ # @type [Hash{String => Number}] booster_limit
78
+ attr_accessor :booster_limit
79
+
65
80
  # Unix timestamp, in seconds.
66
81
  # @type [Number] license_valid_until
67
82
  attr_accessor :license_valid_until
@@ -110,6 +125,9 @@ module Comet
110
125
  @current_time = 0
111
126
  @server_license_hash = ''
112
127
  @server_license_feature_set = 0
128
+ @server_license_limit = Comet::LicenseLimits.new
129
+ @configured_devices = 0
130
+ @booster_limit = {}
113
131
  @license_valid_until = 0
114
132
  @emails_sent_successfully = 0
115
133
  @emails_sent_errors = 0
@@ -186,6 +204,24 @@ module Comet
186
204
  raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
187
205
 
188
206
  @server_license_feature_set = v
207
+ when 'ServerLicenseLimit'
208
+ @server_license_limit = Comet::LicenseLimits.new
209
+ @server_license_limit.from_hash(v)
210
+ when 'ConfiguredDevices'
211
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
212
+
213
+ @configured_devices = v
214
+ when 'BoosterLimit'
215
+ @booster_limit = {}
216
+ if v.nil?
217
+ @booster_limit = {}
218
+ else
219
+ v.each do |k1, v1|
220
+ raise TypeError, "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric
221
+
222
+ @booster_limit[k1] = v1
223
+ end
224
+ end
189
225
  when 'LicenseValidUntil'
190
226
  raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
191
227
 
@@ -255,6 +291,9 @@ module Comet
255
291
  ret['ServerLicenseHash'] = @server_license_hash
256
292
  ret['ServerLicenseFeaturesAll'] = @server_license_features_all
257
293
  ret['ServerLicenseFeatureSet'] = @server_license_feature_set
294
+ ret['ServerLicenseLimit'] = @server_license_limit
295
+ ret['ConfiguredDevices'] = @configured_devices
296
+ ret['BoosterLimit'] = @booster_limit
258
297
  ret['LicenseValidUntil'] = @license_valid_until
259
298
  ret['EmailsSentSuccessfully'] = @emails_sent_successfully
260
299
  ret['EmailsSentErrors'] = @emails_sent_errors
@@ -93,6 +93,7 @@ require_relative 'comet/models/install_creds'
93
93
  require_relative 'comet/models/install_token'
94
94
  require_relative 'comet/models/install_token_response'
95
95
  require_relative 'comet/models/job_entry'
96
+ require_relative 'comet/models/license_limits'
96
97
  require_relative 'comet/models/license_options'
97
98
  require_relative 'comet/models/live_user_connection'
98
99
  require_relative 'comet/models/local_destination_location'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: comet_backup_ruby_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.33.0
4
+ version: 2.34.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Comet Licensing Ltd.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-06-10 00:00:00.000000000 Z
11
+ date: 2024-07-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -170,6 +170,7 @@ files:
170
170
  - lib/comet/models/install_token.rb
171
171
  - lib/comet/models/install_token_response.rb
172
172
  - lib/comet/models/job_entry.rb
173
+ - lib/comet/models/license_limits.rb
173
174
  - lib/comet/models/license_options.rb
174
175
  - lib/comet/models/live_user_connection.rb
175
176
  - lib/comet/models/local_destination_location.rb