Exception: Aliyun::Odps::RequestError
- Defined in:
- lib/aliyun/odps/error.rb
Overview
- Aliyun::Odps::RequestError
-
when Odps give a Non 2xx response
Instance Attribute Summary collapse
-
#code ⇒ Object
readonly
Error Code defined by Odps.
-
#message ⇒ Object
readonly
Error Message defined by Odps.
-
#origin_response ⇒ Object
readonly
The Origin Httparty Response.
-
#request_id ⇒ Object
readonly
It’s the UUID to uniquely identifies this request; When you can’t solve the problem, you can request help from the ODPS development engineer with the RequestId.
Instance Method Summary collapse
- #assign_error_code(response) ⇒ Object
- #assign_request_id(response) ⇒ Object
-
#initialize(response) ⇒ RequestError
constructor
A new instance of RequestError.
Constructor Details
#initialize(response) ⇒ RequestError
Returns a new instance of RequestError.
20 21 22 23 24 25 |
# File 'lib/aliyun/odps/error.rb', line 20 def initialize(response) assign_error_code(response) assign_request_id(response) @origin_response = response super("#{@request_id} - #{@code}: #{@message}") end |
Instance Attribute Details
#code ⇒ Object (readonly)
Error Code defined by Odps
8 9 10 |
# File 'lib/aliyun/odps/error.rb', line 8 def code @code end |
#message ⇒ Object (readonly)
Error Message defined by Odps
11 12 13 |
# File 'lib/aliyun/odps/error.rb', line 11 def @message end |
#origin_response ⇒ Object (readonly)
The Origin Httparty Response
18 19 20 |
# File 'lib/aliyun/odps/error.rb', line 18 def origin_response @origin_response end |
#request_id ⇒ Object (readonly)
It’s the UUID to uniquely identifies this request; When you can’t solve the problem, you can request help from the ODPS development engineer with the RequestId.
15 16 17 |
# File 'lib/aliyun/odps/error.rb', line 15 def request_id @request_id end |
Instance Method Details
#assign_error_code(response) ⇒ Object
27 28 29 30 31 32 33 34 35 36 |
# File 'lib/aliyun/odps/error.rb', line 27 def assign_error_code(response) result = response.parsed_response if result.key?('Error') @code = result['Error']['Code'] @message = result['Error']['Message'] elsif result.key?('Code') @code = result['Code'] @message = result['Message'] end end |
#assign_request_id(response) ⇒ Object
38 39 40 |
# File 'lib/aliyun/odps/error.rb', line 38 def assign_request_id(response) @request_id = response.headers['x-odps-request-id'] end |