Exception: Stripe::StripeError
- Inherits:
-
StandardError
- Object
- StandardError
- Stripe::StripeError
- Defined in:
- lib/stripe/errors.rb
Overview
StripeError is the base error from which all other more specific Stripe errors derive.
Direct Known Subclasses
APIConnectionError, APIError, AuthenticationError, CardError, IdempotencyError, InvalidRequestError, OAuth::OAuthError, PermissionError, RateLimitError, SignatureVerificationError
Instance Attribute Summary collapse
-
#code ⇒ Object
readonly
Returns the value of attribute code.
-
#error ⇒ Object
readonly
Returns the value of attribute error.
-
#http_body ⇒ Object
readonly
Returns the value of attribute http_body.
-
#http_headers ⇒ Object
readonly
Returns the value of attribute http_headers.
-
#http_status ⇒ Object
readonly
Returns the value of attribute http_status.
-
#json_body ⇒ Object
readonly
equivalent to #data.
-
#message ⇒ Object
readonly
Returns the value of attribute message.
-
#request_id ⇒ Object
readonly
Returns the value of attribute request_id.
-
#response ⇒ Object
Response contains a StripeResponse object that has some basic information about the response that conveyed the error.
Instance Method Summary collapse
- #construct_error_object ⇒ Object
-
#idempotent_replayed? ⇒ Boolean
Whether the error was the result of an idempotent replay, meaning that it originally occurred on a previous request and is being replayed back because the user sent the same idempotency key for this one.
-
#initialize(message = nil, http_status: nil, http_body: nil, json_body: nil, http_headers: nil, code: nil) ⇒ StripeError
constructor
Initializes a StripeError.
- #to_s ⇒ Object
Constructor Details
#initialize(message = nil, http_status: nil, http_body: nil, json_body: nil, http_headers: nil, code: nil) ⇒ StripeError
Initializes a StripeError.
22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/stripe/errors.rb', line 22 def initialize( = nil, http_status: nil, http_body: nil, json_body: nil, http_headers: nil, code: nil) = @http_status = http_status @http_body = http_body @http_headers = http_headers || {} @idempotent_replayed = @http_headers["idempotent-replayed"] == "true" @json_body = json_body @code = code @request_id = @http_headers["request-id"] @error = construct_error_object end |
Instance Attribute Details
#code ⇒ Object (readonly)
Returns the value of attribute code.
13 14 15 |
# File 'lib/stripe/errors.rb', line 13 def code @code end |
#error ⇒ Object (readonly)
Returns the value of attribute error.
14 15 16 |
# File 'lib/stripe/errors.rb', line 14 def error @error end |
#http_body ⇒ Object (readonly)
Returns the value of attribute http_body.
15 16 17 |
# File 'lib/stripe/errors.rb', line 15 def http_body @http_body end |
#http_headers ⇒ Object (readonly)
Returns the value of attribute http_headers.
16 17 18 |
# File 'lib/stripe/errors.rb', line 16 def http_headers @http_headers end |
#http_status ⇒ Object (readonly)
Returns the value of attribute http_status.
17 18 19 |
# File 'lib/stripe/errors.rb', line 17 def http_status @http_status end |
#json_body ⇒ Object (readonly)
equivalent to #data
18 19 20 |
# File 'lib/stripe/errors.rb', line 18 def json_body @json_body end |
#message ⇒ Object (readonly)
Returns the value of attribute message.
7 8 9 |
# File 'lib/stripe/errors.rb', line 7 def end |
#request_id ⇒ Object (readonly)
Returns the value of attribute request_id.
19 20 21 |
# File 'lib/stripe/errors.rb', line 19 def request_id @request_id end |
#response ⇒ Object
Response contains a StripeResponse object that has some basic information about the response that conveyed the error.
11 12 13 |
# File 'lib/stripe/errors.rb', line 11 def response @response end |
Instance Method Details
#construct_error_object ⇒ Object
35 36 37 38 39 |
# File 'lib/stripe/errors.rb', line 35 def construct_error_object return nil if @json_body.nil? || !@json_body.key?(:error) ErrorObject.construct_from(@json_body[:error]) end |
#idempotent_replayed? ⇒ Boolean
Whether the error was the result of an idempotent replay, meaning that it originally occurred on a previous request and is being replayed back because the user sent the same idempotency key for this one.
44 45 46 |
# File 'lib/stripe/errors.rb', line 44 def idempotent_replayed? @idempotent_replayed end |
#to_s ⇒ Object
48 49 50 51 52 |
# File 'lib/stripe/errors.rb', line 48 def to_s status_string = @http_status.nil? ? "" : "(Status #{@http_status}) " id_string = @request_id.nil? ? "" : "(Request #{@request_id}) " "#{status_string}#{id_string}#{@message}" end |