internetdata 1.2.1 → 2.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4fdfe0104aab681676f2f4c616f81ca23fd1c0945f4708426b254978b0080d0b
4
- data.tar.gz: f702eeff9dff285c5b7931871a791c6433f56522ce83b2b3133b212a62df56d8
3
+ metadata.gz: 001e35eb3c0fef97cb13d9cdb22465c663d215253e299bbff9e61cf016b2aa0a
4
+ data.tar.gz: aeca5173f71e178c054e3829e89a2715c1d409bc67e352f80d0160eba1c83c86
5
5
  SHA512:
6
- metadata.gz: 8c84222cb88bc69d152a76fd4ba9222ee991e7da94079e441ee150520e3de886bdcc9f9faea3951ff123a1f1e75070ca1554465513235b794780c1ba8d6cee13
7
- data.tar.gz: e5c4ee84177a528f20392f8705a1f86e150d24818a3ac1f4aec8848a531272209aafb21065014938b3b265851fec586c83f2f07e966f158528dfeefefad2419f
6
+ metadata.gz: 842beb45ab5b427b07dd985412d11cf6cfebd5325c1128e0846fa8d720ab475a0ca66aaf42a557b96675b678b854aa4ce38d50f3edbac9b4c70f3e0b7e3f1554
7
+ data.tar.gz: 5d39b5cac31bbba68c748aea0d05e5e4d24fb8153d14a46cfa9f3ec76b6aa0068a5638e58944138d65440da9f494c56d90d30dc516658b841b87e6764cf33e3e
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -22,7 +22,7 @@ module InternetData
22
22
  # Checksums
23
23
  # Checksums for one published file, so a download can be verified after it lands.
24
24
  # @param id [String] Database identifier (e.g. `vpn_ip_v1`, `resproxy_provider_v1`).
25
- # @param format [String] Database file format.
25
+ # @param format [DatabaseFormat] Database file format.
26
26
  # @param [Hash] opts the optional parameters
27
27
  # @return [DatabaseChecksumsResponse]
28
28
  def database_checksum_v2(id, format, opts = {})
@@ -33,7 +33,7 @@ module InternetData
33
33
  # Checksums
34
34
  # Checksums for one published file, so a download can be verified after it lands.
35
35
  # @param id [String] Database identifier (e.g. `vpn_ip_v1`, `resproxy_provider_v1`).
36
- # @param format [String] Database file format.
36
+ # @param format [DatabaseFormat] Database file format.
37
37
  # @param [Hash] opts the optional parameters
38
38
  # @return [Array<(DatabaseChecksumsResponse, Integer, Hash)>] DatabaseChecksumsResponse data, response status code and response headers
39
39
  def database_checksum_v2_with_http_info(id, format, opts = {})
@@ -53,11 +53,6 @@ module InternetData
53
53
  if @api_client.config.client_side_validation && format.nil?
54
54
  fail ArgumentError, "Missing the required parameter 'format' when calling DatabaseV2Api.database_checksum_v2"
55
55
  end
56
- # verify enum value
57
- allowable_values = ["csvgz", "mmdb"]
58
- if @api_client.config.client_side_validation && !allowable_values.include?(format)
59
- fail ArgumentError, "invalid value for \"format\", must be one of #{allowable_values}"
60
- end
61
56
  # resource path
62
57
  local_var_path = '/api/v2/database/checksum'
63
58
 
@@ -172,7 +167,7 @@ module InternetData
172
167
  # Download
173
168
  # Answers `302`; the bytes come straight from object storage rather than through this API. Follow the redirect.
174
169
  # @param id [String] Database identifier (e.g. &#x60;vpn_ip_v1&#x60;, &#x60;resproxy_provider_v1&#x60;).
175
- # @param format [String] Database file format.
170
+ # @param format [DatabaseFormat] Database file format.
176
171
  # @param [Hash] opts the optional parameters
177
172
  # @return [nil]
178
173
  def download_database_v2(id, format, opts = {})
@@ -183,7 +178,7 @@ module InternetData
183
178
  # Download
184
179
  # Answers &#x60;302&#x60;; the bytes come straight from object storage rather than through this API. Follow the redirect.
185
180
  # @param id [String] Database identifier (e.g. &#x60;vpn_ip_v1&#x60;, &#x60;resproxy_provider_v1&#x60;).
186
- # @param format [String] Database file format.
181
+ # @param format [DatabaseFormat] Database file format.
187
182
  # @param [Hash] opts the optional parameters
188
183
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
189
184
  def download_database_v2_with_http_info(id, format, opts = {})
@@ -203,11 +198,6 @@ module InternetData
203
198
  if @api_client.config.client_side_validation && format.nil?
204
199
  fail ArgumentError, "Missing the required parameter 'format' when calling DatabaseV2Api.download_database_v2"
205
200
  end
206
- # verify enum value
207
- allowable_values = ["csvgz", "mmdb"]
208
- if @api_client.config.client_side_validation && !allowable_values.include?(format)
209
- fail ArgumentError, "invalid value for \"format\", must be one of #{allowable_values}"
210
- end
211
201
  # resource path
212
202
  local_var_path = '/api/v2/database/download'
213
203
 
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -44,6 +44,7 @@ module InternetData
44
44
  # publishes is the API's choice, not ours, and the response nests them one
45
45
  # level down under `checksums`.
46
46
  def checksums(id, format)
47
+ check_format!(format)
47
48
  call { @api.database_checksum_v2(id, format).checksums }
48
49
  end
49
50
 
@@ -61,6 +62,7 @@ module InternetData
61
62
  # link authorizes the START of a transfer, so one already running is not
62
63
  # interrupted when it lapses.
63
64
  def download_url(id, format)
65
+ check_format!(format)
64
66
  call { redirect_location(id, format) }
65
67
  end
66
68
 
@@ -153,6 +155,20 @@ module InternetData
153
155
  # The 302 is this operation's SUCCESS case, but the generated client treats
154
156
  # every non-2xx as a failure, so it arrives as an ApiError carrying the
155
157
  # Location header.
158
+ # A format the API does not publish is refused HERE rather than sent.
159
+ #
160
+ # The generator used to emit this check inline in the wire client; naming
161
+ # the enum in the spec made it stop, so an unknown format became a network
162
+ # round trip and a 400. Owning it in this layer keeps the behaviour where a
163
+ # caller can see it and independent of what the generator feels like
164
+ # emitting.
165
+ def check_format!(format)
166
+ return if DatabaseFormat.all_vars.include?(format)
167
+
168
+ raise ArgumentError,
169
+ "invalid value for \"format\", must be one of #{DatabaseFormat.all_vars}"
170
+ end
171
+
156
172
  def redirect_location(id, format)
157
173
  @api.download_database_v2(id, format)
158
174
  raise Error.new(:server_error, 'expected a redirect to object storage')
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -24,10 +24,9 @@ module InternetData
24
24
  # One line on what the newest version contains.
25
25
  attr_accessor :summary
26
26
 
27
- # `licensed` is a live grant, `expired` one whose term has ended, and `unlicensed` a database published but never bought.
28
27
  attr_accessor :standing
29
28
 
30
- # What your licence permits you to do with the data. Null when there is no licence.
29
+ # What your licence permits you to do with the data. Null when there is no licence, which is every family with standing `unlicensed`.
31
30
  attr_accessor :license_type
32
31
 
33
32
  attr_accessor :starts
@@ -98,7 +97,7 @@ module InternetData
98
97
  :'base' => :'String',
99
98
  :'name' => :'String',
100
99
  :'summary' => :'String',
101
- :'standing' => :'String',
100
+ :'standing' => :'Standing',
102
101
  :'license_type' => :'String',
103
102
  :'starts' => :'Time',
104
103
  :'expires' => :'Time',
@@ -234,8 +233,6 @@ module InternetData
234
233
  return false if @name.nil?
235
234
  return false if @summary.nil?
236
235
  return false if @standing.nil?
237
- standing_validator = EnumAttributeValidator.new('String', ["licensed", "expired", "unlicensed"])
238
- return false unless standing_validator.valid?(@standing)
239
236
  license_type_validator = EnumAttributeValidator.new('String', ["evaluation", "standard", "redistribute"])
240
237
  return false unless license_type_validator.valid?(@license_type)
241
238
  return false if @versions.nil?
@@ -272,13 +269,13 @@ module InternetData
272
269
  @summary = summary
273
270
  end
274
271
 
275
- # Custom attribute writer method checking allowed values (enum).
276
- # @param [Object] standing Object to be assigned
272
+ # Custom attribute writer method with validation
273
+ # @param [Object] standing Value to be assigned
277
274
  def standing=(standing)
278
- validator = EnumAttributeValidator.new('String', ["licensed", "expired", "unlicensed"])
279
- unless validator.valid?(standing)
280
- fail ArgumentError, "invalid value for \"standing\", must be one of #{validator.allowable_values}."
275
+ if standing.nil?
276
+ fail ArgumentError, 'standing cannot be nil'
281
277
  end
278
+
282
279
  @standing = standing
283
280
  end
284
281
 
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -66,7 +66,7 @@ module InternetData
66
66
  def self.openapi_types
67
67
  {
68
68
  :'id' => :'String',
69
- :'format' => :'String',
69
+ :'format' => :'DatabaseFormat',
70
70
  :'checksums' => :'DbChecksums'
71
71
  }
72
72
  end
@@ -138,8 +138,6 @@ module InternetData
138
138
  warn '[DEPRECATED] the `valid?` method is obsolete'
139
139
  return false if @id.nil?
140
140
  return false if @format.nil?
141
- format_validator = EnumAttributeValidator.new('String', ["csvgz", "mmdb"])
142
- return false unless format_validator.valid?(@format)
143
141
  return false if @checksums.nil?
144
142
  true
145
143
  end
@@ -154,13 +152,13 @@ module InternetData
154
152
  @id = id
155
153
  end
156
154
 
157
- # Custom attribute writer method checking allowed values (enum).
158
- # @param [Object] format Object to be assigned
155
+ # Custom attribute writer method with validation
156
+ # @param [Object] format Value to be assigned
159
157
  def format=(format)
160
- validator = EnumAttributeValidator.new('String', ["csvgz", "mmdb"])
161
- unless validator.valid?(format)
162
- fail ArgumentError, "invalid value for \"format\", must be one of #{validator.allowable_values}."
158
+ if format.nil?
159
+ fail ArgumentError, 'format cannot be nil'
163
160
  end
161
+
164
162
  @format = format
165
163
  end
166
164
 
@@ -0,0 +1,40 @@
1
+ =begin
2
+ #InternetData API
3
+
4
+ #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
+
6
+ The version of the OpenAPI document: 2026.09.13
7
+ Contact: dev@internetdata.io
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.25.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module InternetData
17
+ class DatabaseFormat
18
+ CSVGZ = "csvgz".freeze
19
+ MMDB = "mmdb".freeze
20
+
21
+ def self.all_vars
22
+ @all_vars ||= [CSVGZ, MMDB].freeze
23
+ end
24
+
25
+ # Builds the enum from string
26
+ # @param [String] The enum value in the form of the string
27
+ # @return [String] The enum value
28
+ def self.build_from_hash(value)
29
+ new.build_from_hash(value)
30
+ end
31
+
32
+ # Builds the enum from string
33
+ # @param [String] The enum value in the form of the string
34
+ # @return [String] The enum value
35
+ def build_from_hash(value)
36
+ return value if DatabaseFormat.all_vars.include?(value)
37
+ raise "Invalid ENUM value #{value} for class #DatabaseFormat"
38
+ end
39
+ end
40
+ end
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -25,28 +25,6 @@ module InternetData
25
25
  # The formats this version is BUILT in. Asking for another is a 400, not a gap - the `_provider` catalogs are keyed by provider id, so no MMDB exists for them.
26
26
  attr_accessor :formats
27
27
 
28
- class EnumAttributeValidator
29
- attr_reader :datatype
30
- attr_reader :allowable_values
31
-
32
- def initialize(datatype, allowable_values)
33
- @allowable_values = allowable_values.map do |value|
34
- case datatype.to_s
35
- when /Integer/i
36
- value.to_i
37
- when /Float/i
38
- value.to_f
39
- else
40
- value
41
- end
42
- end
43
- end
44
-
45
- def valid?(value)
46
- !value || allowable_values.include?(value)
47
- end
48
- end
49
-
50
28
  # Attribute mapping from ruby-style variable name to JSON key.
51
29
  def self.attribute_map
52
30
  {
@@ -73,7 +51,7 @@ module InternetData
73
51
  :'id' => :'String',
74
52
  :'version' => :'Integer',
75
53
  :'summary' => :'String',
76
- :'formats' => :'Array<String>'
54
+ :'formats' => :'Array<DatabaseFormat>'
77
55
  }
78
56
  end
79
57
 
@@ -191,6 +169,16 @@ module InternetData
191
169
  @summary = summary
192
170
  end
193
171
 
172
+ # Custom attribute writer method with validation
173
+ # @param [Object] formats Value to be assigned
174
+ def formats=(formats)
175
+ if formats.nil?
176
+ fail ArgumentError, 'formats cannot be nil'
177
+ end
178
+
179
+ @formats = formats
180
+ end
181
+
194
182
  # Checks equality by comparing each attribute.
195
183
  # @param [Object] Object to be compared
196
184
  def ==(o)
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2026.09.09
6
+ The version of the OpenAPI document: 2026.09.13
7
7
  Contact: dev@internetdata.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -0,0 +1,41 @@
1
+ =begin
2
+ #InternetData API
3
+
4
+ #The InternetData API. Please see https://docs.internetdata.io/api for more details.
5
+
6
+ The version of the OpenAPI document: 2026.09.13
7
+ Contact: dev@internetdata.io
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.25.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module InternetData
17
+ class Standing
18
+ LICENSED = "licensed".freeze
19
+ EXPIRED = "expired".freeze
20
+ UNLICENSED = "unlicensed".freeze
21
+
22
+ def self.all_vars
23
+ @all_vars ||= [LICENSED, EXPIRED, UNLICENSED].freeze
24
+ end
25
+
26
+ # Builds the enum from string
27
+ # @param [String] The enum value in the form of the string
28
+ # @return [String] The enum value
29
+ def self.build_from_hash(value)
30
+ new.build_from_hash(value)
31
+ end
32
+
33
+ # Builds the enum from string
34
+ # @param [String] The enum value in the form of the string
35
+ # @return [String] The enum value
36
+ def build_from_hash(value)
37
+ return value if Standing.all_vars.include?(value)
38
+ raise "Invalid ENUM value #{value} for class #Standing"
39
+ end
40
+ end
41
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module InternetData
4
- VERSION = '1.2.1'
4
+ VERSION = '2.0.0'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: internetdata
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mslm Dev
@@ -44,6 +44,7 @@ files:
44
44
  - lib/internetdata/errors.rb
45
45
  - lib/internetdata/models/database.rb
46
46
  - lib/internetdata/models/database_checksums_response.rb
47
+ - lib/internetdata/models/database_format.rb
47
48
  - lib/internetdata/models/database_list.rb
48
49
  - lib/internetdata/models/database_metadata.rb
49
50
  - lib/internetdata/models/database_metadata_column.rb
@@ -52,6 +53,7 @@ files:
52
53
  - lib/internetdata/models/download.rb
53
54
  - lib/internetdata/models/download_list.rb
54
55
  - lib/internetdata/models/error_envelope.rb
56
+ - lib/internetdata/models/standing.rb
55
57
  - lib/internetdata/retries.rb
56
58
  - lib/internetdata/transport.rb
57
59
  - lib/internetdata/version.rb