Class: SessionRouter
- Inherits:
-
Router
- Object
- Router
- SessionRouter
- Defined in:
- lib/shot_mvc/session_router.rb
Instance Method Summary collapse
-
#initialize(client) ⇒ SessionRouter
constructor
A new instance of SessionRouter.
Constructor Details
#initialize(client) ⇒ SessionRouter
Returns a new instance of SessionRouter.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/shot_mvc/session_router.rb', line 30 def initialize(client) super(client) client.on 'session_key' do |key| create_session_folder unless Dir.exists? 'app/sessions' create_session_file key unless File.exists? "app/sessions/#{key}.json" client.config[:session_key] = key client.config[:session] = JSON.parse File.read "app/sessions/#{key}.json" client.emit 'session_ready' end client.on 'request_session_key' do session_key = SecureRandom.uuid client.emit 'assign_session_key', :key => session_key, :session_hash => client.config['server']['Security']['SessionHash'] create_session_folder unless Dir.exists? 'app/sessions' create_session_file session_key unless File.exists? "app/sessions/#{session_key}.json" client.config[:session_key] = session_key client.config[:session] = JSON.parse File.read "app/sessions/#{session_key}.json" client.emit 'session_ready' end client.emit 'provide_session_key', client.config['server']['Security']['SessionHash'] end |