module Data.Time.HTTP ( format , parse ) where import qualified Data.Time.RFC1123 as RFC1123 import qualified Text.Parsec as P import Data.Time import Data.Time.HTTP.Parsec format :: UTCTime -> String format utcTime = let timeZone = TimeZone 0 False "GMT" zonedTime = utcToZonedTime timeZone utcTime in RFC1123.format zonedTime parse :: String -> Maybe UTCTime parse src = case P.parse p "" src of Right ut -> Just ut Left _ -> Nothing where p = do zt <- rfc2616DateAndTime _ <- P.eof return zt