Module: Amadeus::Client::Pagination

Included in:
Amadeus::Client
Defined in:
lib/amadeus/client/pagination.rb

Overview

Helper methods to for the Response object to help it paginate to next, previous, and first/last pages

Instance Method Summary collapse

Instance Method Details

#first(response) ⇒ Amadeus::Response

Finds the first page, if there is any, and otherwise returns nil

Examples:

Fetch the first page

page10 = amadeus.reference_data.locations.get(
  keyword: 'lon',
  subType: Amadeus::Location::ANY,
  page: { offset: 10 }
)
page1 = amadeus.first(page1)

Parameters:

Returns:



78
79
80
# File 'lib/amadeus/client/pagination.rb', line 78

def first(response)
  page(:first, response)
end

#last(response) ⇒ Amadeus::Response

Finds the last page, if there is any, and otherwise returns nil

Examples:

Fetch the last page

page1 = amadeus.reference_data.locations.get(
  keyword: 'lon',
  subType: Amadeus::Location::ANY
)
last_page = amadeus.last(page1)

Parameters:

Returns:



59
60
61
# File 'lib/amadeus/client/pagination.rb', line 59

def last(response)
  page(:last, response)
end

#next(response) ⇒ Amadeus::Response

Finds the next page, if there is any, and otherwise returns nil

Examples:

Fetch the next page

page1 = amadeus.reference_data.locations.get(
  keyword: 'lon',
  subType: Amadeus::Location::ANY
)
page2 = amadeus.next(page1)

Parameters:

Returns:



22
23
24
# File 'lib/amadeus/client/pagination.rb', line 22

def next(response)
  page(:next, response)
end

#previous(response) ⇒ Amadeus::Response

Finds the previous page, if there is any, and otherwise returns nil

Examples:

Fetch the previous page

page2 = amadeus.reference_data.locations.get(
  keyword: 'lon',
  subType: Amadeus::Location::ANY,
  page: { offset: 2 }
)
page1 = amadeus.previous(page1)

Parameters:

Returns:



41
42
43
# File 'lib/amadeus/client/pagination.rb', line 41

def previous(response)
  page(:previous, response)
end