esi-sdk 1.1.3 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/Gemfile.lock +7 -1
  4. data/README.md +15 -0
  5. data/Rakefile +30 -26
  6. data/esi-sdk.gemspec +1 -0
  7. data/lib/esi/client.rb +66 -44
  8. data/lib/esi/client/alliance.rb +7 -7
  9. data/lib/esi/client/assets.rb +20 -16
  10. data/lib/esi/client/bookmarks.rb +8 -8
  11. data/lib/esi/client/calendar.rb +15 -14
  12. data/lib/esi/client/character.rb +31 -29
  13. data/lib/esi/client/clones.rb +4 -4
  14. data/lib/esi/client/contacts.rb +26 -24
  15. data/lib/esi/client/contracts.rb +22 -22
  16. data/lib/esi/client/corporation.rb +46 -46
  17. data/lib/esi/client/dogma.rb +9 -9
  18. data/lib/esi/client/faction_warfare.rb +10 -10
  19. data/lib/esi/client/fittings.rb +9 -8
  20. data/lib/esi/client/fleets.rb +49 -42
  21. data/lib/esi/client/incursions.rb +1 -1
  22. data/lib/esi/client/industry.rb +19 -19
  23. data/lib/esi/client/insurance.rb +1 -1
  24. data/lib/esi/client/killmails.rb +7 -7
  25. data/lib/esi/client/location.rb +6 -6
  26. data/lib/esi/client/loyalty.rb +4 -4
  27. data/lib/esi/client/mail.rb +26 -23
  28. data/lib/esi/client/market.rb +25 -25
  29. data/lib/esi/client/opportunities.rb +8 -8
  30. data/lib/esi/client/planetary_interaction.rb +9 -9
  31. data/lib/esi/client/routes.rb +6 -6
  32. data/lib/esi/client/search.rb +7 -7
  33. data/lib/esi/client/skills.rb +6 -6
  34. data/lib/esi/client/sovereignty.rb +3 -3
  35. data/lib/esi/client/status.rb +1 -1
  36. data/lib/esi/client/universe.rb +51 -49
  37. data/lib/esi/client/user_interface.rb +19 -14
  38. data/lib/esi/client/wallet.rb +18 -18
  39. data/lib/esi/client/wars.rb +7 -7
  40. data/lib/esi/errors.rb +11 -0
  41. data/lib/esi/version.rb +1 -1
  42. metadata +16 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 96bfde25cec60466f068690e618f8eb448f287686652529627d83e61bff6a27e
4
- data.tar.gz: 30a10c563775c08ce91e003fa97a34b72dc48db1b754b39a34d7b7b7398fc3d0
3
+ metadata.gz: 32e80c8b57db70012c9002de31f5533508fc5144d6d416b5d5f3c1dd588805df
4
+ data.tar.gz: 1f20d6ef7531035b260c4b5d936ff4bed4f6ac1d9e3222a771c7717c4b8f236c
5
5
  SHA512:
6
- metadata.gz: 4e3e48c1b7e9b03605e0a58a1b9cc7f7d47ae4180efbf0872aef6aec9b187c84febf354f86267694478802f001d2ab0dc5094091ba7789e3be00e16d2217a957
7
- data.tar.gz: 7f241d000d376edd19b72e743e5f7f5176ce75c32df0468f1544fac413eaa659e651113c4b1332dfecd19f626f8412d9615cd326e85a4d92410cbe5f6ed1682a
6
+ metadata.gz: d2d30b0b42a5b16e4756f30fd5ed490e5129db9caa7e67ccac5bbc26ae17cb316589d38ce466daea8cb3b2eb4b2553a4385e8d780a1d786b56ce2cf61422d26b
7
+ data.tar.gz: 40b27c822b0356183a25b88aa6ddad08b975c152b772beae0ee2c047a4579483a9c8333879371db5e21c954bfffa75244e812df529331fe7d712bcf105943ecb
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # ESI SDK Changelog
2
2
 
3
+ # [1.2.0](https://github.com/bokoboshahni/esi-sdk-ruby/compare/v1.1.3...v1.2.0) (2021-07-20)
4
+
5
+
6
+ ### Features
7
+
8
+ * Client improvements ([bad70ae](https://github.com/bokoboshahni/esi-sdk-ruby/commit/bad70ae4d97b8b0f93019b5b4dac73f97aad7dc0))
9
+
3
10
  ## [1.1.3](https://github.com/bokoboshahni/esi-sdk-ruby/compare/v1.1.2...v1.1.3) (2021-07-19)
4
11
 
5
12
 
data/Gemfile.lock CHANGED
@@ -1,10 +1,11 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- esi-sdk (1.1.3)
4
+ esi-sdk (1.2.0)
5
5
  faraday (~> 1.5)
6
6
  faraday-http-cache (~> 2.2)
7
7
  faraday_middleware (~> 1.0)
8
+ typhoeus (~> 1.4)
8
9
 
9
10
  GEM
10
11
  remote: https://rubygems.org/
@@ -23,6 +24,8 @@ GEM
23
24
  rexml
24
25
  diff-lcs (1.4.4)
25
26
  docile (1.4.0)
27
+ ethon (0.14.0)
28
+ ffi (>= 1.15.0)
26
29
  faraday (1.5.1)
27
30
  faraday-em_http (~> 1.0)
28
31
  faraday-em_synchrony (~> 1.0)
@@ -44,6 +47,7 @@ GEM
44
47
  faraday-patron (1.0.0)
45
48
  faraday_middleware (1.0.0)
46
49
  faraday (~> 1.0)
50
+ ffi (1.15.3)
47
51
  hashdiff (1.0.1)
48
52
  i18n (1.8.10)
49
53
  concurrent-ruby (~> 1.0)
@@ -102,6 +106,8 @@ GEM
102
106
  simplecov_json_formatter (~> 0.1)
103
107
  simplecov-html (0.12.3)
104
108
  simplecov_json_formatter (0.1.3)
109
+ typhoeus (1.4.0)
110
+ ethon (>= 0.9.0)
105
111
  tzinfo (2.0.4)
106
112
  concurrent-ruby (~> 1.0)
107
113
  unicode-display_width (2.0.0)
data/README.md CHANGED
@@ -1,3 +1,5 @@
1
+ ![Build images](https://github.com/bokoboshahni/esi-sdk-ruby/workflows/CICD/badge.svg)
2
+
1
3
  # EVE Swagger Interface (ESI) SDK
2
4
 
3
5
  ESI SDK is a Ruby API client for the EVE Swagger Interface (ESI), the official API for the [EVE Online](https://eveonline.com) MMORPG.
@@ -53,6 +55,19 @@ response = client.get_character(character_id: 2113024536)
53
55
 
54
56
  See the documentation for [ESI::Client](https://bokoboshahni.github.io/esi-sdk-ruby/ESI/Client.html) for detailed information on each endpoint.
55
57
 
58
+ ### Caching
59
+
60
+ Caching is handled via the [faraday-http-cache](https://github.com/sourcelevel/faraday-http-cache) middleware. When instantiating an `ESI::Client` instance, cache configuration can be passed via the `cache` parameter:
61
+
62
+ ```ruby
63
+ client = ESI::Client.new(
64
+ user_agent: 'My ESI Bot/1.0; +(https://example.com)',
65
+ cache: { store: Rails.cache, logger: Rails.logger, instrumenter: ActiveSupport::Notifications }
66
+ )
67
+ ```
68
+
69
+ See the [faraday-http-cache](https://github.com/sourcelevel/faraday-http-cache) documentation for more details on what configuration options are available.
70
+
56
71
  ## Development
57
72
 
58
73
  After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
data/Rakefile CHANGED
@@ -142,7 +142,7 @@ task :generate do
142
142
  end
143
143
 
144
144
  param_tags = operation[:params].map do |p|
145
- "# @param #{p["name"]} [Integer,String] #{p["description"]}"
145
+ "# @param #{p["name"]} [#{p["type"].capitalize}] #{p["description"]}"
146
146
  end
147
147
 
148
148
  if operation[:body]
@@ -161,14 +161,26 @@ task :generate do
161
161
  end
162
162
 
163
163
  operation[:query]&.each do |p|
164
- signature_params << "#{p["name"]}:"
165
- param_tags << "# @param #{p["name"]} [#{p["type"].capitalize}] #{p["description"]}"
164
+ p_tag = "# @param #{p["name"]} [#{p["type"].capitalize}] "
165
+ p_tag += (p["description"]).to_s
166
+ p_tag += ". Must be one of: #{p["enum"].map { |e| "`#{e}`" }.join(", ")}" if p["enum"]
167
+ p_str = if p["default"] && p["type"] == "integer"
168
+ "#{p["name"]}: #{p["default"]}"
169
+ elsif p["default"] && p["type"] == "string"
170
+ "#{p["name"]}: \"#{p["default"]}\""
171
+ elsif !p["required"]
172
+ "#{p["name"]}: nil"
173
+ else
174
+ "#{p["name"]}:"
175
+ end
176
+ signature_params << p_str
177
+ param_tags << p_tag
166
178
  end
167
179
 
168
- if %w[delete get].include?(operation[:method])
169
- signature_params << "params: {}"
170
- param_tags << "# @param params [Hash] Additional query string parameters"
180
+ signature_params += %w[headers params].map do |p|
181
+ "#{p}: {}"
171
182
  end
183
+ param_tags << "# @param params [Hash] Additional query string parameters"
172
184
 
173
185
  param_tags += [
174
186
  "# @param headers [Hash] Additional headers"
@@ -188,9 +200,6 @@ task :generate do
188
200
  description += "# @see https://esi.evetech.net/ui/#/#{operation[:tag]}/#{operation[:name]}"
189
201
  description.gsub!(/^$\n/m, "")
190
202
 
191
- signature_params += %w[headers].map do |p|
192
- "#{p}: {}"
193
- end
194
203
  signature = "(#{signature_params.join(", ")})"
195
204
  path_parts = operation[:path].split("/")
196
205
  path_parts.map! do |p|
@@ -202,16 +211,12 @@ task :generate do
202
211
  end
203
212
  path = "#{path_parts.join("/")}/"
204
213
 
205
- http_call_params = %w[headers].map { |p| "#{p}: #{p}" }
206
- http_call_params << if %w[delete get].include?(operation[:method])
207
- "params: params"
208
- elsif operation[:body]
209
- "payload: #{body_param["name"]}"
210
- end
214
+ http_call_params = %w[headers params].map { |p| "#{p}: #{p}" }
215
+ http_call_params << ("payload: #{body_param["name"]}" if operation[:body])
211
216
 
212
217
  if operation[:query].any?
213
- http_call = "query_string = URI.encode_www_form([#{operation[:query].map { |q| "['#{q["name"]}', #{q["name"]}]" }.join(", ")}])\n"
214
- http_call += "#{operation[:method]}(\"#{path}?\#{query_string}\", #{http_call_params.join(", ")})"
218
+ http_call = "params.merge!(#{operation[:query].map { |q| "'#{q["name"]}' => #{q["name"]}" }.join(", ")})\n"
219
+ http_call += "#{operation[:method]}(\"#{path}\", #{http_call_params.join(", ")})"
215
220
  else
216
221
  http_call = "#{operation[:method]}(\"#{path}\", #{http_call_params.join(", ")})"
217
222
  end
@@ -269,11 +274,6 @@ task :generate do
269
274
  success_params = operation[:params].map { |p| "#{p["name"]}: \"1234567890\"" }
270
275
  success_params += operation[:query].map { |p| "#{p["name"]}: \"1234567890\"" }
271
276
 
272
- if operation[:query].any?
273
- query = URI.encode_www_form(operation[:query].map { |q| [q["name"], "1234567890"] })
274
- success_path = "#{success_path}?#{query}"
275
- end
276
-
277
277
  if operation[:body]
278
278
  body_param = operation[:body]
279
279
  body_name = body_param["name"]
@@ -287,12 +287,14 @@ task :generate do
287
287
  success_params << "#{body_name}: #{body_value}"
288
288
  end
289
289
 
290
+ with_query = operation[:query].any? ? ".with(query: { #{operation[:query].map { |p| "#{p["name"]}: \"1234567890\"" }.join(", ")} })" : ""
291
+
290
292
  describe = " describe \"##{method_name}\" do\n"
291
293
  describe += " context \"when the response is #{success_code}\" do\n"
292
294
  describe += " let(:response) { #{success_response_body} }\n"
293
295
  describe += "\n"
294
296
  describe += " before do\n"
295
- describe += " stub_request(:#{operation[:method]}, \"https://esi.evetech.net/latest#{success_path}\").to_return(body: response.to_json)\n"
297
+ describe += " stub_request(:#{operation[:method]}, \"https://esi.evetech.net/latest#{success_path}\")#{with_query}.to_return(body: response.to_json)\n"
296
298
  describe += " end\n"
297
299
  describe += "\n"
298
300
  describe += " it \"returns the response\" do\n"
@@ -303,13 +305,15 @@ task :generate do
303
305
  describe += "\n"
304
306
 
305
307
  error_contexts = operation[:errors].map do |(code, error)|
308
+ next if %w[502 503 504].include?(code)
309
+
306
310
  error_response_body = error["examples"]["application/json"].inspect
307
311
 
308
312
  context = " context \"when the response is #{code}\" do\n"
309
313
  context += " let(:response) { #{error_response_body} }\n"
310
314
  context += "\n"
311
315
  context += " before do\n"
312
- context += " stub_request(:#{operation[:method]}, \"https://esi.evetech.net/latest#{success_path}\").to_return(body: response.to_json, status: #{code})\n"
316
+ context += " stub_request(:#{operation[:method]}, \"https://esi.evetech.net/latest#{success_path}\")#{with_query}.to_return(body: response.to_json, status: #{code})\n"
313
317
  context += " end\n"
314
318
  context += "\n"
315
319
  context += " it \"raises a #{error_mapping[code.to_i]} error\" do\n"
@@ -327,8 +331,8 @@ task :generate do
327
331
  spec_content = <<~SPEC_FILE
328
332
  # frozen_string_literal: true
329
333
 
330
- RSpec.describe ESI::Client::#{module_name} do
331
- subject(:client) { ESI::Client.new(user_agent: \"ESI SDK Tests/1.0; +(https://github.com/bokoboshahni/esi-sdk)\") }
334
+ RSpec.describe ESI::Client::#{module_name}, type: :stub do
335
+ subject(:client) { ESI::Client.new(user_agent: \"esi-sdk-ruby Tests/1.0; +(https://github.com/bokoboshahni/esi-sdk-ruby)\") }
332
336
 
333
337
  #{describe_blocks.join("\n\n")}
334
338
  end
data/esi-sdk.gemspec CHANGED
@@ -29,4 +29,5 @@ Gem::Specification.new do |spec|
29
29
  spec.add_dependency "faraday", "~> 1.5"
30
30
  spec.add_dependency "faraday-http-cache", "~> 2.2"
31
31
  spec.add_dependency "faraday_middleware", "~> 1.0"
32
+ spec.add_dependency "typhoeus", "~> 1.4"
32
33
  end
data/lib/esi/client.rb CHANGED
@@ -4,6 +4,8 @@ require "faraday"
4
4
  require "faraday-http-cache"
5
5
  require "faraday_middleware"
6
6
  require "timeout"
7
+ require "typhoeus"
8
+ require "typhoeus/adapters/faraday"
7
9
 
8
10
  require_relative "./errors"
9
11
  require_relative "./client/alliance"
@@ -95,18 +97,23 @@ module ESI
95
97
 
96
98
  # Returns a new {ESI::Client}.
97
99
  #
100
+ # See the [faraday-http-cache](https://github.com/sourcelevel/faraday-http-cache) documentation for information on
101
+ # how to set up caching via the `cache` parameter.
102
+ #
98
103
  # @param user_agent [String] Value of the `User-Agent` header for HTTP calls
99
104
  # @param base_url [String] The base URL of the ESI API
100
105
  # @param version [String] The version of the ESI API
101
106
  # @param cache [Hash] The cache configuration to use
107
+ # @param max_concurrency [Integer] Maximum concurrent requests for pagination
102
108
  # @option cache [Object] :store The cache store (e.g. `Rails.cache`)
103
109
  # @option cache [Object] :logger The logger (e.g. `Rails.logger`)
104
110
  # @option cache [Object] :instrumenter The instrumenter (e.g. `ActiveSupport::Notifications`)
105
- def initialize(user_agent:, base_url: DEFAULT_BASE_URL, version: DEFAULT_VERSION, cache: {})
111
+ def initialize(user_agent:, base_url: DEFAULT_BASE_URL, version: DEFAULT_VERSION, cache: {}, max_concurrency: 50)
106
112
  @base_url = base_url
107
113
  @cache = cache
108
114
  @user_agent = user_agent
109
115
  @version = version
116
+ @hydra = Typhoeus::Hydra.new(max_concurrency: max_concurrency)
110
117
  end
111
118
 
112
119
  # Set the `Authorization` header for subsequent requests.
@@ -122,89 +129,104 @@ module ESI
122
129
  ESI_RETRY_EXCEPTIONS = [Errno::ETIMEDOUT, Timeout::Error, Faraday::TimeoutError, Faraday::ConnectionFailed,
123
130
  Faraday::ParsingError, SocketError].freeze
124
131
 
132
+ attr_reader :hydra
133
+
125
134
  def delete(path, params: {}, headers: {})
126
135
  response = make_delete_request(path, params: params, headers: headers)
136
+ raise_error(response) unless response.success?
127
137
  response.body
128
138
  end
129
139
 
130
140
  def get(path, params: {}, headers: {})
131
141
  response = make_get_request(path, params: params, headers: headers)
142
+ raise_error(response) unless response.success?
132
143
 
133
- return paginate(response, params, headers) if paginated?(response)
144
+ response_headers = normalize_headers(response.headers)
145
+ return paginate(response, path, params, headers) if paginated?(response_headers)
134
146
 
135
147
  response.body
136
148
  end
137
149
 
138
- def post(path, payload: {}, headers: {})
139
- response = make_post_request(path, payload: payload, headers: headers)
150
+ def post(path, payload: {}, params: {}, headers: {})
151
+ response = make_post_request(path, payload: payload, params: params, headers: headers)
152
+ raise_error(response) unless response.success?
140
153
  response.body
141
154
  end
142
155
 
143
- def put(path, payload: {}, headers: {})
144
- response = make_put_request(path, payload: payload, headers: headers)
156
+ def put(path, payload: {}, params: {}, headers: {})
157
+ response = make_put_request(path, payload: payload, params: params, headers: headers)
158
+ raise_error(response) unless response.success?
145
159
  response.body
146
160
  end
147
161
 
148
- def paginate(response, params, headers)
162
+ def paginate(response, path, params, headers) # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
149
163
  all_items = response.body
150
- page_count = response.headers["X-Pages"].to_i - 1
151
- page_count.times do |n|
152
- page_number = n + 1
153
- params = params.merge(page: page_number)
154
- page = make_get_request(path, params: params, headers: headers)
155
- all_items += page.body
164
+ response_headers = normalize_headers(response.headers)
165
+ page_count = response_headers["x-pages"].to_i - 1
166
+
167
+ responses = []
168
+ url_encoded_connection.in_parallel(hydra) do
169
+ page_count.times do |n|
170
+ page_number = n + 2
171
+ params = params.merge(page: page_number)
172
+ responses << make_get_request(path, params: params, headers: headers)
173
+ end
174
+ end
175
+ unless responses.all?(&:success?)
176
+ raise ESI::Errors::PaginationError.new("Error paginating request", response: response,
177
+ responses: responses)
156
178
  end
157
179
 
158
- all_items
180
+ all_items + responses.map(&:body).flatten
159
181
  end
160
182
 
161
183
  def make_delete_request(path, params: {}, headers: {})
162
- res = url_encoded_connection.delete("/#{version}#{path}", params, headers)
163
-
164
- raise_error(res) unless res.success?
165
-
166
- res
184
+ params.delete_if { |_, v| v.nil? }
185
+ url_encoded_connection.delete("/#{version}#{path}", params, headers)
167
186
  end
168
187
 
169
188
  def make_get_request(path, params: {}, headers: {})
170
- res = url_encoded_connection.get("/#{version}#{path}", params, headers)
171
-
172
- raise_error(res) unless res.success?
173
-
174
- res
189
+ params.delete_if { |_, v| v.nil? }
190
+ url_encoded_connection.get("/#{version}#{path}", params, headers)
175
191
  end
176
192
 
177
- def make_post_request(path, payload: {}, headers: {})
178
- res = json_encoded_connection.post("/#{version}#{path}", payload, headers)
179
-
180
- raise_error(res) unless res.success?
181
-
182
- res
193
+ def make_post_request(path, payload: {}, params: {}, headers: {})
194
+ params.delete_if { |_, v| v.nil? }
195
+ json_encoded_connection.post("/#{version}#{path}") do |req|
196
+ req.params = params
197
+ req.headers = req.headers.merge(headers)
198
+ req.body = payload.to_json
199
+ end
183
200
  end
184
201
 
185
- def make_put_request(path, payload: {}, headers: {})
186
- res = json_encoded_connection.put("/#{version}#{path}", payload, headers)
187
-
188
- raise_error(res) unless res.success?
202
+ def make_put_request(path, payload: {}, params: {}, headers: {})
203
+ params.delete_if { |_, v| v.nil? }
204
+ json_encoded_connection.put("/#{version}#{path}") do |req|
205
+ req.params = params
206
+ req.headers = req.headers.merge(headers)
207
+ req.body = payload.to_json
208
+ end
209
+ end
189
210
 
190
- res
211
+ def paginated?(headers)
212
+ headers["x-pages"] && headers["x-pages"].to_i > 1
191
213
  end
192
214
 
193
- def paginated?(response)
194
- response.headers["X-Pages"] && response.headers["X-Pages"].to_i <= 1
215
+ def normalize_headers(headers)
216
+ headers.transform_keys(&:downcase)
195
217
  end
196
218
 
197
219
  def raise_error(res)
198
- raise (ERROR_MAPPING[res.status] || Error).new("(#{res.status}) #{res["error"]}", response: res)
220
+ raise (ERROR_MAPPING[res.status] || ESI::Errors::ClientError).new("(#{res.status}) #{res["error"]}",
221
+ response: res)
199
222
  end
200
223
 
201
224
  def url_encoded_connection
202
225
  @url_encoded_connection ||= Faraday.new(base_url, headers: default_headers) do |f|
203
226
  f.use :http_cache, **cache unless cache.empty?
204
- f.request :url_encoded
205
- f.request :retry, { exceptions: ESI_RETRY_EXCEPTIONS }
206
- f.response :follow_redirects
227
+ f.request :retry, { exceptions: ESI_RETRY_EXCEPTIONS, max: 10, retry_statuses: [502, 503, 504] }
207
228
  f.response :json
229
+ f.adapter :typhoeus
208
230
  end
209
231
  end
210
232
 
@@ -212,14 +234,14 @@ module ESI
212
234
  @json_encoded_connection ||= Faraday.new(base_url, headers: default_headers) do |f|
213
235
  f.use :http_cache, **cache unless cache.empty?
214
236
  f.request :json
215
- f.request :retry, { exceptions: ESI_RETRY_EXCEPTIONS }
216
- f.response :follow_redirects
237
+ f.request :retry, { exceptions: ESI_RETRY_EXCEPTIONS, max: 10, retry_statuses: [502, 503, 504] }
217
238
  f.response :json
239
+ f.adapter :typhoeus
218
240
  end
219
241
  end
220
242
 
221
243
  def default_headers
222
- { "User-Agent": user_agent }
244
+ { "User-Agent": user_agent, Accept: "application/json" }
223
245
  end
224
246
  end
225
247
  end
@@ -13,7 +13,7 @@ module ESI
13
13
  # @esi_version v3
14
14
  # @esi_version v4
15
15
  #
16
- # @param alliance_id [Integer,String] An EVE alliance ID
16
+ # @param alliance_id [Integer] An EVE alliance ID
17
17
  # @param params [Hash] Additional query string parameters
18
18
  # @param headers [Hash] Additional headers
19
19
  #
@@ -25,7 +25,7 @@ module ESI
25
25
  # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
26
26
  #
27
27
  # @see https://esi.evetech.net/ui/#/Alliance/get_alliances_alliance_id
28
- def get_alliance(alliance_id:, params: {}, headers: {})
28
+ def get_alliance(alliance_id:, headers: {}, params: {})
29
29
  get("/alliances/#{alliance_id}/", headers: headers, params: params)
30
30
  end
31
31
  alias get_alliances_alliance_id get_alliance
@@ -39,7 +39,7 @@ module ESI
39
39
  # @esi_version v1
40
40
  # @esi_version v2
41
41
  #
42
- # @param alliance_id [Integer,String] An EVE alliance ID
42
+ # @param alliance_id [Integer] An EVE alliance ID
43
43
  # @param params [Hash] Additional query string parameters
44
44
  # @param headers [Hash] Additional headers
45
45
  #
@@ -50,7 +50,7 @@ module ESI
50
50
  # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
51
51
  #
52
52
  # @see https://esi.evetech.net/ui/#/Alliance/get_alliances_alliance_id_corporations
53
- def get_alliance_corporations(alliance_id:, params: {}, headers: {})
53
+ def get_alliance_corporations(alliance_id:, headers: {}, params: {})
54
54
  get("/alliances/#{alliance_id}/corporations/", headers: headers, params: params)
55
55
  end
56
56
  alias get_alliances_alliance_id_corporations get_alliance_corporations
@@ -60,7 +60,7 @@ module ESI
60
60
  # @esi_version legacy
61
61
  # @esi_version v1
62
62
  #
63
- # @param alliance_id [Integer,String] An EVE alliance ID
63
+ # @param alliance_id [Integer] An EVE alliance ID
64
64
  # @param params [Hash] Additional query string parameters
65
65
  # @param headers [Hash] Additional headers
66
66
  #
@@ -72,7 +72,7 @@ module ESI
72
72
  # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
73
73
  #
74
74
  # @see https://esi.evetech.net/ui/#/Alliance/get_alliances_alliance_id_icons
75
- def get_alliance_icons(alliance_id:, params: {}, headers: {})
75
+ def get_alliance_icons(alliance_id:, headers: {}, params: {})
76
76
  get("/alliances/#{alliance_id}/icons/", headers: headers, params: params)
77
77
  end
78
78
  alias get_alliances_alliance_id_icons get_alliance_icons
@@ -96,7 +96,7 @@ module ESI
96
96
  # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
97
97
  #
98
98
  # @see https://esi.evetech.net/ui/#/Alliance/get_alliances
99
- def get_alliances(params: {}, headers: {})
99
+ def get_alliances(headers: {}, params: {})
100
100
  get("/alliances/", headers: headers, params: params)
101
101
  end
102
102
  end