aboutsummaryrefslogtreecommitdiff
path: root/src/Sproxy/Server/DB/DataFile.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Sproxy/Server/DB/DataFile.hs')
-rw-r--r--src/Sproxy/Server/DB/DataFile.hs83
1 files changed, 36 insertions, 47 deletions
diff --git a/src/Sproxy/Server/DB/DataFile.hs b/src/Sproxy/Server/DB/DataFile.hs
index efac923..5708c96 100644
--- a/src/Sproxy/Server/DB/DataFile.hs
+++ b/src/Sproxy/Server/DB/DataFile.hs
@@ -1,69 +1,58 @@
{-# LANGUAGE OverloadedStrings #-}
-module Sproxy.Server.DB.DataFile (
- DataFile(..)
-, GroupMember(..)
-, GroupPrivilege(..)
-, PrivilegeRule(..)
-) where
+
+module Sproxy.Server.DB.DataFile
+ ( DataFile(..)
+ , GroupMember(..)
+ , GroupPrivilege(..)
+ , PrivilegeRule(..)
+ ) where
import Control.Applicative (empty)
import Data.Aeson (FromJSON, parseJSON)
import Data.Text (Text)
import Data.Yaml (Value(Object), (.:))
-
-data DataFile = DataFile {
- groupMember :: [GroupMember]
-, groupPrivilege :: [GroupPrivilege]
-, privilegeRule :: [PrivilegeRule]
-} deriving (Show)
+data DataFile = DataFile
+ { groupMember :: [GroupMember]
+ , groupPrivilege :: [GroupPrivilege]
+ , privilegeRule :: [PrivilegeRule]
+ } deriving (Show)
instance FromJSON DataFile where
- parseJSON (Object m) = DataFile <$>
- m .: "group_member"
- <*> m .: "group_privilege"
- <*> m .: "privilege_rule"
+ parseJSON (Object m) =
+ DataFile <$> m .: "group_member" <*> m .: "group_privilege" <*>
+ m .: "privilege_rule"
parseJSON _ = empty
-
-data GroupMember = GroupMember {
- gmGroup :: Text
-, gmEmail :: Text
-} deriving (Show)
+data GroupMember = GroupMember
+ { gmGroup :: Text
+ , gmEmail :: Text
+ } deriving (Show)
instance FromJSON GroupMember where
- parseJSON (Object m) = GroupMember <$>
- m .: "group"
- <*> m .: "email"
+ parseJSON (Object m) = GroupMember <$> m .: "group" <*> m .: "email"
parseJSON _ = empty
-
-data GroupPrivilege = GroupPrivilege {
- gpGroup :: Text
-, gpDomain :: Text
-, gpPrivilege :: Text
-} deriving (Show)
+data GroupPrivilege = GroupPrivilege
+ { gpGroup :: Text
+ , gpDomain :: Text
+ , gpPrivilege :: Text
+ } deriving (Show)
instance FromJSON GroupPrivilege where
- parseJSON (Object m) = GroupPrivilege <$>
- m .: "group"
- <*> m .: "domain"
- <*> m .: "privilege"
+ parseJSON (Object m) =
+ GroupPrivilege <$> m .: "group" <*> m .: "domain" <*> m .: "privilege"
parseJSON _ = empty
-
-data PrivilegeRule = PrivilegeRule {
- prDomain :: Text
-, prPrivilege :: Text
-, prPath :: Text
-, prMethod :: Text
-} deriving (Show)
+data PrivilegeRule = PrivilegeRule
+ { prDomain :: Text
+ , prPrivilege :: Text
+ , prPath :: Text
+ , prMethod :: Text
+ } deriving (Show)
instance FromJSON PrivilegeRule where
- parseJSON (Object m) = PrivilegeRule <$>
- m .: "domain"
- <*> m .: "privilege"
- <*> m .: "path"
- <*> m .: "method"
+ parseJSON (Object m) =
+ PrivilegeRule <$> m .: "domain" <*> m .: "privilege" <*> m .: "path" <*>
+ m .: "method"
parseJSON _ = empty
-