Class: NexosisApi::ListQuery
- Inherits:
-
Object
- Object
- NexosisApi::ListQuery
- Defined in:
- lib/nexosis_api/list_queries.rb
Overview
Class to hold general query options for list requests
Direct Known Subclasses
DatasetListQuery, ImportListQuery, ModelListQuery, SessionListQuery
Instance Attribute Summary collapse
-
#page_number ⇒ Integer
zero-based page number of results to retrieve.
-
#page_size ⇒ Integer
Count of results to retrieve in each page (max 1000).
-
#sort_by ⇒ String
The name of an entity property to sort by.
-
#sort_order ⇒ NexosisApi::SortOrder
Direction to sort the results.
Instance Method Summary collapse
-
#initialize(options = { 'page_number': 0, 'page_size': 50 }, *additional_keys) ⇒ ListQuery
constructor
A new instance of ListQuery.
- #to_hash ⇒ Object
Constructor Details
#initialize(options = { 'page_number': 0, 'page_size': 50 }, *additional_keys) ⇒ ListQuery
Returns a new instance of ListQuery.
6 7 8 9 10 11 12 |
# File 'lib/nexosis_api/list_queries.rb', line 6 def initialize( = { 'page_number': 0, 'page_size': 50 }, *additional_keys) assert_valid_keys(, :page_number, :page_size, :sort_order, :sort_by, additional_keys) @page_number = .key?(:page_number) ? [:page_number] : 0 @page_size = .key?(:page_size) ? [:page_size] : 50 @sort_order = NexosisApi::SortOrder.const_get([:sort_order].upcase) if .key? :sort_order @sort_by = [:sort_by] if .key? :sort_by end |
Instance Attribute Details
#page_number ⇒ Integer
zero-based page number of results to retrieve
30 31 32 |
# File 'lib/nexosis_api/list_queries.rb', line 30 def page_number @page_number end |
#page_size ⇒ Integer
Count of results to retrieve in each page (max 1000).
26 27 28 |
# File 'lib/nexosis_api/list_queries.rb', line 26 def page_size @page_size end |
#sort_by ⇒ String
Note:
-
each entity has different possibilities. See the api doc links on each list type for more information.
The name of an entity property to sort by
39 40 41 |
# File 'lib/nexosis_api/list_queries.rb', line 39 def sort_by @sort_by end |
#sort_order ⇒ NexosisApi::SortOrder
Direction to sort the results.
34 35 36 |
# File 'lib/nexosis_api/list_queries.rb', line 34 def sort_order @sort_order end |
Instance Method Details
#to_hash ⇒ Object
14 15 16 17 18 19 20 21 22 |
# File 'lib/nexosis_api/list_queries.rb', line 14 def to_hash query = { 'page': @page_number, 'pageSize': @page_size } query.store(:sortOrder, @sort_order) unless @sort_order.nil? query.store(:sortBy, @sort_by) unless @sort_by.nil? query end |