Class: SimpleAuth::Session
- Inherits:
-
Object
- Object
- SimpleAuth::Session
- Defined in:
- lib/simple_auth/session.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(scope:, session:, record: nil) ⇒ Session
constructor
A new instance of Session.
- #record ⇒ Object
- #record=(record) ⇒ Object
- #record_class ⇒ Object
- #record_id_from_session ⇒ Object
- #record_key ⇒ Object
- #valid? ⇒ Boolean
Constructor Details
#initialize(scope:, session:, record: nil) ⇒ Session
Returns a new instance of Session.
7 8 9 10 11 |
# File 'lib/simple_auth/session.rb', line 7 def initialize(scope:, session:, record: nil) @scope = scope @session = session self.record = record if record end |
Class Method Details
.create(**kwargs) ⇒ Object
3 4 5 |
# File 'lib/simple_auth/session.rb', line 3 def self.create(**kwargs) new(**kwargs) end |
Instance Method Details
#record ⇒ Object
18 19 20 21 |
# File 'lib/simple_auth/session.rb', line 18 def record @record ||= record_class .find_by_id(record_id_from_session) if record_id_from_session end |
#record=(record) ⇒ Object
13 14 15 16 |
# File 'lib/simple_auth/session.rb', line 13 def record=(record) @session[record_key] = record.try(:id) @record = record end |
#record_class ⇒ Object
23 24 25 |
# File 'lib/simple_auth/session.rb', line 23 def record_class @record_class ||= Object.const_get(:"#{@scope.to_s.camelize}") end |
#record_id_from_session ⇒ Object
31 32 33 |
# File 'lib/simple_auth/session.rb', line 31 def record_id_from_session @session[record_key] end |
#record_key ⇒ Object
27 28 29 |
# File 'lib/simple_auth/session.rb', line 27 def record_key :"#{@scope}_id" end |
#valid? ⇒ Boolean
35 36 37 |
# File 'lib/simple_auth/session.rb', line 35 def valid? record.present? end |