Class: Coyodlee::Session
- Inherits:
-
Object
- Object
- Coyodlee::Session
- Defined in:
- lib/coyodlee/session.rb
Instance Attribute Summary collapse
-
#authorization ⇒ Object
readonly
Returns the value of attribute authorization.
-
#session_token_klass ⇒ Object
writeonly
Sets the attribute session_token_klass.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(request_facade:, session_authorization:) ⇒ Session
constructor
A new instance of Session.
- #login_cobrand(login_name:, password:) ⇒ Object
- #login_user(login_name:, password:) ⇒ Object
Constructor Details
#initialize(request_facade:, session_authorization:) ⇒ Session
Returns a new instance of Session.
19 20 21 22 |
# File 'lib/coyodlee/session.rb', line 19 def initialize(request_facade:, session_authorization:) @api = request_facade @authorization = end |
Instance Attribute Details
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
7 8 9 |
# File 'lib/coyodlee/session.rb', line 7 def @authorization end |
#session_token_klass=(value) ⇒ Object (writeonly)
Sets the attribute session_token_klass
8 9 10 |
# File 'lib/coyodlee/session.rb', line 8 def session_token_klass=(value) @session_token_klass = value end |
Class Method Details
.create(request_facade) ⇒ Object
11 12 13 14 15 16 |
# File 'lib/coyodlee/session.rb', line 11 def create(request_facade) new(request_facade: request_facade, session_authorization: SessionAuthorization.new).tap do |session| session.session_token_klass = SessionToken end end |
Instance Method Details
#login_cobrand(login_name:, password:) ⇒ Object
24 25 26 27 28 29 30 31 32 |
# File 'lib/coyodlee/session.rb', line 24 def login_cobrand(login_name:, password:) @api.login_cobrand(login_name: login_name, password: password).tap do |res| body = JSON.parse(res.body) token = body.dig('session', 'cobSession') @authorization.(@session_token_klass.new(token)) @api.(@authorization) end end |
#login_user(login_name:, password:) ⇒ Object
34 35 36 37 38 39 40 41 42 |
# File 'lib/coyodlee/session.rb', line 34 def login_user(login_name:, password:) @api.login_user(login_name: login_name, password: password).tap do |res| body = JSON.parse(res.body) token = body.dig('user', 'session', 'userSession') @authorization.(@session_token_klass.new(token)) @api.(@authorization) end end |