class Ably::Models::HttpPaginatedResponse

HTTP respones object from Rest#request object Wraps any Ably HTTP response that supports paging and provides methods to iterate through the pages using {#first}, {#next}, {#has_next?} and {#last?}

Public Instance Methods

error_code() click to toggle source

The error code if the X-Ably-Errorcode HTTP header is sent in the response.

@spec HP6

@return [Integer]

# File lib/submodules/ably-ruby/lib/ably/models/http_paginated_response.rb, line 61
def error_code
  if http_response.headers['X-Ably-Errorcode']
    http_response.headers['X-Ably-Errorcode'].to_i
  end
end
error_message() click to toggle source

The error message if the X-Ably-Errormessage HTTP header is sent in the response.

@spec HP7

@return [String]

# File lib/submodules/ably-ruby/lib/ably/models/http_paginated_response.rb, line 73
def error_message
  http_response.headers['X-Ably-Errormessage']
end
first(&success_callback) click to toggle source

Retrieve the first page of results. When used as part of the {Ably::Realtime} library, it will return a {Ably::Util::SafeDeferrable} object,

and allows an optional success callback block to be provided.

@return [HttpPaginatedResponse,Ably::Util::SafeDeferrable]

# File lib/submodules/ably-ruby/lib/ably/models/http_paginated_response.rb, line 15
def first(&success_callback)
  async_wrap_if_realtime(success_callback) do
    return nil unless supports_pagination?
    HttpPaginatedResponse.new(client.get(pagination_url('first')), base_url, client, pagination_options, &each_block)
  end
end
headers() click to toggle source

The headers of the response.

@spec HP8

@return [Hash<String, String>]

# File lib/submodules/ably-ruby/lib/ably/models/http_paginated_response.rb, line 83
def headers
  http_response.headers || {}
end
next(&success_callback) click to toggle source

Retrieve the next page of results. When used as part of the {Ably::Realtime} library, it will return a {Ably::Util::SafeDeferrable} object,

and allows an optional success callback block to be provided.

@return [HttpPaginatedResponse,Ably::Util::SafeDeferrable]

# File lib/submodules/ably-ruby/lib/ably/models/http_paginated_response.rb, line 28
def next(&success_callback)
  async_wrap_if_realtime(success_callback) do
    return nil unless has_next?
    HttpPaginatedResponse.new(client.get(pagination_url('next')), base_url, client, pagination_options, &each_block)
  end
end
status_code() click to toggle source

The HTTP status code of the response.

@spec HP4

@return [Integer]

# File lib/submodules/ably-ruby/lib/ably/models/http_paginated_response.rb, line 41
def status_code
  http_response.status.to_i
end
success?() click to toggle source

Whether statusCode indicates success. This is equivalent to 200 <= statusCode < 300.

@spec HP5

@return [Boolean]

# File lib/submodules/ably-ruby/lib/ably/models/http_paginated_response.rb, line 51
def success?
  (200..299).include?(http_response.status.to_i)
end