Class: Wavefront::Type::Status

Inherits:
Object
  • Object
show all
Defined in:
lib/wavefront-sdk/response.rb

Overview

An object which provides information about whether the request was successful or not. Ordinarily this is easy to construct from the API’s JSON response, but some classes, for instance Wavefront::Write fake it by constructing their own.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(response, status) ⇒ Status

Returns a new instance of Status.

Parameters:

  • response (Hash)

    the API response, turned into a hash

  • status (Integer)

    HTTP status code



94
95
96
97
# File 'lib/wavefront-sdk/response.rb', line 94

def initialize(response, status)
  @obj = response.fetch(:status, response)
  @status = status
end

Instance Attribute Details

#codeInteger (readonly)

Returns the HTTP response code from the API request.

Returns:

  • (Integer)

    the HTTP response code from the API request



88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# File 'lib/wavefront-sdk/response.rb', line 88

class Status
  attr_reader :obj, :status

  # @param response [Hash] the API response, turned into a hash
  # @param status [Integer] HTTP status code
  #
  def initialize(response, status)
    @obj = response.fetch(:status, response)
    @status = status
  end

  def message
    obj[:message] || nil
  end

  def code
    obj[:code] || status
  end

  def result
    return obj[:result] if obj[:result]
    return 'OK' if status.between?(200, 299)
    'ERROR'
  end
end

#messageString (readonly)

Returns Any informational message from the API.

Returns:

  • (String)

    Any informational message from the API



88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# File 'lib/wavefront-sdk/response.rb', line 88

class Status
  attr_reader :obj, :status

  # @param response [Hash] the API response, turned into a hash
  # @param status [Integer] HTTP status code
  #
  def initialize(response, status)
    @obj = response.fetch(:status, response)
    @status = status
  end

  def message
    obj[:message] || nil
  end

  def code
    obj[:code] || status
  end

  def result
    return obj[:result] if obj[:result]
    return 'OK' if status.between?(200, 299)
    'ERROR'
  end
end

#objObject (readonly)

Returns the value of attribute obj.



89
90
91
# File 'lib/wavefront-sdk/response.rb', line 89

def obj
  @obj
end

#resultOK, ERROR (readonly)

Returns a string telling us how the request went.

Returns:

  • (OK, ERROR)

    a string telling us how the request went



88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# File 'lib/wavefront-sdk/response.rb', line 88

class Status
  attr_reader :obj, :status

  # @param response [Hash] the API response, turned into a hash
  # @param status [Integer] HTTP status code
  #
  def initialize(response, status)
    @obj = response.fetch(:status, response)
    @status = status
  end

  def message
    obj[:message] || nil
  end

  def code
    obj[:code] || status
  end

  def result
    return obj[:result] if obj[:result]
    return 'OK' if status.between?(200, 299)
    'ERROR'
  end
end

#statusObject (readonly)

Returns the value of attribute status.



89
90
91
# File 'lib/wavefront-sdk/response.rb', line 89

def status
  @status
end