packages feed

happs-tutorial-0.4: src/SerializeableSessions.hs

{-# LANGUAGE TemplateHaskell, DeriveDataTypeable #-}

module SerializeableSessions where

import Data.Generics --for deriving Typeable
import HAppS.State -- for deriving Serialize



import qualified Data.Map as M




type SessionKey = Integer                                                                   
newtype SessionData = SessionData {                                                            
  sesUser :: String
} deriving (Read,Show,Eq,Typeable,Data)                                                     
instance Version SessionData 
$(deriveSerialize ''SessionData)




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