class Seek

Attributes

options[R]

Public Class Methods

config() click to toggle source

Public: Returns the the configuration instance.

# File lib/seek/configuration.rb, line 25
def self.config
  @config ||= Configuration.new
end
configure() { |config| ... } click to toggle source

Public: Yields the configuration instance.

# File lib/seek/configuration.rb, line 31
def self.configure(&block)
  yield config
end
new(params = {}, options = {}) click to toggle source
# File lib/seek.rb, line 12
def initialize(params = {}, options = {})
  params = {} unless params
  self.page                   = params[:page]                    || params['page']
  self.per_page               = params[:per_page]                || params['per_page']
  self.sort_by                = params[:sort_by]                 || params['sort_by']
  self.sort_direction         = params[:sort_direction]          || params['sort_direction']
  self.max_per_page           = options[:max_per_page]           || options['max_per_page']
  self.valid_sort_bys         = options[:valid_sort_bys]         || options['valid_sort_bys']
  self.default_per_page       = options[:default_per_page]       || options['default_per_page']
  self.default_sort_by        = options[:default_sort_by]        || options['default_sort_by']
  self.default_sort_direction = options[:default_sort_direction] || options['default_sort_direction']
end
reset!() click to toggle source

Public: Reset the configuration (useful for testing)

# File lib/seek/configuration.rb, line 37
def self.reset!
  @config = nil
end

Public Instance Methods

to_hash() click to toggle source
# File lib/seek.rb, line 25
def to_hash
  {
    page: page,
    per_page: per_page,
    sort_by: sort_by,
    sort_direction: sort_direction,
    order: order,
  }
end