Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
Unai Abrisketa committed Aug 12, 2021
2 parents 2094593 + ec27839 commit eed1442
Show file tree
Hide file tree
Showing 14 changed files with 543 additions and 56 deletions.
47 changes: 46 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,48 @@
### v0.17.0.pre

* enhancements
* Add customizable pagination size when sending `paginated: false` parameter to `#all` requests.

### v0.16.1.pre

* bug-fixes
* Fix method to retrieve resources without pagination

### v0.16.0.pre

* features
* Add pickup options methods
* `PickupOptions#delete`
* `PickupOptions#find`
* `PickupOptions#sort`
* `PickupOptions#update`

### v0.15.0.pre

* features
* Add pickup options methods
* `PickupOptions#all`
* `PickupOptions#create`

### v0.14.0.pre

* deprecations
* Remove `Products#assign_variation_images_differentiator`

* features
* Add `Products#assign_variation_attribute_as_differentiator`

### v0.13.0.pre

* features
* Add payment method definitions methods
* `PaymentMethodDefinitions#all`
* `PaymentMethodDefinitions#create`
* `PaymentMethodDefinitions#delete`
* `PaymentMethodDefinitions#find`
* `PaymentMethodDefinitions#update`
* Add possibility to log request `headers` and `bodies`

### v0.12.1.pre

* bug-fixes
Expand All @@ -14,7 +59,7 @@
* `Locations#update`

* enhancements
* Use `autoload` instead of `require`
* Use `autoload` instead of `require`

### v0.11.1.pre

Expand Down
50 changes: 25 additions & 25 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,42 +1,42 @@
PATH
remote: .
specs:
beyond_api (0.12.1.pre)
beyond_api (0.17.0.pre)
faraday (~> 0.15)

GEM
remote: https://rubygems.org/
specs:
coderay (1.1.2)
concurrent-ruby (1.1.5)
diff-lcs (1.3)
dotenv (2.7.5)
faker (2.4.0)
i18n (~> 1.6.0)
faraday (0.17.3)
coderay (1.1.3)
concurrent-ruby (1.1.9)
diff-lcs (1.4.4)
dotenv (2.7.6)
faker (2.18.0)
i18n (>= 1.6, < 2)
faraday (0.17.4)
multipart-post (>= 1.2, < 3)
i18n (1.6.0)
i18n (1.8.10)
concurrent-ruby (~> 1.0)
method_source (0.9.2)
method_source (1.0.0)
multipart-post (2.1.1)
pry (0.12.2)
coderay (~> 1.1.0)
method_source (~> 0.9.0)
pry (0.14.1)
coderay (~> 1.1)
method_source (~> 1.0)
rake (10.5.0)
rspec (3.8.0)
rspec-core (~> 3.8.0)
rspec-expectations (~> 3.8.0)
rspec-mocks (~> 3.8.0)
rspec-core (3.8.2)
rspec-support (~> 3.8.0)
rspec-expectations (3.8.4)
rspec (3.10.0)
rspec-core (~> 3.10.0)
rspec-expectations (~> 3.10.0)
rspec-mocks (~> 3.10.0)
rspec-core (3.10.1)
rspec-support (~> 3.10.0)
rspec-expectations (3.10.1)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0)
rspec-mocks (3.8.1)
rspec-support (~> 3.10.0)
rspec-mocks (3.10.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0)
rspec-support (3.8.2)
yard (0.9.20)
rspec-support (~> 3.10.0)
rspec-support (3.10.2)
yard (0.9.26)

PLATFORMS
ruby
Expand Down
2 changes: 1 addition & 1 deletion beyond_api.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ require "beyond_api/version"
Gem::Specification.new do |spec|
spec.name = "beyond_api"
spec.version = BeyondApi::VERSION
spec.authors = ["Unai Abrisketa", "Kathia Salazar", "German San Emeterio"]
spec.authors = ["Unai Abrisketa", "Kathia Salazar", "German San Emeterio", "Kenneth Gallego"]

spec.summary = "Ruby client to access the Beyond API"
spec.homepage = "/~https://github.com/ePages-de/beyond_api-ruby_client"
Expand Down
28 changes: 15 additions & 13 deletions lib/beyond_api.rb
Original file line number Diff line number Diff line change
@@ -1,23 +1,18 @@
require "beyond_api/version"

require "beyond_api/connection"
require "beyond_api/request"
require "beyond_api/session"
require "beyond_api/error"
require "logger"

require "beyond_api/ext"
require "beyond_api/utils"

require "logger"

module BeyondApi
def self.logger
@@logger ||= defined?(Rails) ? Rails.logger : Logger.new(STDOUT)
end
autoload :Connection, "beyond_api/connection"
autoload :Error, "beyond_api/error"
autoload :Logger, "beyond_api/logger"
autoload :Request, "beyond_api/request"
autoload :Session, "beyond_api/session"

def self.logger=(logger)
@@logger = logger
end
extend BeyondApi::Logger

class << self
attr_accessor :configuration
Expand All @@ -31,7 +26,8 @@ def self.setup

class Configuration
attr_accessor :client_id, :client_secret, :open_timeout, :timeout, :remove_response_links,
:remove_response_key_underscores, :object_struct_responses, :raise_error_requests
:remove_response_key_underscores, :object_struct_responses, :raise_error_requests,
:log_headers, :log_bodies, :log_level, :all_pagination_size

def initialize
@client_id = nil
Expand All @@ -42,6 +38,12 @@ def initialize
@remove_response_key_underscores = false
@object_struct_responses = false
@raise_error_requests = false

@log_level = :info
@log_headers = false
@log_bodies = false

@all_pagination_size = 200
end
end
end
7 changes: 7 additions & 0 deletions lib/beyond_api/connection.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,15 @@

module BeyondApi
class Connection
LOGGER = ::BeyondApi.logger
LOGGER.level = Kernel.const_get("::Logger::#{BeyondApi.configuration.log_level.to_s.upcase}")

def self.default
Faraday.new(ssl: { verify: true }) do |faraday|
faraday.options[:open_timeout] = BeyondApi.configuration.open_timeout.to_i
faraday.options[:timeout] = BeyondApi.configuration.timeout.to_i
faraday.response :logger, LOGGER, { headers: BeyondApi.configuration.log_headers,
bodies: BeyondApi.configuration.log_bodies }
faraday.headers['Accept'] = 'application/json'
faraday.headers['Content-Type'] = 'application/json'
faraday.request(:multipart)
Expand All @@ -20,6 +25,8 @@ def self.token
Faraday.new(ssl: { verify: true }) do |faraday|
faraday.options[:open_timeout] = BeyondApi.configuration.open_timeout.to_i
faraday.options[:timeout] = BeyondApi.configuration.timeout.to_i
faraday.response :logger, LOGGER, { headers: BeyondApi.configuration.log_headers,
bodies: BeyondApi.configuration.log_bodies }
faraday.headers['Accept'] = 'application/json'
faraday.adapter(:net_http)
faraday.basic_auth(BeyondApi.configuration.client_id,
Expand Down
13 changes: 13 additions & 0 deletions lib/beyond_api/logger.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# frozen_string_literal: true

module BeyondApi
module Logger
def logger
@@logger ||= defined?(Rails) ? ::Rails.logger : ::Logger.new($stdout)
end

def logger=(logger)
@@logger = logger
end
end
end
Loading

0 comments on commit eed1442

Please sign in to comment.