2011-06-01 21:49:37 +00:00
|
|
|
{- git-annex trust levels
|
|
|
|
-
|
|
|
|
- Copyright 2010 Joey Hess <joey@kitenet.net>
|
|
|
|
-
|
|
|
|
- Licensed under the GNU GPL version 3 or higher.
|
|
|
|
-}
|
|
|
|
|
2011-06-24 01:25:39 +00:00
|
|
|
module Types.TrustLevel (
|
2011-06-01 21:49:37 +00:00
|
|
|
TrustLevel(..),
|
2012-10-03 21:04:52 +00:00
|
|
|
TrustMap,
|
|
|
|
readTrustLevel,
|
|
|
|
showTrustLevel,
|
2011-06-01 21:49:37 +00:00
|
|
|
) where
|
|
|
|
|
2011-06-24 01:25:39 +00:00
|
|
|
import qualified Data.Map as M
|
|
|
|
|
|
|
|
import Types.UUID
|
|
|
|
|
2011-12-02 20:59:55 +00:00
|
|
|
data TrustLevel = Trusted | SemiTrusted | UnTrusted | DeadTrusted
|
2012-10-03 21:04:52 +00:00
|
|
|
deriving (Eq, Enum, Ord)
|
2011-06-01 21:49:37 +00:00
|
|
|
|
2011-06-24 01:25:39 +00:00
|
|
|
type TrustMap = M.Map UUID TrustLevel
|
2012-10-03 21:04:52 +00:00
|
|
|
|
|
|
|
readTrustLevel :: String -> Maybe TrustLevel
|
|
|
|
readTrustLevel "trusted" = Just Trusted
|
|
|
|
readTrustLevel "untrusted" = Just UnTrusted
|
|
|
|
readTrustLevel "semitrusted" = Just SemiTrusted
|
|
|
|
readTrustLevel "dead" = Just DeadTrusted
|
|
|
|
readTrustLevel _ = Nothing
|
|
|
|
|
|
|
|
showTrustLevel :: TrustLevel -> String
|
|
|
|
showTrustLevel Trusted = "trusted"
|
|
|
|
showTrustLevel UnTrusted = "untrusted"
|
|
|
|
showTrustLevel SemiTrusted = "semitrusted"
|
|
|
|
showTrustLevel DeadTrusted = "dead"
|