X-Git-Url: http://www.average.org/gitweb/?p=pdns-pipe-nmc.git;a=blobdiff_plain;f=NmcDom.hs;h=477def1b8b2418a7202b429d9cc864096fea9bd6;hp=90c7966064afe24cfba4321d405aed70f0535de6;hb=b32a00e89111ae2df516975162dd3fc1d9592e6f;hpb=c3a4cdbe13176c6b6327c7bac775d0bc6be2819c diff --git a/NmcDom.hs b/NmcDom.hs index 90c7966..477def1 100644 --- a/NmcDom.hs +++ b/NmcDom.hs @@ -4,6 +4,7 @@ module NmcDom ( NmcDom(..) , NmcRRService(..) , NmcRRI2p(..) , NmcRRTls(..) + , NmcRRDs(..) , emptyNmcDom , mergeNmcDom ) where @@ -153,6 +154,7 @@ data NmcDom = NmcDom { domService :: Maybe [NmcRRService] (Map String [NmcRRTls])) , domDs :: Maybe [NmcRRDs] , domMx :: Maybe [String] -- Synthetic + , domSrv :: Maybe [String] -- Synthetic } deriving (Show, Eq) instance FromJSON NmcDom where @@ -189,6 +191,7 @@ instance FromJSON NmcDom where <*> o .:? "tls" <*> o .:? "ds" <*> return Nothing -- domMx not parsed + <*> return Nothing -- domSrv not parsed parseJSON _ = empty instance Mergeable NmcDom where @@ -211,6 +214,7 @@ instance Mergeable NmcDom where , domTls = mergelm domTls , domDs = mergelm domDs , domMx = mergelm domMx + , domSrv = mergelm domSrv } where mergelm x = merge (x sub) (x dom) @@ -227,4 +231,4 @@ mergeNmcDom = merge emptyNmcDom = NmcDom Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing - Nothing + Nothing Nothing