Spock-0.11.0.0: Another Haskell web framework for rapid development

Safe HaskellNone
LanguageHaskell98

Web.Spock.Internal.SessionManager

Documentation

createSessionManager :: MonadIO m => SessionCfg conn sess st -> SessionIf m -> IO (SessionManager m conn sess st) Source

withSessionManager :: MonadIO m => SessionCfg conn sess st -> SessionIf m -> (SessionManager m conn sess st -> IO a) -> IO a Source

data Session conn sess st Source

Constructors

Session 

Instances

Show (Session conn sess st) Source 
IsSession (Session conn sess st) Source 
type SessionKey (Session conn sess st) = Text Source 

data SessionManager m conn sess st Source

Constructors

SessionManager 

Fields

sm_getSessionId :: m SessionId
 
sm_getCsrfToken :: m Text
 
sm_regenerateSessionId :: m ()
 
sm_readSession :: m sess
 
sm_writeSession :: sess -> m ()
 
sm_modifySession :: forall a. (sess -> (sess, a)) -> m a
 
sm_mapSessions :: (forall n. Monad n => sess -> n sess) -> m ()
 
sm_clearAllSessions :: MonadIO m => m ()
 
sm_middleware :: Middleware
 
sm_closeSessionManager :: IO ()
 

data SessionIf m Source

Constructors

SessionIf 

Fields

si_queryVault :: forall a. Key a -> m (Maybe a)
 
si_modifyVault :: (Vault -> Vault) -> m ()
 
si_setRawMultiHeader :: MultiHeader -> ByteString -> m ()
 
si_vaultKey :: IO (Key SessionId)