Class: NTimeLine::Pager
Overview
Pager is a class for search result summary.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#page ⇒ Object
readonly
Returns the value of attribute page.
-
#page_count ⇒ Object
(also: #size)
readonly
Returns the value of attribute page_count.
-
#request_params ⇒ Object
Returns the value of attribute request_params.
-
#total ⇒ Object
readonly
Returns the value of attribute total.
Attributes inherited from Base
Instance Method Summary collapse
-
#[](n) ⇒ Object
Goto a page at the number.
-
#initialize(doc) ⇒ Pager
constructor
:nodoc:.
-
#next ⇒ Object
Goto a next page.
-
#prev ⇒ Object
Goto a previous page.
Methods inherited from Base
bool_data, #init, int_data, #refresh, request, #request, request_with_key, #request_with_key, text_data, time_data, url_data
Constructor Details
#initialize(doc) ⇒ Pager
:nodoc:
8 9 10 11 12 13 |
# File 'lib/ntimeline/pager.rb', line 8 def initialize(doc) #:nodoc: summary = doc.root.elements["/response/result/summary"] @total = summary.elements["total"].text.to_i @page = summary.elements["page"].text.to_i @page_count = summary.elements["page_count"].text.to_i end |
Instance Attribute Details
#page ⇒ Object (readonly)
Returns the value of attribute page.
5 6 7 |
# File 'lib/ntimeline/pager.rb', line 5 def page @page end |
#page_count ⇒ Object (readonly) Also known as: size
Returns the value of attribute page_count.
5 6 7 |
# File 'lib/ntimeline/pager.rb', line 5 def page_count @page_count end |
#request_params ⇒ Object
Returns the value of attribute request_params.
6 7 8 |
# File 'lib/ntimeline/pager.rb', line 6 def request_params @request_params end |
#total ⇒ Object (readonly)
Returns the value of attribute total.
5 6 7 |
# File 'lib/ntimeline/pager.rb', line 5 def total @total end |
Instance Method Details
#[](n) ⇒ Object
Goto a page at the number.
- n
-
page number
33 34 35 36 37 38 |
# File 'lib/ntimeline/pager.rb', line 33 def [](n) if n > 0 && n < @page_count params = @request_params.merge(:page => n) request(self.class::PATH, params, self.class) end end |
#next ⇒ Object
Goto a next page.
24 25 26 27 28 29 |
# File 'lib/ntimeline/pager.rb', line 24 def next if @page < @page_count params = @request_params.merge(:page => @page + 1) request(self.class::PATH, params, self.class) end end |
#prev ⇒ Object
Goto a previous page.
16 17 18 19 20 21 |
# File 'lib/ntimeline/pager.rb', line 16 def prev if @page - 1 > 0 params = @request_params.merge(:page => @page - 1) request(self.class::PATH, params, self.class) end end |