class AWS::Core::PageResult

Attributes

collection[R]

@return [Collection] Returns the collection that was used to

populated this page of results.
next_token[R]

@return [String] An opaque token that can be passed the page method

of the collection that returned this page of results.  This next
token behaves as a pseudo offset.  If +next_token+ is +nil+ then
there are no more results for the collection.
per_page[R]

@return [Integer] Returns the maximum number of results per page.

The final page in a collection may return fewer than +:per_page+
items (e.g. +:per_page+ is 10 and there are only 7 items).

Public Class Methods

new(collection, items, per_page, next_token) click to toggle source

@param [Collection] collection The collection that was used to

request this page of results.  The collection should respond to
#page and accept a :next_token option.

@param [Array] items An array of result items that represent a

page of results.

@param [Integer] #per_page The number of requested items for this

page of results.  If the count of items is smaller than +per_page+
then this is the last page of results.

@param [String] #next_token (nil) A token that can be passed to the

# File lib/aws/core/page_result.rb, line 47
def initialize collection, items, per_page, next_token
  @collection = collection
  @per_page = per_page
  @next_token = next_token
  super(items)
end

Public Instance Methods

last_page?() click to toggle source

@return [Boolean] Returns true if this is the last page of results.

# File lib/aws/core/page_result.rb, line 62
def last_page?
  next_token.nil?
end
more?() click to toggle source

@return [Boolean] Returns true if there are more pages of results.

# File lib/aws/core/page_result.rb, line 67
def more?
  !!next_token
end
next_page() click to toggle source
# File lib/aws/core/page_result.rb, line 54
def next_page
  if last_page?
    raise 'unable to get the next page, already at the last page'
  end
  collection.page(:per_page => per_page, :next_token => next_token)
end