class SearchYJ::RecordSorter
Sort the process for each records
@author [indeep-xyz]
Attributes
rank[RW]
Public Class Methods
new(rank, logger_size)
click to toggle source
Initialize myself @param rank [Integer]
The starting number of the rank of the records
@param logger_size [Integer]
The logging size of UniqueLogger
@return [type] [description]
# File lib/searchyj/record_sorter.rb, line 19 def initialize(rank, logger_size) @rank = rank initialize_logger(logger_size) end
Public Instance Methods
initialize_logger(size)
click to toggle source
Initialize the instance of UniqueLogger
@param size [Integer] The logging size of UniqueLogger
@return [type] [description]
# File lib/searchyj/record_sorter.rb, line 28 def initialize_logger(size) @logger = UniqueLogger.new(size) end
page_gap()
click to toggle source
Return the number of page gap in the searching. And reset logger’s count.
@return [Integer]
# File lib/searchyj/record_sorter.rb, line 36 def page_gap @logger.failure_count(true) end
run(records, &block)
click to toggle source
# File lib/searchyj/record_sorter.rb, line 40 def run(records, &block) records.each do |record| next if @logger.add(record[:uri]) == false record[:rank] = @rank block.call(record) @rank += 1 end end