dwolla-ruby 2.3.0 → 2.4.0

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.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YWIzOTYzOTkyM2QxMjljZDVhYTFhMWJjYzY0ZThlYWY5MGE4YjY0Mg==
4
+ MDI4NTM0MGViMDNlNDc3OTA5NGJmZmU4M2M2NGI5ZTMwMmJkYzQzYw==
5
5
  data.tar.gz: !binary |-
6
- OTEzZDJjMDExNTA5ZmZjMDlkOGE0OTJjZjgyZTg0YjQwMjk1ZjVhNA==
6
+ OTM4Y2IzNGI0ZTk5N2U3ZDY3ZTNmNWNlMjZkYzE5OGEyNWM1NzczMw==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- NDk3MmVkMGM4NmQzNDRkYjRiMjhiODk1ZTVjMmE5OTAyMGEyOTkyOGU4OGZi
10
- YzA2MzBhNTczYjUwNzMzYTJhODE0MThmZjNjMjU3Y2EzMzFkZGFkZjE1NjI5
11
- MDIzZjllN2JiMTYzMzE4MmU4MDhiYjVjNzgyNDk5ZjI5OGIyMjQ=
9
+ MTNjNTE5YzJkMzAzMGQ5NjM2MzkyNjM3YzM1Mzg0NDEzZTQ3NzhiYjg2ZWM1
10
+ ZDYxZTZlYzUyOWEzYzQ4MGViMDE5ZTQzNWEzNDQ4ZDRmNTQ2OTM5MDRjMDAy
11
+ YThlYjgzOTkxZGYyZTQ2OTFiZjYxNjJiM2EwOTMxZWIzNDZiMTk=
12
12
  data.tar.gz: !binary |-
13
- MTg0N2JkZjFjODIwYWM2YWM3YzUyMjM3ZGEzZTIyYTA1NzQ1MmMyZGIxNTk0
14
- ZTk3Y2ZmODc0NGU0YmY5NjkyZWEzODIzZjc3MmNiYWZiM2RjMDg0ODEyYjU0
15
- ZWNlN2M3YWNkMWFlYTVjNjFjZDdiNGM4YmRhOGE4NGM0YzczNDQ=
13
+ ZDk2YWM5MmM1NWI0NGYwNjg0NTIyMDZlY2UwNDM1MDE4MDRjOGI0NzkyYzA4
14
+ YThiODljYTBhODc0MmQ1MzNhOTlkYzRjMDdkMWEwZTg5OTBkZjZiZGNmMjlh
15
+ OWI3ODA4MTEyZDNhOTlmYmZkYThmYjM2ZDZmNzk5Y2RiM2U5ODA=
data/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
  [![Build Status](https://travis-ci.org/Dwolla/dwolla-ruby.png?branch=master)](https://travis-ci.org/Dwolla/dwolla-ruby)
5
5
 
6
6
  ## Version
7
- 2.3.0
7
+ 2.4.0
8
8
 
9
9
  ## Requirements
10
10
  - [Ruby](http://www.ruby-lang.org/)
@@ -32,6 +32,10 @@ This repo includes various usage examples, including:
32
32
 
33
33
  ## Changelog
34
34
 
35
+ 2.4.0
36
+
37
+ * Added support for inline passage of OAuth tokens
38
+
35
39
  2.3.0
36
40
 
37
41
  * Add support for "sandbox" / UAT mode
data/examples/oauth.rb CHANGED
@@ -14,7 +14,7 @@ Dwolla::api_secret = @api_secret
14
14
  # Constants...
15
15
  redirect_uri = 'http://localhost:4567/oauth_return'
16
16
 
17
- # STEP 1:
17
+ # STEP 1:
18
18
  # Create an authentication URL
19
19
  # that the user will be redirected to
20
20
  get '/' do
@@ -23,7 +23,7 @@ get '/' do
23
23
  end
24
24
 
25
25
 
26
- # STEP 2:
26
+ # STEP 2:
27
27
  # Exchange the temporary code given
28
28
  # to us in the querystring, for
29
29
  # a never-expiring OAuth access token
@@ -28,3 +28,11 @@ pp Dwolla::Transactions.get
28
28
  # EXAMPLE 4:
29
29
  # Get details about a certain Transaction
30
30
  pp Dwolla::Transactions.get(transactionId)
31
+
32
+ # EXAMPLE 4:
33
+ # Get details about a certain Transaction
34
+ # using the API key & secret
35
+ Dwolla::token = ''
36
+ Dwolla::api_key = @api_key
37
+ Dwolla::api_secret = @api_secret
38
+ pp Dwolla::Transactions.get(transactionId, {}, false)
@@ -1,9 +1,9 @@
1
1
  module Dwolla
2
2
  class Balance
3
- def self.get
3
+ def self.get(token=nil)
4
4
  url = balance_url
5
5
 
6
- Dwolla.request(:get, url)
6
+ Dwolla.request(:get, url, {}, {}, token)
7
7
  end
8
8
 
9
9
  private
@@ -1,9 +1,9 @@
1
1
  module Dwolla
2
2
  class Contacts
3
- def self.get(filters={})
3
+ def self.get(filters={}, token=nil)
4
4
  url = contacts_url
5
5
 
6
- Dwolla.request(:get, url, filters)
6
+ Dwolla.request(:get, url, filters, {}, token)
7
7
  end
8
8
 
9
9
 
@@ -1,14 +1,14 @@
1
1
  module Dwolla
2
2
  class FundingSources
3
- def self.get(id=nil)
3
+ def self.get(id=nil, token=nil)
4
4
  url = funding_sources_url
5
5
 
6
6
  url += id.to_s unless id.nil?
7
7
 
8
- Dwolla.request(:get, url)
8
+ Dwolla.request(:get, url, {}, {}, token)
9
9
  end
10
10
 
11
- def self.withdraw(id=nil, params={})
11
+ def self.withdraw(id=nil, params={}, token=nil)
12
12
  raise MissingParameterError.new('No Funding Source ID Provided.') if id.nil?
13
13
  raise MissingParameterError.new('No PIN Provided.') unless params[:pin]
14
14
  raise MissingParameterError.new('No Amount Provided.') unless params[:amount]
@@ -16,10 +16,10 @@ module Dwolla
16
16
  url = funding_sources_url
17
17
  url += id.to_s + '/withdraw'
18
18
 
19
- Dwolla.request(:post, url, params)
19
+ Dwolla.request(:post, url, params, {}, token)
20
20
  end
21
21
 
22
- def self.deposit(id=nil, params={})
22
+ def self.deposit(id=nil, params={}, token=nil)
23
23
  raise MissingParameterError.new('No Funding Source ID Provided.') if id.nil?
24
24
  raise MissingParameterError.new('No PIN Provided.') unless params[:pin]
25
25
  raise MissingParameterError.new('No Amount Provided.') unless params[:amount]
@@ -27,10 +27,10 @@ module Dwolla
27
27
  url = funding_sources_url
28
28
  url += id.to_s + '/deposit'
29
29
 
30
- Dwolla.request(:post, url, params)
30
+ Dwolla.request(:post, url, params, {}, token)
31
31
  end
32
32
 
33
- def self.add(params={})
33
+ def self.add(params={}, token=nil)
34
34
  raise MissingParameterError.new('No Account Number Provided.') unless params[:account_number]
35
35
  raise MissingParameterError.new('No Routing Number (ABA) Provided.') unless params[:routing_number]
36
36
  raise MissingParameterError.new('No Account Type Provided.') unless params[:account_type]
@@ -38,10 +38,10 @@ module Dwolla
38
38
 
39
39
  url = funding_sources_url
40
40
 
41
- Dwolla.request(:post, url, params)
41
+ Dwolla.request(:post, url, params, {}, token)
42
42
  end
43
43
 
44
- def self.verify(id=nil, params={})
44
+ def self.verify(id=nil, params={}, token=nil)
45
45
  raise MissingParameterError.new('No Funding Source ID Provided.') if id.nil?
46
46
  raise MissingParameterError.new('No Deposit 1 Amount Provided.') unless params[:deposit1]
47
47
  raise MissingParameterError.new('No Deposit 2 Amount Provided.') unless params[:deposit2]
@@ -49,7 +49,7 @@ module Dwolla
49
49
  url = funding_sources_url
50
50
  url += id.to_s + '/verify'
51
51
 
52
- Dwolla.request(:post, url, params)
52
+ Dwolla.request(:post, url, params, {}, token)
53
53
  end
54
54
 
55
55
  class << self
@@ -1,6 +1,6 @@
1
1
  module Dwolla
2
2
  class Requests
3
- def self.get(id=nil, filters={})
3
+ def self.get(id=nil, filters={}, token=nil)
4
4
  url = requests_url
5
5
 
6
6
  if id.is_a?(Hash)
@@ -12,33 +12,33 @@ module Dwolla
12
12
 
13
13
  url += id.to_s unless id.nil?
14
14
 
15
- Dwolla.request(:get, url, filters)
15
+ Dwolla.request(:get, url, filters, {}, token)
16
16
  end
17
17
 
18
- def self.delete(id=nil)
18
+ def self.delete(id=nil, token=nil)
19
19
  raise MissingParameterError.new('No Request ID Provided.') if id.nil?
20
20
 
21
21
  url = requests_url + id.to_s + '/cancel'
22
22
 
23
- Dwolla.request(:post, url)
23
+ Dwolla.request(:post, url, {}, {}, token)
24
24
  end
25
25
 
26
- def self.create(params={})
26
+ def self.create(params={}, token=nil)
27
27
  raise MissingParameterError.new('No Source ID Provided.') unless params[:sourceId]
28
28
  raise MissingParameterError.new('No Amount Provided.') unless params[:amount]
29
29
 
30
30
  url = requests_url
31
31
 
32
- Dwolla.request(:post, url, params)
32
+ Dwolla.request(:post, url, params, {}, token)
33
33
  end
34
34
 
35
- def self.fulfill(id=nil, params={})
35
+ def self.fulfill(id=nil, params={}, token=nil)
36
36
  raise MissingParameterError.new('No Request ID Provided.') if id.nil?
37
37
  raise MissingParameterError.new('No PIN Provided.') unless params[:pin]
38
38
 
39
39
  url = requests_url + id.to_s + '/fulfill'
40
40
 
41
- Dwolla.request(:post, url, params)
41
+ Dwolla.request(:post, url, params, {}, token)
42
42
  end
43
43
 
44
44
  class << self
@@ -1,6 +1,6 @@
1
1
  module Dwolla
2
2
  class Transactions
3
- def self.get(id=nil, filters={})
3
+ def self.get(id=nil, filters={}, token=nil)
4
4
  url = transactions_url
5
5
 
6
6
  if id.is_a?(Hash)
@@ -12,23 +12,23 @@ module Dwolla
12
12
 
13
13
  url += id.to_s unless id.nil?
14
14
 
15
- Dwolla.request(:get, url, filters)
15
+ Dwolla.request(:get, url, filters, {}, token)
16
16
  end
17
17
 
18
- def self.stats(filters={})
18
+ def self.stats(filters={}, token=nil)
19
19
  url = transactions_url + 'stats'
20
20
 
21
- Dwolla.request(:get, url, filters)
21
+ Dwolla.request(:get, url, filters, {}, token)
22
22
  end
23
23
 
24
- def self.create(params={})
24
+ def self.create(params={}, token=nil)
25
25
  raise MissingParameterError.new('No PIN Provided.') unless params[:pin]
26
26
  raise MissingParameterError.new('No Destination ID Provided.') unless params[:destinationId]
27
27
  raise MissingParameterError.new('No Amount Provided.') unless params[:amount]
28
28
 
29
29
  url = transactions_url + 'send'
30
30
 
31
- Dwolla.request(:post, url, params)
31
+ Dwolla.request(:post, url, params, {}, token)
32
32
  end
33
33
 
34
34
  def self.guest_send(params={})
@@ -57,4 +57,4 @@ module Dwolla
57
57
  return '/transactions/'
58
58
  end
59
59
  end
60
- end
60
+ end
data/lib/dwolla/users.rb CHANGED
@@ -1,24 +1,24 @@
1
1
  module Dwolla
2
2
  class Users
3
- def self.get(id=nil)
3
+ def self.get(id=nil, token=nil)
4
4
  url = users_url
5
5
 
6
6
  unless id.nil?
7
7
  url += id.to_s
8
8
  @oauth = false
9
9
  else
10
- @oauth = true
10
+ @oauth = token.nil? ? true : token
11
11
  end
12
12
 
13
13
  Dwolla.request(:get, url, {}, {}, @oauth)
14
14
  end
15
15
 
16
- def self.me
16
+ def self.me(token=nil)
17
17
  # I'm not using the 'alias_method' fn
18
18
  # because the .me method should not
19
19
  # honor any parameters (i.e. User IDs)
20
20
  # passed to it
21
- self.get
21
+ self.get(nil, token)
22
22
  end
23
23
 
24
24
  def self.nearby(filters={})
@@ -1,3 +1,3 @@
1
1
  module Dwolla
2
- VERSION = "2.3.0"
2
+ VERSION = "2.4.0"
3
3
  end
data/lib/dwolla.rb CHANGED
@@ -107,6 +107,14 @@ module Dwolla
107
107
  end
108
108
 
109
109
  def self.request(method, url, params={}, headers={}, oauth=true, parse_response=true, custom_url=false)
110
+ # if oauth is nil, assume default
111
+ if oauth.nil?
112
+ oauth = true
113
+ elsif not oauth.is_a?(TrueClass)
114
+ params[:oauth_token] = oauth
115
+ end
116
+
117
+ # figure out which auth to use
110
118
  if oauth and not params[:oauth_token]
111
119
  raise AuthenticationError.new('No OAuth Token Provided.') unless token
112
120
  params = {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dwolla-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Schonfeld
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-08-28 00:00:00.000000000 Z
11
+ date: 2013-09-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client