Skip to content

Commit ec27839

Browse files
author
Kenneth Gallego
authored
Release v0.17.0.pre
* enhancements * Add customizable pagination size when sending `paginated: false` parameter to `#all` requests.
1 parent 3d37ac5 commit ec27839

7 files changed

Lines changed: 18 additions & 7 deletions

File tree

CHANGELOG.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
### v0.17.0.pre
2+
3+
* enhancements
4+
* Add customizable pagination size when sending `paginated: false` parameter to `#all` requests.
5+
16
### v0.16.1.pre
27

38
* bug-fixes
@@ -26,7 +31,7 @@
2631

2732
* features
2833
* Add `Products#assign_variation_attribute_as_differentiator`
29-
34+
3035
### v0.13.0.pre
3136

3237
* features

Gemfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
PATH
22
remote: .
33
specs:
4-
beyond_api (0.16.1.pre)
4+
beyond_api (0.17.0.pre)
55
faraday (~> 0.15)
66

77
GEM

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: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ def self.setup
2727
class Configuration
2828
attr_accessor :client_id, :client_secret, :open_timeout, :timeout, :remove_response_links,
2929
:remove_response_key_underscores, :object_struct_responses, :raise_error_requests,
30-
:log_headers, :log_bodies, :log_level
30+
:log_headers, :log_bodies, :log_level, :all_pagination_size
3131

3232
def initialize
3333
@client_id = nil
@@ -42,6 +42,8 @@ def initialize
4242
@log_level = :info
4343
@log_headers = false
4444
@log_bodies = false
45+
46+
@all_pagination_size = 200
4547
end
4648
end
4749
end

lib/beyond_api/utils.rb

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,13 @@ def sanitize_key(key)
4545
end
4646

4747
def handle_all_request(url, resource, params = {})
48+
paginated_size = BeyondApi.configuration.all_pagination_size
4849

4950
if params[:paginated] == false
50-
result = all_paginated(url, params.merge(page: 0, size: 1000))
51+
result = all_paginated(url, params.merge(page: 0, size: paginated_size))
5152

5253
(1..result[:page][:total_pages] - 1).each do |page|
53-
result[:embedded][resource].concat(all_paginated(url, params.merge(page: page, size: 1000))[:embedded][resource])
54+
result[:embedded][resource].concat(all_paginated(url, params.merge(page: page, size: paginated_size))[:embedded][resource])
5455
end
5556

5657
result[:page][:size] = result[:page][:total_elements]

lib/beyond_api/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module BeyondApi
2-
VERSION = "0.16.1.pre".freeze
2+
VERSION = "0.17.0.pre".freeze
33
end

lib/generators/templates/beyond_api_initializer.rb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@
1212
# Configure the request timeout in seconds. Default is 5 seconds.
1313
# config.timeout = 5.seconds
1414

15+
# Configure the pagination size when `paginated: false` is sent on `.all()` requests. Value must be between 1 and 1000.
16+
# config.all_pagination_size = 200
17+
1518
# ==> Log configuration
1619

1720
# Configure the log level. Must be one of :debug, :info, :warn, :error,

0 commit comments

Comments
 (0)