Exception: Ya::API::Direct::RequestError

Inherits:
StandardError
  • Object
show all
Defined in:
lib/ya/api/direct/exceptions.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(method:, version:, request:, response:) ⇒ RequestError

Returns a new instance of RequestError.



19
20
21
22
23
24
# File 'lib/ya/api/direct/exceptions.rb', line 19

def initialize( method: , version: , request: , response: )
  @method = method
  @version = version
  @request = request
  @response = response
end

Instance Attribute Details

#methodObject (readonly)

Returns the value of attribute method.



17
18
19
# File 'lib/ya/api/direct/exceptions.rb', line 17

def method
  @method
end

#requestObject (readonly)

Returns the value of attribute request.



17
18
19
# File 'lib/ya/api/direct/exceptions.rb', line 17

def request
  @request
end

#responseObject (readonly)

Returns the value of attribute response.



17
18
19
# File 'lib/ya/api/direct/exceptions.rb', line 17

def response
  @response
end

#versionObject (readonly)

Returns the value of attribute version.



17
18
19
# File 'lib/ya/api/direct/exceptions.rb', line 17

def version
  @version
end

Instance Method Details

#to_sObject



26
27
28
29
30
31
# File 'lib/ya/api/direct/exceptions.rb', line 26

def to_s
  if response.body && ['text/json', 'application/json'].include?( response["Content-Type"] ) && error = JSON.parse( response.body )['error']
    err_msg = error.values_at('error_code', 'error_string', 'error_detail', 'request_id').reject(&:blank?).join(' : ')
  end
  [ ['HTTP ', response.code].join, err_msg ].compact.join(': ')
end