Skip to content

Commit 1c1c1c9

Browse files
committed
Rename configuration options for clarity
pagination_links => top_level_links_include_pagination record_count_in_meta => top_level_meta_include_record_count record_count_meta_key => top_level_meta_record_count_key
1 parent 743886e commit 1c1c1c9

5 files changed

Lines changed: 33 additions & 28 deletions

File tree

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -540,8 +540,8 @@ The operation callbacks have access to two meta data hashes, `@operations_meta`
540540

541541
##### Custom `OperationsProcessor` Example to Return total_count in Meta
542542

543-
Note: this can also be accomplished with the `record_count_in_meta` option, and in most cases that will be the better
544-
option.
543+
Note: this can also be accomplished with the `top_level_meta_include_record_count` option, and in most cases that will
544+
be the better option.
545545

546546
To return the total record count of a find operation in the meta data of a find operation you can create a custom
547547
OperationsProcessor. For example:
@@ -1201,14 +1201,14 @@ JSONAPI.configure do |config|
12011201
config.default_paginator = :none
12021202

12031203
# Output pagination links at top level
1204-
config.pagination_links = true
1204+
config.top_level_links_include_pagination = true
12051205

12061206
config.default_page_size = 10
12071207
config.maximum_page_size = 20
12081208

12091209
# Output the record count in top level meta data for find operations
1210-
config.record_count_in_meta = false
1211-
config.record_count_meta_key = :record_count
1210+
config.top_level_meta_include_record_count = false
1211+
config.top_level_meta_record_count_key = :record_count
12121212

12131213
config.use_text_errors = false
12141214
end

lib/jsonapi/configuration.rb

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ class Configuration
1414
:default_page_size,
1515
:maximum_page_size,
1616
:use_text_errors,
17-
:pagination_links,
18-
:record_count_in_meta,
19-
:record_count_meta_key
17+
:top_level_links_include_pagination,
18+
:top_level_meta_include_record_count,
19+
:top_level_meta_record_count_key
2020

2121
def initialize
2222
#:underscored_key, :camelized_key, :dasherized_key, or custom
@@ -34,15 +34,15 @@ def initialize
3434
self.default_paginator = :none
3535

3636
# Output pagination links at top level
37-
self.pagination_links = true
37+
self.top_level_links_include_pagination = true
3838

3939
self.default_page_size = 10
4040
self.maximum_page_size = 20
4141

4242
# Metadata
4343
# Output record count in top level meta for find operation
44-
self.record_count_in_meta = false
45-
self.record_count_meta_key = :record_count
44+
self.top_level_meta_include_record_count = false
45+
self.top_level_meta_record_count_key = :record_count
4646

4747
self.use_text_errors = false
4848
end
@@ -82,16 +82,16 @@ def use_text_errors=(use_text_errors)
8282
@use_text_errors = use_text_errors
8383
end
8484

85-
def pagination_links=(pagination_links)
86-
@pagination_links = pagination_links
85+
def top_level_links_include_pagination=(top_level_links_include_pagination)
86+
@top_level_links_include_pagination = top_level_links_include_pagination
8787
end
8888

89-
def record_count_in_meta=(record_count_in_meta)
90-
@record_count_in_meta = record_count_in_meta
89+
def top_level_meta_include_record_count=(top_level_meta_include_record_count)
90+
@top_level_meta_include_record_count = top_level_meta_include_record_count
9191
end
9292

93-
def record_count_meta_key=(record_count_meta_key)
94-
@record_count_meta_key = record_count_meta_key
93+
def top_level_meta_record_count_key=(top_level_meta_record_count_key)
94+
@top_level_meta_record_count_key = top_level_meta_record_count_key
9595
end
9696
end
9797

lib/jsonapi/operation.rb

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ def record_count
3030
end
3131

3232
def pagination_params
33-
if @paginator && JSONAPI.configuration.pagination_links
33+
if @paginator && JSONAPI.configuration.top_level_links_include_pagination
3434
options = {}
3535
options[:record_count] = record_count if @paginator.class.requires_record_count
3636
return @paginator.links_page_params(options)
@@ -47,8 +47,13 @@ def apply(context)
4747
paginator: @paginator)
4848

4949
options = {}
50-
options[:pagination_params] = pagination_params if JSONAPI.configuration.pagination_links
51-
options[:record_count] = record_count if JSONAPI.configuration.record_count_in_meta
50+
if JSONAPI.configuration.top_level_links_include_pagination
51+
options[:pagination_params] = pagination_params
52+
end
53+
54+
if JSONAPI.configuration.top_level_meta_include_record_count
55+
options[:record_count] = record_count
56+
end
5257

5358
return JSONAPI::ResourcesOperationResult.new(:ok,
5459
resource_records,

lib/jsonapi/response_document.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ def top_level_meta
5050
@operation_results.results.each do |result|
5151
meta.merge!(result.meta)
5252

53-
if JSONAPI.configuration.record_count_in_meta
54-
meta[JSONAPI.configuration.record_count_meta_key] = result.record_count
53+
if JSONAPI.configuration.top_level_meta_include_record_count
54+
meta[JSONAPI.configuration.top_level_meta_record_count_key] = result.record_count
5555
end
5656
end
5757

test/controllers/controller_test.rb

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2150,9 +2150,9 @@ def test_books_offset_pagination_no_params
21502150

21512151
def test_books_record_count_in_meta
21522152
Api::V2::BookResource.paginator :offset
2153-
JSONAPI.configuration.record_count_in_meta = true
2153+
JSONAPI.configuration.top_level_meta_include_record_count = true
21542154
get :index, {include: 'book-comments'}
2155-
JSONAPI.configuration.record_count_in_meta = false
2155+
JSONAPI.configuration.top_level_meta_include_record_count = false
21562156

21572157
assert_response :success
21582158
assert_equal 1000, json_response['meta']['record-count']
@@ -2162,12 +2162,12 @@ def test_books_record_count_in_meta
21622162

21632163
def test_books_record_count_in_meta_custom_name
21642164
Api::V2::BookResource.paginator :offset
2165-
JSONAPI.configuration.record_count_in_meta = true
2166-
JSONAPI.configuration.record_count_meta_key = 'total_records'
2165+
JSONAPI.configuration.top_level_meta_include_record_count = true
2166+
JSONAPI.configuration.top_level_meta_record_count_key = 'total_records'
21672167

21682168
get :index, {include: 'book-comments'}
2169-
JSONAPI.configuration.record_count_in_meta = false
2170-
JSONAPI.configuration.record_count_meta_key = :record_count
2169+
JSONAPI.configuration.top_level_meta_include_record_count = false
2170+
JSONAPI.configuration.top_level_meta_record_count_key = :record_count
21712171

21722172
assert_response :success
21732173
assert_equal 1000, json_response['meta']['total-records']

0 commit comments

Comments
 (0)