Class: Charyf::Engine::Session
- Defined in:
- lib/charyf/engine/session/session.rb,
lib/charyf/engine/session/processors/default.rb,
lib/charyf/engine/session/processors/processor.rb
Defined Under Namespace
Modules: Processor
Instance Attribute Summary collapse
-
#action ⇒ Object
readonly
Returns the value of attribute action.
-
#controller ⇒ Object
readonly
Returns the value of attribute controller.
-
#skill ⇒ Object
readonly
Returns the value of attribute skill.
-
#timestamp ⇒ Object
readonly
Returns the value of attribute timestamp.
-
#uuid ⇒ Object
readonly
Returns the value of attribute uuid.
Class Method Summary collapse
-
.get(uuid) ⇒ Object
TODO - mention it could return nil.
- .init(uuid, skill_name) ⇒ Object
Instance Method Summary collapse
- #full_controller_name ⇒ Object
- #invalidate! ⇒ Object
- #keep! ⇒ Object
- #route_to(controller, action) ⇒ Object
- #storage ⇒ Object
- #store! ⇒ Object
Instance Attribute Details
#action ⇒ Object (readonly)
Returns the value of attribute action.
7 8 9 |
# File 'lib/charyf/engine/session/session.rb', line 7 def action @action end |
#controller ⇒ Object (readonly)
Returns the value of attribute controller.
7 8 9 |
# File 'lib/charyf/engine/session/session.rb', line 7 def controller @controller end |
#skill ⇒ Object (readonly)
Returns the value of attribute skill.
7 8 9 |
# File 'lib/charyf/engine/session/session.rb', line 7 def skill @skill end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
7 8 9 |
# File 'lib/charyf/engine/session/session.rb', line 7 def @timestamp end |
#uuid ⇒ Object (readonly)
Returns the value of attribute uuid.
7 8 9 |
# File 'lib/charyf/engine/session/session.rb', line 7 def uuid @uuid end |
Class Method Details
.get(uuid) ⇒ Object
TODO - mention it could return nil
10 11 12 13 |
# File 'lib/charyf/engine/session/session.rb', line 10 def self.get(uuid) yaml = _storage.get(uuid) yaml ? YAML.load(yaml) : nil end |
.init(uuid, skill_name) ⇒ Object
15 16 17 18 19 20 21 |
# File 'lib/charyf/engine/session/session.rb', line 15 def self.init(uuid, skill_name) session = self.new(uuid, skill_name) _storage.store(uuid, YAML.dump(session)) session end |
Instance Method Details
#full_controller_name ⇒ Object
47 48 49 |
# File 'lib/charyf/engine/session/session.rb', line 47 def full_controller_name @controller.blank? ? nil : @skill.camelize + '::' + @controller.camelize end |
#invalidate! ⇒ Object
37 38 39 40 |
# File 'lib/charyf/engine/session/session.rb', line 37 def invalidate! @active = false self.class._storage.remove(@uuid) end |
#keep! ⇒ Object
32 33 34 35 |
# File 'lib/charyf/engine/session/session.rb', line 32 def keep! @active = true store! end |
#route_to(controller, action) ⇒ Object
23 24 25 26 |
# File 'lib/charyf/engine/session/session.rb', line 23 def route_to(controller, action) @controller = controller @action = action end |
#storage ⇒ Object
28 29 30 |
# File 'lib/charyf/engine/session/session.rb', line 28 def storage @storage ||= Charyf.application.storage_provider.get_for("#{self.class}_#{@uuid}") end |
#store! ⇒ Object
42 43 44 45 |
# File 'lib/charyf/engine/session/session.rb', line 42 def store! @timestamp = Time.now self.class._storage.store(@uuid, YAML.dump(self)) end |