{-# LANGUAGE TemplateHaskell, GeneralizedNewtypeDeriving, DeriveDataTypeable, TypeFamilies #-} module Happstack.Auth.Internal.Data.AuthState where import Data.Data import Happstack.Data import Happstack.Data.IxSet import Happstack.State import qualified Data.Map as M import Happstack.Auth.Internal.Data.SessionData import Happstack.Auth.Internal.Data.Sessions import Happstack.Auth.Internal.Data.User import Happstack.Auth.Internal.Data.UserId -- | Add this to your Dependency-List of your application state data AuthState = AuthState { sessions :: Sessions SessionData , users :: UserDB , nextUid :: UserId } deriving (Show,Typeable,Data) instance Version AuthState $(deriveSerialize ''AuthState) instance Component AuthState where type Dependencies AuthState = End initialValue = AuthState (Sessions M.empty) empty 0