aws-route53 0.1.1 → 0.1.2
raw patch · 8 files changed
+58/−18 lines, 8 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Aws.Route53.Commands.GetDate: instance Loggable ()
+ Aws.Route53.Commands.ChangeResourceRecordSets: UPSERT :: ACTION
+ Aws.Route53.Commands.GetDate: Empty :: () -> Empty
+ Aws.Route53.Commands.GetDate: instance Loggable Empty
+ Aws.Route53.Commands.GetDate: instance Monoid Empty
+ Aws.Route53.Commands.GetDate: newtype Empty
+ Aws.Route53.Commands.ListResourceRecordSets: nextResourceRecordSet :: HostedZoneId -> ListResourceRecordSetsResponse -> Maybe ListResourceRecordSets
Files
- Aws/Route53/Commands/ChangeResourceRecordSets.hs +1/−1
- Aws/Route53/Commands/GetDate.hs +20/−3
- Aws/Route53/Commands/ListHostedZones.hs +3/−0
- Aws/Route53/Commands/ListResourceRecordSets.hs +8/−8
- Aws/Route53/Core.hs +11/−0
- CHANGELOG.md +4/−0
- CONTRIBUTORS.md +7/−4
- aws-route53.cabal +4/−2
Aws/Route53/Commands/ChangeResourceRecordSets.hs view
@@ -20,7 +20,7 @@ import qualified Text.XML as XML import qualified Data.ByteString as B -data ACTION = CREATE | DELETE +data ACTION = CREATE | DELETE | UPSERT deriving (Show) -- TODO enforce constrains either via type or dynamically on creation or usage
Aws/Route53/Commands/GetDate.hs view
@@ -1,3 +1,5 @@+{-# LANGUAGE CPP #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-} -- ------------------------------------------------------ -- -- Copyright © 2012 AlephCloud Systems, Inc. -- ------------------------------------------------------ --@@ -14,13 +16,21 @@ import Aws.Core import Aws.Route53.Core import Data.Maybe+#if __GLASGOW_HASKELL__ < 710+import Data.Monoid+#endif import Data.Time (UTCTime)+#if MIN_VERSION_time(1,5,0)+import Data.Time.Format (parseTimeM, defaultTimeLocale)+#else import Data.Time.Format (parseTime) import System.Locale (defaultTimeLocale)+#endif import Data.ByteString.Char8 (unpack) import qualified Network.HTTP.Conduit as HTTP import qualified Network.HTTP.Types as HTTP + data GetDate = GetDate deriving (Show) newtype GetDateResponse = GetDateResponse { date :: UTCTime } deriving (Show)@@ -45,20 +55,27 @@ , sqStringToSign = "" } +newtype Empty = Empty () deriving (Monoid)++instance Loggable Empty where+ toLogText _ = ""+ instance ResponseConsumer r GetDateResponse where- type ResponseMetadata GetDateResponse = ()+ type ResponseMetadata GetDateResponse = Empty responseConsumer _ _ resp = return $ GetDateResponse date where -- TODO add proper error handling date = fromJust $ do str <- findHeaderValue (HTTP.responseHeaders resp) HTTP.hDate -- FIXME: this is probably to restrictive. We should support full rfc1123+#if MIN_VERSION_time(1,5,0)+ parseTimeM True defaultTimeLocale "%a, %d %b %Y %H:%M:%S %Z" (unpack str)+#else parseTime defaultTimeLocale "%a, %d %b %Y %H:%M:%S %Z" (unpack str)+#endif getDate :: GetDate getDate = GetDate instance Transaction GetDate GetDateResponse -instance Loggable () where- toLogText _ = ""
Aws/Route53/Commands/ListHostedZones.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE TupleSections #-} -- ------------------------------------------------------ -- -- Copyright © 2012 AlephCloud Systems, Inc.@@ -14,7 +15,9 @@ import Aws.Core import Aws.Route53.Core import Data.Maybe+#if __GLASGOW_HASKELL__ < 710 import Control.Applicative ((<$>), (<$))+#endif import Text.XML.Cursor (($//)) import qualified Data.Text as T import qualified Data.Text.Encoding as T
Aws/Route53/Commands/ListResourceRecordSets.hs view
@@ -38,6 +38,14 @@ listResourceRecordSets :: HostedZoneId -> ListResourceRecordSets listResourceRecordSets hostedZoneId = ListResourceRecordSets hostedZoneId Nothing Nothing Nothing Nothing +-- | Construct the next request for resources if the last request was+-- truncated. Otherwise, return @Nothing@.+nextResourceRecordSet :: HostedZoneId -> ListResourceRecordSetsResponse -> Maybe ListResourceRecordSets+{-# INLINE nextResourceRecordSet #-}+nextResourceRecordSet hostedZoneId lrrsr+ | not (lrrsrIsTruncated lrrsr) = Nothing+ | otherwise = Just $ ListResourceRecordSets hostedZoneId (lrrsrNextRecordName lrrsr) Nothing Nothing Nothing+ data ListResourceRecordSetsResponse = ListResourceRecordSetsResponse { lrrsrResourceRecordSets :: ResourceRecordSets , lrrsrIsTruncated :: Bool@@ -86,12 +94,4 @@ lrrsrNextRecordType lrrsrNextRecordIdentifier lrrsrMaxItems-{- combineIteratedResponse a b = ListResourceRecordSetsResponse- { lrrsrResourceRecordSets = lrrsrResourceRecordSets a ++ lrrsrResourceRecordSets b- , lrrsrIsTruncated = lrrsrIsTruncated b- , lrrsrNextRecordName = lrrsrNextRecordName b- , lrrsrNextRecordType = lrrsrNextRecordType b- , lrrsrNextRecordIdentifier = lrrsrNextRecordIdentifier b- , lrrsrMaxItems = lrrsrMaxItems b- }-}
Aws/Route53/Core.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE QuasiQuotes, FlexibleContexts, TypeSynonymInstances #-} {-# LANGUAGE GeneralizedNewtypeDeriving, DeriveDataTypeable #-} {-# LANGUAGE ScopedTypeVariables #-}@@ -69,7 +70,9 @@ import Aws.Core import Data.IORef+#if __GLASGOW_HASKELL__ < 710 import Data.Monoid+#endif import Data.String import Data.Typeable import Control.Monad (MonadPlus, mzero, mplus, liftM)@@ -80,8 +83,12 @@ import Data.Text (Text, unpack) import Data.Text.Encoding (decodeUtf8) import Data.Time (UTCTime)+#if MIN_VERSION_time(1,5,0)+import Data.Time.Format (parseTimeM, defaultTimeLocale)+#else import Data.Time.Format (parseTime) import System.Locale (defaultTimeLocale)+#endif import Text.Hamlet.XML (xml) import Text.XML (elementAttributes) import Text.XML.Cursor (($/), ($//), (&|), ($.//), laxElement)@@ -521,7 +528,11 @@ submittedAt <- force "Missing SubmittedAt element" $ c $/ elCont "SubmittedAt" &| utcTime return $ ChangeInfo ciId status submittedAt where+#if MIN_VERSION_time(1,5,0)+ utcTime str = fromJust $ parseTimeM True defaultTimeLocale "%Y-%m-%dT%H:%M:%S%Q%Z" str+#else utcTime str = fromJust $ parseTime defaultTimeLocale "%Y-%m-%dT%H:%M:%S%Q%Z" str+#endif -- -------------------------------------------------------------------------- -- -- Parser and Serialization Utilities
CHANGELOG.md view
@@ -1,3 +1,7 @@+# 0.1.2 - 27th April, 2015++* Fix compilation with GHC 7.10.+ # 0.1.1 - 4th August, 2014 * Fix Alias target requests.
CONTRIBUTORS.md view
@@ -1,4 +1,7 @@-Aristid Breitkreuz-Vladimir Kirillov-Amit Levy-David Terei+# AWS Route53 Contributors++* Aristid Breitkreuz+* Vladimir Kirillov+* Amit Levy+* David Terei+
aws-route53.cabal view
@@ -1,5 +1,5 @@ name: aws-route53-version: 0.1.1+version: 0.1.2 synopsis: Amazon Route53 DNS service plugin for the aws package. description: Amazon Route53 DNS service plugin for the aws package. license: BSD3@@ -49,11 +49,13 @@ MultiParamTypeClasses, FlexibleInstances, OverloadedStrings+ Other-Extensions:+ CPP Source-repository this type: git location: https://github.com/memcachier/aws-route53.git- tag: 0.1.0+ tag: 0.1.2 Source-repository head type: git