Class: Harbor::Contrib::Session::DataMapper::SessionHash
- Inherits:
-
Hash
- Object
- Hash
- Harbor::Contrib::Session::DataMapper::SessionHash
- Defined in:
- lib/harbor/contrib/session/data_mapper.rb
Instance Method Summary collapse
- #[](key) ⇒ Object
- #[]=(key, value) ⇒ Object
-
#initialize(instance) ⇒ SessionHash
constructor
A new instance of SessionHash.
- #instance ⇒ Object
- #to_hash ⇒ Object
Constructor Details
#initialize(instance) ⇒ SessionHash
Returns a new instance of SessionHash.
20 21 22 23 24 |
# File 'lib/harbor/contrib/session/data_mapper.rb', line 20 def initialize(instance) super() @instance = instance merge!(@instance.data) end |
Instance Method Details
#[](key) ⇒ Object
26 27 28 |
# File 'lib/harbor/contrib/session/data_mapper.rb', line 26 def [](key) key == :session_id ? @instance.id : super end |
#[]=(key, value) ⇒ Object
30 31 32 33 34 |
# File 'lib/harbor/contrib/session/data_mapper.rb', line 30 def []=(key, value) raise ArgumentError.new("You cannot manually set the session_id for a session.") if key == :session_id super end |
#instance ⇒ Object
40 41 42 |
# File 'lib/harbor/contrib/session/data_mapper.rb', line 40 def instance @instance end |
#to_hash ⇒ Object
36 37 38 |
# File 'lib/harbor/contrib/session/data_mapper.rb', line 36 def to_hash {}.merge(reject { |key,| key == :session_id }) end |