Class: Landline::Session::Session
- Inherits:
-
Object
- Object
- Landline::Session::Session
- Defined in:
- lib/landline/extensions/session.rb
Overview
Class for representing session storage
Instance Attribute Summary collapse
-
#valid ⇒ Object
readonly
Returns the value of attribute valid.
Instance Method Summary collapse
-
#[](key) ⇒ Object
Retrieve data from session storage.
-
#[]=(key, value) ⇒ Object
Set data to session storage.
-
#initialize(cookie, cookies_callback) ⇒ Session
constructor
A new instance of Session.
Constructor Details
#initialize(cookie, cookies_callback) ⇒ Session
Returns a new instance of Session.
31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/landline/extensions/session.rb', line 31 def initialize(, ) @data = if Landline::Util::JWT.from_string( , Landline::Session.hmac_secret ) else Landline::Util::JWT.new({}) end @valid = !@data.nil? = end |
Instance Attribute Details
#valid ⇒ Object (readonly)
Returns the value of attribute valid.
70 71 72 |
# File 'lib/landline/extensions/session.rb', line 70 def valid @valid end |
Instance Method Details
#[](key) ⇒ Object
Retrieve data from session storage
46 47 48 49 50 51 52 53 54 |
# File 'lib/landline/extensions/session.rb', line 46 def [](key) raise Landline::Session::SessionError, "session not valid" unless @valid unless key.is_a? String or key.is_a? Symbol raise StandardError, "key not serializable" end @data.data[key] end |
#[]=(key, value) ⇒ Object
Set data to session storage
59 60 61 62 63 64 65 66 67 68 |
# File 'lib/landline/extensions/session.rb', line 59 def []=(key, value) raise Landline::Session::SessionError, "session not valid" unless @valid unless key.is_a? String or key.is_a? Symbol raise StandardError, "key not serializable" end @data.data[key] = value .call(@data.make(Landline::Session.hmac_secret)) end |