class SearchYJ::PageSizeAdjuster

Manage cookie for page

@author [indeep-xyz]

Constants

EXPIRE_DELAY
SIZE_DEFAULT
SIZE_PATTERN

Attributes

size[R]

Public Class Methods

new() click to toggle source

Initialize myself.

# File lib/searchyj/page_size_adjuster.rb, line 20
def initialize
  @size   = SIZE_DEFAULT
  @expire = Time.now.to_i + EXPIRE_DELAY
end

Public Instance Methods

optimize_page_size(size) click to toggle source

Optimize the number of the page size for searching. @param size [Number] The number of the page size

@return [Number] The optimized number

# File lib/searchyj/page_size_adjuster.rb, line 33
def optimize_page_size(size)
  SIZE_PATTERN.reverse_each do |n|
    return n if size >= n
  end

  SIZE_DEFAULT
end
size=(size) click to toggle source
# File lib/searchyj/page_size_adjuster.rb, line 25
def size=(size)
  @size = optimize_page_size(size)
end

Private Instance Methods