Spock-0.12.0.0: Another Haskell web framework for rapid development

Safe HaskellNone
LanguageHaskell98

Web.Spock.Internal.SessionVault

Synopsis

Documentation

class (Eq (SessionKey s), Hashable (SessionKey s)) => IsSession s where #

Minimal complete definition

getSessionKey

Associated Types

type SessionKey s :: * #

Methods

getSessionKey :: s -> SessionKey s #

Instances

IsSession (Session conn sess st) # 

Associated Types

type SessionKey (Session conn sess st) :: * #

Methods

getSessionKey :: Session conn sess st -> SessionKey (Session conn sess st) #

newtype SessionVault s #

Constructors

SessionVault 

Fields

newSessionVault :: STM (SessionVault s) #

Create a new session vault

loadSession :: IsSession s => SessionKey s -> SessionVault s -> STM (Maybe s) #

Load a session

storeSession :: IsSession s => s -> SessionVault s -> STM () #

Store a session, overwriting any previous values

deleteSession :: IsSession s => SessionKey s -> SessionVault s -> STM () #

Removea session

toList :: SessionVault s -> STM [s] #

Get all sessions as list

filterSessions :: IsSession s => (s -> Bool) -> SessionVault s -> STM () #

Remove all sessions that do not match the predicate

mapSessions :: IsSession s => (s -> STM s) -> SessionVault s -> STM () #

Perform action on all sessions