Class: Transferwise::OAuth
- Inherits:
-
Object
- Object
- Transferwise::OAuth
- Defined in:
- lib/transferwise/oauth.rb
Instance Attribute Summary collapse
-
#access_token ⇒ Object
Returns the value of attribute access_token.
Instance Method Summary collapse
- #authorize_client ⇒ Object
-
#authorize_url(redirect_url) ⇒ Object
Get the url to redirect a user to, pass the redirect_url you want the user to be redirected back to.
-
#client ⇒ Object
Get the OAuth 2 client.
-
#get_access_token(code, redirect_url) ⇒ Object
Get the access token.
-
#initialize(client_id, client_secret) ⇒ OAuth
constructor
A new instance of OAuth.
-
#refresh_token(access_token, opts = {}) ⇒ Object
This method is used to refresh the access token before it expires.
Constructor Details
#initialize(client_id, client_secret) ⇒ OAuth
Returns a new instance of OAuth.
5 6 7 |
# File 'lib/transferwise/oauth.rb', line 5 def initialize(client_id, client_secret) @client_id, @client_secret = client_id, client_secret end |
Instance Attribute Details
#access_token ⇒ Object
Returns the value of attribute access_token.
3 4 5 |
# File 'lib/transferwise/oauth.rb', line 3 def access_token @access_token end |
Instance Method Details
#authorize_client ⇒ Object
20 21 22 23 24 25 26 27 28 |
# File 'lib/transferwise/oauth.rb', line 20 def @authorize_client ||= ::OAuth2::Client.new( @client_id, @client_secret, { site: Transferwise., auth_scheme: :basic_auth } ) end |
#authorize_url(redirect_url) ⇒ Object
Get the url to redirect a user to, pass the redirect_url you want the user to be redirected back to.
32 33 34 |
# File 'lib/transferwise/oauth.rb', line 32 def (redirect_url) .auth_code.({redirect_uri: redirect_url}) end |
#client ⇒ Object
Get the OAuth 2 client
10 11 12 13 14 15 16 17 18 |
# File 'lib/transferwise/oauth.rb', line 10 def client @client ||= ::OAuth2::Client.new( @client_id, @client_secret, { site: Transferwise.api_base, auth_scheme: :basic_auth } ) end |
#get_access_token(code, redirect_url) ⇒ Object
Get the access token. You must pass the exact same redirect_url passed to the authorize_url method
38 39 40 |
# File 'lib/transferwise/oauth.rb', line 38 def get_access_token(code, redirect_url) @access_token ||= client.auth_code.get_token(code, redirect_uri: redirect_url) end |
#refresh_token(access_token, opts = {}) ⇒ Object
This method is used to refresh the access token before it expires
43 44 45 |
# File 'lib/transferwise/oauth.rb', line 43 def refresh_token(access_token, opts = {}) OAuth2::AccessToken.new(client, access_token, opts).refresh! end |