Skip to content

Commit eed1442

Browse files
author
Unai Abrisketa
committed
Merge remote-tracking branch 'upstream/master'
2 parents 2094593 + ec27839 commit eed1442

File tree

14 files changed

+543
-56
lines changed

14 files changed

+543
-56
lines changed

CHANGELOG.md

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,48 @@
1+
### v0.17.0.pre
2+
3+
* enhancements
4+
* Add customizable pagination size when sending `paginated: false` parameter to `#all` requests.
5+
6+
### v0.16.1.pre
7+
8+
* bug-fixes
9+
* Fix method to retrieve resources without pagination
10+
11+
### v0.16.0.pre
12+
13+
* features
14+
* Add pickup options methods
15+
* `PickupOptions#delete`
16+
* `PickupOptions#find`
17+
* `PickupOptions#sort`
18+
* `PickupOptions#update`
19+
20+
### v0.15.0.pre
21+
22+
* features
23+
* Add pickup options methods
24+
* `PickupOptions#all`
25+
* `PickupOptions#create`
26+
27+
### v0.14.0.pre
28+
29+
* deprecations
30+
* Remove `Products#assign_variation_images_differentiator`
31+
32+
* features
33+
* Add `Products#assign_variation_attribute_as_differentiator`
34+
35+
### v0.13.0.pre
36+
37+
* features
38+
* Add payment method definitions methods
39+
* `PaymentMethodDefinitions#all`
40+
* `PaymentMethodDefinitions#create`
41+
* `PaymentMethodDefinitions#delete`
42+
* `PaymentMethodDefinitions#find`
43+
* `PaymentMethodDefinitions#update`
44+
* Add possibility to log request `headers` and `bodies`
45+
146
### v0.12.1.pre
247

348
* bug-fixes
@@ -14,7 +59,7 @@
1459
* `Locations#update`
1560

1661
* enhancements
17-
* Use `autoload` instead of `require`
62+
* Use `autoload` instead of `require`
1863

1964
### v0.11.1.pre
2065

Gemfile.lock

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,42 @@
11
PATH
22
remote: .
33
specs:
4-
beyond_api (0.12.1.pre)
4+
beyond_api (0.17.0.pre)
55
faraday (~> 0.15)
66

77
GEM
88
remote: https://rubygems.org/
99
specs:
10-
coderay (1.1.2)
11-
concurrent-ruby (1.1.5)
12-
diff-lcs (1.3)
13-
dotenv (2.7.5)
14-
faker (2.4.0)
15-
i18n (~> 1.6.0)
16-
faraday (0.17.3)
10+
coderay (1.1.3)
11+
concurrent-ruby (1.1.9)
12+
diff-lcs (1.4.4)
13+
dotenv (2.7.6)
14+
faker (2.18.0)
15+
i18n (>= 1.6, < 2)
16+
faraday (0.17.4)
1717
multipart-post (>= 1.2, < 3)
18-
i18n (1.6.0)
18+
i18n (1.8.10)
1919
concurrent-ruby (~> 1.0)
20-
method_source (0.9.2)
20+
method_source (1.0.0)
2121
multipart-post (2.1.1)
22-
pry (0.12.2)
23-
coderay (~> 1.1.0)
24-
method_source (~> 0.9.0)
22+
pry (0.14.1)
23+
coderay (~> 1.1)
24+
method_source (~> 1.0)
2525
rake (10.5.0)
26-
rspec (3.8.0)
27-
rspec-core (~> 3.8.0)
28-
rspec-expectations (~> 3.8.0)
29-
rspec-mocks (~> 3.8.0)
30-
rspec-core (3.8.2)
31-
rspec-support (~> 3.8.0)
32-
rspec-expectations (3.8.4)
26+
rspec (3.10.0)
27+
rspec-core (~> 3.10.0)
28+
rspec-expectations (~> 3.10.0)
29+
rspec-mocks (~> 3.10.0)
30+
rspec-core (3.10.1)
31+
rspec-support (~> 3.10.0)
32+
rspec-expectations (3.10.1)
3333
diff-lcs (>= 1.2.0, < 2.0)
34-
rspec-support (~> 3.8.0)
35-
rspec-mocks (3.8.1)
34+
rspec-support (~> 3.10.0)
35+
rspec-mocks (3.10.2)
3636
diff-lcs (>= 1.2.0, < 2.0)
37-
rspec-support (~> 3.8.0)
38-
rspec-support (3.8.2)
39-
yard (0.9.20)
37+
rspec-support (~> 3.10.0)
38+
rspec-support (3.10.2)
39+
yard (0.9.26)
4040

4141
PLATFORMS
4242
ruby

beyond_api.gemspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ require "beyond_api/version"
66
Gem::Specification.new do |spec|
77
spec.name = "beyond_api"
88
spec.version = BeyondApi::VERSION
9-
spec.authors = ["Unai Abrisketa", "Kathia Salazar", "German San Emeterio"]
9+
spec.authors = ["Unai Abrisketa", "Kathia Salazar", "German San Emeterio", "Kenneth Gallego"]
1010

1111
spec.summary = "Ruby client to access the Beyond API"
1212
spec.homepage = "https://github.com/ePages-de/beyond_api-ruby_client"

lib/beyond_api.rb

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,18 @@
11
require "beyond_api/version"
22

3-
require "beyond_api/connection"
4-
require "beyond_api/request"
5-
require "beyond_api/session"
6-
require "beyond_api/error"
3+
require "logger"
74

85
require "beyond_api/ext"
96
require "beyond_api/utils"
107

11-
require "logger"
12-
138
module BeyondApi
14-
def self.logger
15-
@@logger ||= defined?(Rails) ? Rails.logger : Logger.new(STDOUT)
16-
end
9+
autoload :Connection, "beyond_api/connection"
10+
autoload :Error, "beyond_api/error"
11+
autoload :Logger, "beyond_api/logger"
12+
autoload :Request, "beyond_api/request"
13+
autoload :Session, "beyond_api/session"
1714

18-
def self.logger=(logger)
19-
@@logger = logger
20-
end
15+
extend BeyondApi::Logger
2116

2217
class << self
2318
attr_accessor :configuration
@@ -31,7 +26,8 @@ def self.setup
3126

3227
class Configuration
3328
attr_accessor :client_id, :client_secret, :open_timeout, :timeout, :remove_response_links,
34-
:remove_response_key_underscores, :object_struct_responses, :raise_error_requests
29+
:remove_response_key_underscores, :object_struct_responses, :raise_error_requests,
30+
:log_headers, :log_bodies, :log_level, :all_pagination_size
3531

3632
def initialize
3733
@client_id = nil
@@ -42,6 +38,12 @@ def initialize
4238
@remove_response_key_underscores = false
4339
@object_struct_responses = false
4440
@raise_error_requests = false
41+
42+
@log_level = :info
43+
@log_headers = false
44+
@log_bodies = false
45+
46+
@all_pagination_size = 200
4547
end
4648
end
4749
end

lib/beyond_api/connection.rb

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,15 @@
44

55
module BeyondApi
66
class Connection
7+
LOGGER = ::BeyondApi.logger
8+
LOGGER.level = Kernel.const_get("::Logger::#{BeyondApi.configuration.log_level.to_s.upcase}")
9+
710
def self.default
811
Faraday.new(ssl: { verify: true }) do |faraday|
912
faraday.options[:open_timeout] = BeyondApi.configuration.open_timeout.to_i
1013
faraday.options[:timeout] = BeyondApi.configuration.timeout.to_i
14+
faraday.response :logger, LOGGER, { headers: BeyondApi.configuration.log_headers,
15+
bodies: BeyondApi.configuration.log_bodies }
1116
faraday.headers['Accept'] = 'application/json'
1217
faraday.headers['Content-Type'] = 'application/json'
1318
faraday.request(:multipart)
@@ -20,6 +25,8 @@ def self.token
2025
Faraday.new(ssl: { verify: true }) do |faraday|
2126
faraday.options[:open_timeout] = BeyondApi.configuration.open_timeout.to_i
2227
faraday.options[:timeout] = BeyondApi.configuration.timeout.to_i
28+
faraday.response :logger, LOGGER, { headers: BeyondApi.configuration.log_headers,
29+
bodies: BeyondApi.configuration.log_bodies }
2330
faraday.headers['Accept'] = 'application/json'
2431
faraday.adapter(:net_http)
2532
faraday.basic_auth(BeyondApi.configuration.client_id,

lib/beyond_api/logger.rb

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# frozen_string_literal: true
2+
3+
module BeyondApi
4+
module Logger
5+
def logger
6+
@@logger ||= defined?(Rails) ? ::Rails.logger : ::Logger.new($stdout)
7+
end
8+
9+
def logger=(logger)
10+
@@logger = logger
11+
end
12+
end
13+
end

0 commit comments

Comments
 (0)