module Foundation.Types
  ( UpsertCampusUserMode(..)
  , _UpsertCampusUserLoginLdap, _UpsertCampusUserLoginDummy, _UpsertCampusUserLoginOther, _UpsertCampusUserLdapSync, _UpsertCampusUserGuessUser
  , _upsertCampusUserIdent
  ) where

import Import.NoFoundation


data UpsertCampusUserMode
  = UpsertCampusUserLoginLdap
  | UpsertCampusUserLoginDummy { upsertCampusUserIdent :: UserIdent }
  | UpsertCampusUserLoginOther { upsertCampusUserIdent :: UserIdent }
  | UpsertCampusUserLdapSync   { upsertCampusUserIdent :: UserIdent }
  | UpsertCampusUserGuessUser
  deriving (Eq, Ord, Read, Show, Generic, Typeable)

makeLenses_ ''UpsertCampusUserMode
makePrisms ''UpsertCampusUserMode
