Class: FormStalker::Response

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

Constant Summary collapse

RAILS_HTTP_STATUS =
{
  '100' => :continue,
  '101' => :switching_protocols,
  '102' => :processing,
  '200' => :ok,
  '201' => :created,
  '202' => :accepted,
  '203' => :non_authoritative_information,
  '204' => :no_content,
  '205' => :reset_content,
  '206' => :partial_content,
  '207' => :multi_status,
  '226' => :im_used,
  '300' => :multiple_choices,
  '301' => :moved_permanently,
  '302' => :found,
  '303' => :see_other,
  '304' => :not_modified,
  '305' => :use_proxy,
  '307' => :temporary_redirect,
  '400' => :bad_request,
  '401' => :unauthorized,
  '402' => :payment_required,
  '403' => :forbidden,
  '404' => :not_found,
  '405' => :method_not_allowed,
  '406' => :not_acceptable,
  '407' => :proxy_authentication_required,
  '408' => :request_timeout,
  '409' => :conflict,
  '410' => :gone,
  '411' => :length_required,
  '412' => :precondition_failed,
  '413' => :request_entity_too_large,
  '414' => :request_uri_too_long,
  '415' => :unsupported_media_type,
  '416' => :requested_range_not_satisfiable,
  '417' => :expectation_failed,
  '422' => :unprocessable_entity,
  '423' => :locked,
  '424' => :failed_dependency,
  '426' => :upgrade_required,
  '500' => :internal_server_error,
  '501' => :not_implemented,
  '502' => :bad_gateway,
  '503' => :service_unavailable,
  '504' => :gateway_timeout,
  '505' => :http_version_not_supported,
  '507' => :insufficient_storage,
  '510' => :not_extended
}.freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(http_response) ⇒ Response

Returns a new instance of Response.



59
60
61
62
63
64
65
66
67
# File 'lib/form_stalker/response.rb', line 59

def initialize(http_response)
  @http_response = http_response

  @status = RAILS_HTTP_STATUS[@http_response.code]

  @data = JSON.parse(@http_response.body) if @status == :ok

  parse_error
end

Instance Attribute Details

#dataObject

Returns the value of attribute data.



57
58
59
# File 'lib/form_stalker/response.rb', line 57

def data
  @data
end

#errorObject (readonly)

Returns the value of attribute error.



55
56
57
# File 'lib/form_stalker/response.rb', line 55

def error
  @error
end

#statusObject (readonly)

Returns the value of attribute status.



55
56
57
# File 'lib/form_stalker/response.rb', line 55

def status
  @status
end

Instance Method Details

#ok?Boolean

Returns:

  • (Boolean)


69
70
71
# File 'lib/form_stalker/response.rb', line 69

def ok?
  status == :ok && (error.nil? || error == '')
end