beyond_api 0.24.2.pre → 0.24.3.pre
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 +4 -4
- data/Gemfile.lock +1 -1
- data/lib/beyond_api/connection.rb +4 -3
- data/lib/beyond_api/error.rb +2 -0
- data/lib/beyond_api/utils.rb +7 -1
- data/lib/beyond_api/version.rb +1 -1
- data/lib/beyond_api.rb +10 -1
- data/lib/generators/templates/beyond_api_initializer.rb +14 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c9a08ccefc4acb0bfeacf32a46a5245957fecd2aa36e382417031a641638bb0c
|
4
|
+
data.tar.gz: 5841b98257b1233859ac6e4066172411017560aca64abf3e87ec134452949d4a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d6a82f6ff8d9902d48541ca9a4e1d0458b42256cc3678c2960a7fad0e99cc6648fbd0ff3a93f795405ad22048bd4bf3c08d697175b2c8981b11f656b23b061ed
|
7
|
+
data.tar.gz: 1dab71c2c694618119f57aaad1fe46a5febf61a104ae5251e737e83418883d449a01cb1b2646f236011acef501877bf8f25bc62ba4ca3a3b51ce2fc78dbe747d
|
data/Gemfile.lock
CHANGED
@@ -9,15 +9,16 @@ module BeyondApi
|
|
9
9
|
|
10
10
|
def self.default
|
11
11
|
Faraday.new(ssl: { verify: true }) do |faraday|
|
12
|
+
faraday.adapter(:net_http)
|
12
13
|
faraday.options[:open_timeout] = BeyondApi.configuration.open_timeout.to_i
|
13
14
|
faraday.options[:timeout] = BeyondApi.configuration.timeout.to_i
|
14
|
-
faraday.response :logger, LOGGER, { headers: BeyondApi.configuration.log_headers,
|
15
|
-
bodies: BeyondApi.configuration.log_bodies }
|
16
15
|
faraday.headers["Accept"] = "application/json"
|
17
16
|
faraday.headers["Content-Type"] = "application/json"
|
18
17
|
faraday.request(:multipart)
|
19
18
|
faraday.request(:url_encoded)
|
20
|
-
faraday.
|
19
|
+
faraday.request(:retry, BeyondApi.configuration.retry_options)
|
20
|
+
faraday.response :logger, LOGGER, { headers: BeyondApi.configuration.log_headers,
|
21
|
+
bodies: BeyondApi.configuration.log_bodies }
|
21
22
|
end
|
22
23
|
end
|
23
24
|
|
data/lib/beyond_api/error.rb
CHANGED
@@ -5,6 +5,8 @@ module BeyondApi
|
|
5
5
|
attr_reader :error_id, :details, :trace_id, :full_message, :status_code, :error, :error_description
|
6
6
|
|
7
7
|
def initialize(data, status_code = nil)
|
8
|
+
data ||= {}
|
9
|
+
|
8
10
|
@error_id = data["errorId"]
|
9
11
|
@details = data["details"]
|
10
12
|
@trace_id = data["traceId"]
|
data/lib/beyond_api/utils.rb
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "ostruct"
|
4
|
+
|
3
5
|
module BeyondApi
|
4
6
|
module Utils
|
5
7
|
extend self
|
@@ -22,7 +24,11 @@ module BeyondApi
|
|
22
24
|
result = all_paginated(url, params.merge(page: 0, size: paginated_size))
|
23
25
|
|
24
26
|
(1..result[:page][:total_pages] - 1).each do |page|
|
25
|
-
result[:embedded][resource].concat(
|
27
|
+
result[:embedded][resource].concat(
|
28
|
+
all_paginated(url,
|
29
|
+
params.merge(page: page,
|
30
|
+
size: paginated_size))[:embedded][resource]
|
31
|
+
)
|
26
32
|
end
|
27
33
|
|
28
34
|
result[:page][:size] = result[:page][:total_elements]
|
data/lib/beyond_api/version.rb
CHANGED
data/lib/beyond_api.rb
CHANGED
@@ -29,7 +29,7 @@ module BeyondApi
|
|
29
29
|
class Configuration
|
30
30
|
attr_accessor :client_id, :client_secret, :open_timeout, :timeout, :remove_response_links,
|
31
31
|
:remove_response_key_underscores, :object_struct_responses, :raise_error_requests,
|
32
|
-
:log_headers, :log_bodies, :log_level, :all_pagination_size
|
32
|
+
:log_headers, :log_bodies, :log_level, :all_pagination_size, :retry_options
|
33
33
|
|
34
34
|
def initialize
|
35
35
|
@client_id = nil
|
@@ -46,6 +46,15 @@ module BeyondApi
|
|
46
46
|
@log_bodies = false
|
47
47
|
|
48
48
|
@all_pagination_size = 200
|
49
|
+
|
50
|
+
@retry_options = {
|
51
|
+
max: 5,
|
52
|
+
interval: 0.05,
|
53
|
+
interval_randomness: 0.5,
|
54
|
+
backoff_factor: 2,
|
55
|
+
retry_statuses: [409],
|
56
|
+
exceptions: [Faraday::TimeoutError, Faraday::ConnectionFailed]
|
57
|
+
}
|
49
58
|
end
|
50
59
|
end
|
51
60
|
end
|
@@ -50,4 +50,18 @@ BeyondApi.setup do |config|
|
|
50
50
|
# BeyondApi::Error object with detailed information of the error.
|
51
51
|
# Default is false.
|
52
52
|
# config.raise_error_requests = false
|
53
|
+
|
54
|
+
# ==> Retry configuration
|
55
|
+
# Configure the retry options for requests. Default is:
|
56
|
+
# config.retry_options = {
|
57
|
+
# max: 5,
|
58
|
+
# interval: 0.05,
|
59
|
+
# interval_randomness: 0.5,
|
60
|
+
# backoff_factor: 2,
|
61
|
+
# retry_statuses: [409],
|
62
|
+
# exceptions: [Faraday::TimeoutError, Faraday::ConnectionFailed]
|
63
|
+
# }
|
64
|
+
# Or you can set single retry options like this:
|
65
|
+
# config.retry_options[:max] = 5
|
66
|
+
# config.retry_options[:interval] = 1
|
53
67
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: beyond_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.24.
|
4
|
+
version: 0.24.3.pre
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Unai Abrisketa
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: exe
|
13
13
|
cert_chain: []
|
14
|
-
date: 2024-
|
14
|
+
date: 2024-11-15 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: bundler
|