Class: LedgerSync::Adaptors::QuickBooksOnline::OAuthClient::RedirectURIParser
- Inherits:
-
Object
- Object
- LedgerSync::Adaptors::QuickBooksOnline::OAuthClient::RedirectURIParser
- Defined in:
- lib/ledger_sync/adaptors/quickbooks_online/oauth_client.rb
Instance Attribute Summary collapse
-
#uri ⇒ Object
readonly
Returns the value of attribute uri.
Instance Method Summary collapse
- #code ⇒ Object
-
#initialize(uri:) ⇒ RedirectURIParser
constructor
A new instance of RedirectURIParser.
- #parsed_uri ⇒ Object
- #query ⇒ Object
- #realm_id ⇒ Object
- #redirect_uri ⇒ Object
Constructor Details
#initialize(uri:) ⇒ RedirectURIParser
Returns a new instance of RedirectURIParser.
14 15 16 |
# File 'lib/ledger_sync/adaptors/quickbooks_online/oauth_client.rb', line 14 def initialize(uri:) @uri = uri end |
Instance Attribute Details
#uri ⇒ Object (readonly)
Returns the value of attribute uri.
12 13 14 |
# File 'lib/ledger_sync/adaptors/quickbooks_online/oauth_client.rb', line 12 def uri @uri end |
Instance Method Details
#code ⇒ Object
18 19 20 |
# File 'lib/ledger_sync/adaptors/quickbooks_online/oauth_client.rb', line 18 def code @code ||= query.fetch('code').first end |
#parsed_uri ⇒ Object
22 23 24 |
# File 'lib/ledger_sync/adaptors/quickbooks_online/oauth_client.rb', line 22 def parsed_uri @parsed_uri = URI.parse(uri) end |
#query ⇒ Object
26 27 28 |
# File 'lib/ledger_sync/adaptors/quickbooks_online/oauth_client.rb', line 26 def query @query ||= CGI.parse(parsed_uri.query) end |
#realm_id ⇒ Object
30 31 32 |
# File 'lib/ledger_sync/adaptors/quickbooks_online/oauth_client.rb', line 30 def realm_id @realm_id ||= query.fetch('realmId').first end |
#redirect_uri ⇒ Object
34 35 36 37 38 39 40 41 42 43 |
# File 'lib/ledger_sync/adaptors/quickbooks_online/oauth_client.rb', line 34 def redirect_uri @redirect_uri ||= begin use_uri = parsed_uri.dup use_uri.fragment = nil use_uri.query = nil ret = use_uri.to_s ret = ret[0..-2] if ret.end_with?('/') ret end end |