packages feed

happs-tutorial-0.3: src/SessionState.hs

{-# OPTIONS_GHC -XDeriveDataTypeable #-}
{-# LANGUAGE TemplateHaskell #-}

module SessionState where

import HAppS.State
import Data.Generics
import qualified Data.Map as M


type SessionKey = Integer                                                                   

data SessionData = SessionData {                                                            
  sesUser :: String
} deriving (Read,Show,Eq,Typeable,Data)                                                     


data Sessions a = Sessions {unsession::M.Map SessionKey a}                                  
  deriving (Read,Show,Eq,Typeable,Data)


instance Version SessionData                                                                
instance Version (Sessions a)

$(deriveSerialize ''SessionData)                                                            
$(deriveSerialize ''Sessions)