class Warden::SharedSession::EncryptedCookie
Attributes
encryptor[R]
secret[R]
store[R]
Public Class Methods
new(store:, cookie:, secret:)
click to toggle source
# File lib/warden/shared_session/encrypted_cookie.rb, line 5 def initialize(store:, cookie:, secret:) @store = store @cookie = cookie @secret = secret @encryptor ||= ActiveSupport::MessageEncryptor.new(secret) end
Public Instance Methods
clear()
click to toggle source
# File lib/warden/shared_session/encrypted_cookie.rb, line 24 def clear store.delete(cookie) end
get()
click to toggle source
# File lib/warden/shared_session/encrypted_cookie.rb, line 13 def get value = store[cookie] return nil unless value JSON(encryptor.decrypt_and_verify(value)) end
put(data)
click to toggle source
# File lib/warden/shared_session/encrypted_cookie.rb, line 20 def put(data) store[cookie] = encryptor.encrypt_and_sign(data.to_json) end