Class: WalmartApIs::OauthErrorException
- Inherits:
-
APIException
- Object
- CoreLibrary::ApiException
- APIException
- WalmartApIs::OauthErrorException
- Defined in:
- lib/walmart_ap_is/exceptions/oauth_error_exception.rb
Overview
OAuth 2.0 token-endpoint error (RFC 6749 ยง5.2).
Instance Attribute Summary collapse
-
#error ⇒ Error
Machine-readable error code.
-
#error_description ⇒ String
Human-readable explanation.
-
#error_uri ⇒ String
Optional link to error documentation.
Instance Method Summary collapse
-
#initialize(reason, response) ⇒ OauthErrorException
constructor
The constructor.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
-
#unbox(hash) ⇒ Object
Populates this object by extracting properties from a hash.
Constructor Details
#initialize(reason, response) ⇒ OauthErrorException
The constructor.
27 28 29 30 31 |
# File 'lib/walmart_ap_is/exceptions/oauth_error_exception.rb', line 27 def initialize(reason, response) super(reason, response) hash = APIHelper.json_deserialize(@response.raw_body) unbox(hash) end |
Instance Attribute Details
#error ⇒ Error
Machine-readable error code.
14 15 16 |
# File 'lib/walmart_ap_is/exceptions/oauth_error_exception.rb', line 14 def error @error end |
#error_description ⇒ String
Human-readable explanation.
18 19 20 |
# File 'lib/walmart_ap_is/exceptions/oauth_error_exception.rb', line 18 def error_description @error_description end |
#error_uri ⇒ String
Optional link to error documentation.
22 23 24 |
# File 'lib/walmart_ap_is/exceptions/oauth_error_exception.rb', line 22 def error_uri @error_uri end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
53 54 55 56 57 |
# File 'lib/walmart_ap_is/exceptions/oauth_error_exception.rb', line 53 def inspect class_name = self.class.name.split('::').last "<#{class_name} error: #{@error.inspect}, error_description: #{@error_description.inspect},"\ " error_uri: #{@error_uri.inspect}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
46 47 48 49 50 |
# File 'lib/walmart_ap_is/exceptions/oauth_error_exception.rb', line 46 def to_s class_name = self.class.name.split('::').last "<#{class_name} error: #{@error}, error_description: #{@error_description}, error_uri:"\ " #{@error_uri}>" end |
#unbox(hash) ⇒ Object
Populates this object by extracting properties from a hash. response body.
36 37 38 39 40 41 42 43 |
# File 'lib/walmart_ap_is/exceptions/oauth_error_exception.rb', line 36 def unbox(hash) return nil unless hash @error = hash.key?('error') ? hash['error'] : nil @error_description = hash.key?('error_description') ? hash['error_description'] : SKIP @error_uri = hash.key?('error_uri') ? hash['error_uri'] : SKIP end |