Class: CleverSDK::Authentication
- Inherits:
-
Object
- Object
- CleverSDK::Authentication
- Defined in:
- lib/clever_sdk/authentication.rb
Instance Attribute Summary collapse
-
#configuration ⇒ Object
Returns the value of attribute configuration.
Instance Method Summary collapse
-
#initialize(configuration = CleverSDK.configuration) {|configuration| ... } ⇒ Authentication
constructor
A new instance of Authentication.
- #inspect ⇒ Object
- #me(access_token) ⇒ Object
- #sso(code) ⇒ Object
- #sso_redirect_uri ⇒ Object
- #token(district_id) ⇒ Object
- #tokeninfo(access_token) ⇒ Object
- #tokens ⇒ Object
Constructor Details
#initialize(configuration = CleverSDK.configuration) {|configuration| ... } ⇒ Authentication
Returns a new instance of Authentication.
13 14 15 16 17 |
# File 'lib/clever_sdk/authentication.rb', line 13 def initialize(configuration = CleverSDK.configuration) yield configuration if block_given? @configuration = configuration end |
Instance Attribute Details
#configuration ⇒ Object
Returns the value of attribute configuration.
11 12 13 |
# File 'lib/clever_sdk/authentication.rb', line 11 def configuration @configuration end |
Instance Method Details
#inspect ⇒ Object
63 64 65 |
# File 'lib/clever_sdk/authentication.rb', line 63 def inspect "#<#{self.class.name}:0x#{(object_id * 2).to_s(16).rjust(16, "0")}>" end |
#me(access_token) ⇒ Object
42 43 44 45 46 |
# File 'lib/clever_sdk/authentication.rb', line 42 def me(access_token) response = Api.new.me(access_token: access_token) data = response.body.dig("data") CleverSDK::Data::Me.new(data, response) end |
#sso(code) ⇒ Object
48 49 50 51 52 53 54 55 56 57 |
# File 'lib/clever_sdk/authentication.rb', line 48 def sso(code) response = Api.new.tokens!( code: code, grant_type: "authorization_code", client_id: configuration.client_id, client_secret: configuration.client_secret, redirect_uri: configuration.redirect_uri ) CleverSDK::Data::SSO.new(code, response) end |
#sso_redirect_uri ⇒ Object
59 60 61 |
# File 'lib/clever_sdk/authentication.rb', line 59 def sso_redirect_uri "https://clever.com/oauth/authorize?response_type=code&redirect_uri=#{configuration.redirect_uri}&client_id=#{configuration.client_id}" end |
#token(district_id) ⇒ Object
27 28 29 30 31 32 33 34 35 |
# File 'lib/clever_sdk/authentication.rb', line 27 def token(district_id) response = Api.new.tokens( client_id: configuration.client_id, client_secret: configuration.client_secret, district: district_id ) data = Array(response.body.dig("data")).first CleverSDK::Data::Token.new(data, response) end |
#tokeninfo(access_token) ⇒ Object
37 38 39 40 |
# File 'lib/clever_sdk/authentication.rb', line 37 def tokeninfo(access_token) response = Api.new.tokeninfo(access_token: access_token) CleverSDK::Data::Tokeninfo.new(response.body, response) end |
#tokens ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/clever_sdk/authentication.rb', line 19 def tokens response = Api.new.tokens( client_id: configuration.client_id, client_secret: configuration.client_secret ) CleverSDK::Data::Tokens.new(response) end |