class Telegram::Bot::UpdatesController::Session::SessionHash
Rack::Session::Abstract::SessionHash is taken to provide lazy loading. All methods that access store are overriden to support ActiveSupport::Cache::Store stores.
Attributes
id[R]
Public Class Methods
new(store, id)
click to toggle source
# File lib/telegram/bot/updates_controller/session.rb, line 44 def initialize(store, id) @store = store @id = id end
Public Instance Methods
commit()
click to toggle source
# File lib/telegram/bot/updates_controller/session.rb, line 66 def commit return unless loaded? data = to_hash.delete_if { |_, v| v.nil? } @store.write(id, data) end
destroy()
click to toggle source
# File lib/telegram/bot/updates_controller/session.rb, line 49 def destroy clear @store.delete(id) end
exists?()
click to toggle source
# File lib/telegram/bot/updates_controller/session.rb, line 54 def exists? return @exists if defined?(@exists) @data = {} @exists = @store.exist? id end
load!()
click to toggle source
# File lib/telegram/bot/updates_controller/session.rb, line 60 def load! session = @store.read(id) @data = session ? stringify_keys(session) : {} @loaded = true end