Class: AWS::Http::Response

Inherits:
Object
  • Object
show all
Defined in:
lib/aws/http/response.rb

Overview

Represents the http response from a service request.

Responses have:

  • status (200, 404, 500, etc)

  • headers (hash of response headers)

  • body (the response body)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) {|_self| ... } ⇒ Response

Returns a new instance of Response.

Parameters:

  • options (Hash) (defaults to: {})

Options Hash (options):

  • :status (Integer) — default: 200

    HTTP status code

  • :headers (Hash) — default: {}

    HTTP response headers

  • :body (String) — default: ''

    HTTP response body

Yields:

  • (_self)

Yield Parameters:



45
46
47
48
49
50
51
# File 'lib/aws/http/response.rb', line 45

def initialize options = {}, &block
  @status = options[:status] || 200
  @headers = options[:headers] || {}
  @body = options[:body] || ''
  yield(self) if block_given?
  self
end

Instance Attribute Details

#bodyString

Returns (”) response http body.

Returns:

  • (String)

    (”) response http body



34
35
36
# File 'lib/aws/http/response.rb', line 34

def body
  @body
end

#headersHash

Returns ({}) response http headers.

Returns:

  • (Hash)

    ({}) response http headers



31
32
33
# File 'lib/aws/http/response.rb', line 31

def headers
  @headers
end

#statusInteger

Returns (200) response http status code.

Returns:

  • (Integer)

    (200) response http status code



28
29
30
# File 'lib/aws/http/response.rb', line 28

def status
  @status
end

#timeoutString Also known as: timeout?

Returns (false) set to true if the client gives up before getting a response from the service.

Returns:

  • (String)

    (false) set to true if the client gives up before getting a response from the service.



38
39
40
# File 'lib/aws/http/response.rb', line 38

def timeout
  @timeout
end

Instance Method Details

#header(name) ⇒ String?

Returns the header value with the given name.

The value is matched case-insensitively so if the headers hash contains a key like ‘Date’ and you request the value for ‘date’ the ‘Date’ value will be returned.

Parameters:

  • name (String, Symbol)

    The name of the header to fetch a value for.

Returns:

  • (String, nil)

    The value of the given header



61
62
63
64
65
66
67
68
# File 'lib/aws/http/response.rb', line 61

def header name
  headers.each_pair do |header_name, header_value|
    if header_name.downcase == name.to_s.downcase
      return header_value.is_a?(Array) ? header_value.first : header_value
    end
  end
  nil
end