{-# LANGUAGE TemplateHaskell, GeneralizedNewtypeDeriving, DeriveDataTypeable, TypeFamilies, MultiParamTypeClasses #-} module Happstack.Auth.Internal.Data.SessionData where import Data.Data import Data.ByteString import Happstack.Data import Happstack.State.ClockTime import Happstack.Auth.Internal.Data.UserId import Happstack.Auth.Internal.Data.Username import qualified Happstack.Auth.Internal.Data.Old.SessionData0 as Old data SessionData = SessionData { sesUid :: UserId , sesUsername :: Username , sesTimeout :: ClockTime , sesFingerprint :: (Either String ByteString, Maybe ByteString) } deriving (Show,Eq,Typeable,Data) $(deriveSerialize ''SessionData) instance Version SessionData where mode = extension 1 (Proxy :: Proxy Old.SessionData) instance Migrate Old.SessionData SessionData where migrate (Old.SessionData uid un) = SessionData uid un (TOD 0 0) (Left "", Nothing)