Class: RetriableX::Oauth2Client
- Inherits:
-
Object
- Object
- RetriableX::Oauth2Client
- Defined in:
- lib/retriable_x/oauth2_client.rb
Overview
OAuth2 Client
Instance Method Summary collapse
- #access_token!(code, code_verifier) ⇒ Object
-
#initialize(**args) ⇒ Oauth2Client
constructor
A new instance of Oauth2Client.
- #oauth_url(scopes) ⇒ Object
- #refresh!(refresh_token) ⇒ Object
Constructor Details
#initialize(**args) ⇒ Oauth2Client
Returns a new instance of Oauth2Client.
11 12 13 14 15 16 17 18 |
# File 'lib/retriable_x/oauth2_client.rb', line 11 def initialize(**args) @args = args @client = TwitterOAuth2::Client.new( identifier: @args[:client_id], secret: @args[:client_secret], redirect_uri: @args[:redirect_uri] || "" ) end |
Instance Method Details
#access_token!(code, code_verifier) ⇒ Object
25 26 27 28 |
# File 'lib/retriable_x/oauth2_client.rb', line 25 def access_token!(code, code_verifier) @client. = code @client.access_token! code_verifier end |
#oauth_url(scopes) ⇒ Object
20 21 22 23 |
# File 'lib/retriable_x/oauth2_client.rb', line 20 def oauth_url(scopes) = @client.(scope: scopes) [, @client.code_verifier, @client.state] end |
#refresh!(refresh_token) ⇒ Object
30 31 32 33 |
# File 'lib/retriable_x/oauth2_client.rb', line 30 def refresh!(refresh_token) @client.refresh_token = refresh_token @client.access_token! end |