stripe 1.5.25 → 1.5.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/stripe.rb +34 -16
- data/lib/stripe/version.rb +1 -1
- metadata +5 -5
data/lib/stripe.rb
CHANGED
|
@@ -429,6 +429,7 @@ module Stripe
|
|
|
429
429
|
include Stripe::APIOperations::Create
|
|
430
430
|
include Stripe::APIOperations::Delete
|
|
431
431
|
include Stripe::APIOperations::List
|
|
432
|
+
include Stripe::APIOperations::Update
|
|
432
433
|
end
|
|
433
434
|
|
|
434
435
|
class Coupon < APIResource
|
|
@@ -441,14 +442,31 @@ module Stripe
|
|
|
441
442
|
include Stripe::APIOperations::Create
|
|
442
443
|
end
|
|
443
444
|
|
|
444
|
-
class
|
|
445
|
+
class Event < APIResource
|
|
446
|
+
include Stripe::APIOperations::List
|
|
447
|
+
end
|
|
448
|
+
|
|
449
|
+
class StripeError < StandardError
|
|
450
|
+
attr_reader :message
|
|
451
|
+
attr_reader :http_status
|
|
452
|
+
attr_reader :http_body
|
|
453
|
+
attr_reader :json_body
|
|
454
|
+
|
|
455
|
+
def initialize(message=nil, http_status=nil, http_body=nil, json_body=nil)
|
|
456
|
+
@message = message
|
|
457
|
+
@http_status = http_status
|
|
458
|
+
@http_body = http_body
|
|
459
|
+
@json_body = json_body
|
|
460
|
+
end
|
|
461
|
+
end
|
|
462
|
+
|
|
445
463
|
class APIError < StripeError; end
|
|
446
464
|
class APIConnectionError < StripeError; end
|
|
447
465
|
class CardError < StripeError
|
|
448
466
|
attr_reader :param, :code
|
|
449
467
|
|
|
450
|
-
def initialize(message, param, code)
|
|
451
|
-
super(message)
|
|
468
|
+
def initialize(message, param, code, http_status=nil, http_body=nil, json_body=nil)
|
|
469
|
+
super(message, http_status, http_body, json_body)
|
|
452
470
|
@param = param
|
|
453
471
|
@code = code
|
|
454
472
|
end
|
|
@@ -456,8 +474,8 @@ module Stripe
|
|
|
456
474
|
class InvalidRequestError < StripeError
|
|
457
475
|
attr_accessor :param
|
|
458
476
|
|
|
459
|
-
def initialize(message, param)
|
|
460
|
-
super(message)
|
|
477
|
+
def initialize(message, param, http_status=nil, http_body=nil, json_body=nil)
|
|
478
|
+
super(message, http_status, http_body, json_body)
|
|
461
479
|
@param = param
|
|
462
480
|
end
|
|
463
481
|
end
|
|
@@ -567,7 +585,7 @@ module Stripe
|
|
|
567
585
|
# some library out there that makes symbolize_names not work.
|
|
568
586
|
resp = JSON.parse(rbody)
|
|
569
587
|
rescue JSON::ParserError
|
|
570
|
-
raise APIError.new("Invalid response object from API: #{rbody.inspect} (HTTP response code was #{rcode})")
|
|
588
|
+
raise APIError.new("Invalid response object from API: #{rbody.inspect} (HTTP response code was #{rcode})", rcode, rbody)
|
|
571
589
|
end
|
|
572
590
|
|
|
573
591
|
resp = Util.symbolize_names(resp)
|
|
@@ -584,27 +602,27 @@ module Stripe
|
|
|
584
602
|
begin
|
|
585
603
|
error_obj = JSON.parse(rbody)
|
|
586
604
|
error_obj = Util.symbolize_names(error_obj)
|
|
587
|
-
error = error_obj[:error] or raise StripeError.new
|
|
605
|
+
error = error_obj[:error] or raise StripeError.new # escape from parsing
|
|
588
606
|
rescue JSON::ParserError, StripeError
|
|
589
|
-
raise APIError.new("Invalid response object from API: #{rbody.inspect} (HTTP response code was #{rcode})")
|
|
607
|
+
raise APIError.new("Invalid response object from API: #{rbody.inspect} (HTTP response code was #{rcode})", rcode, rbody)
|
|
590
608
|
end
|
|
591
609
|
|
|
592
610
|
case rcode
|
|
593
611
|
when 400, 404 then
|
|
594
|
-
raise invalid_request_error(error)
|
|
612
|
+
raise invalid_request_error(error, rcode, rbody, error_obj)
|
|
595
613
|
when 401
|
|
596
|
-
raise authentication_error(error)
|
|
614
|
+
raise authentication_error(error, rcode, rbody, error_obj)
|
|
597
615
|
when 402
|
|
598
|
-
raise card_error(error)
|
|
616
|
+
raise card_error(error, rcode, rbody, error_obj)
|
|
599
617
|
else
|
|
600
|
-
raise api_error(error)
|
|
618
|
+
raise api_error(error, rcode, rbody, error_obj)
|
|
601
619
|
end
|
|
602
620
|
end
|
|
603
621
|
|
|
604
|
-
def self.invalid_request_error(error); InvalidRequestError.new(error[:message], error[:param]); end
|
|
605
|
-
def self.authentication_error(error); AuthenticationError.new(error[:message]); end
|
|
606
|
-
def self.card_error(error); CardError.new(error[:message], error[:param], error[:code]); end
|
|
607
|
-
def self.api_error(error); APIError.new(error[:message]); end
|
|
622
|
+
def self.invalid_request_error(error, rcode, rbody, error_obj); InvalidRequestError.new(error[:message], error[:param], rcode, rbody, error_obj); end
|
|
623
|
+
def self.authentication_error(error, rcode, rbody, error_obj); AuthenticationError.new(error[:message], rcode, rbody, error_obj); end
|
|
624
|
+
def self.card_error(error, rcode, rbody, error_obj); CardError.new(error[:message], error[:param], error[:code], rcode, rbody, error_obj); end
|
|
625
|
+
def self.api_error(error, rcode, rbody, error_obj); APIError.new(error[:message], rcode, rbody, error_obj); end
|
|
608
626
|
|
|
609
627
|
def self.handle_restclient_error(e)
|
|
610
628
|
case e
|
data/lib/stripe/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: stripe
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
hash:
|
|
4
|
+
hash: 55
|
|
5
5
|
prerelease:
|
|
6
6
|
segments:
|
|
7
7
|
- 1
|
|
8
8
|
- 5
|
|
9
|
-
-
|
|
10
|
-
version: 1.5.
|
|
9
|
+
- 26
|
|
10
|
+
version: 1.5.26
|
|
11
11
|
platform: ruby
|
|
12
12
|
authors:
|
|
13
13
|
- Ross Boucher
|
|
@@ -16,7 +16,7 @@ autorequire:
|
|
|
16
16
|
bindir: bin
|
|
17
17
|
cert_chain: []
|
|
18
18
|
|
|
19
|
-
date:
|
|
19
|
+
date: 2012-01-27 00:00:00 Z
|
|
20
20
|
dependencies:
|
|
21
21
|
- !ruby/object:Gem::Dependency
|
|
22
22
|
name: rest-client
|
|
@@ -124,7 +124,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
124
124
|
requirements: []
|
|
125
125
|
|
|
126
126
|
rubyforge_project:
|
|
127
|
-
rubygems_version: 1.8.
|
|
127
|
+
rubygems_version: 1.8.8
|
|
128
128
|
signing_key:
|
|
129
129
|
specification_version: 3
|
|
130
130
|
summary: Ruby bindings for the Stripe API
|