http-date-0.0.11: HTTP Date parser/formatter

Safe Haskell | None
Language | Haskell2010

Network.HTTP.Date

Contents

- Utility functions

Description

Fast parser and formatter for HTTP Date.

Synopsis

- epochTimeToHTTPDate :: EpochTime -> HTTPDate
- httpDateToUTC :: HTTPDate -> UTCTime
- utcToHTTPDate :: UTCTime -> HTTPDate
- data HTTPDate
- defaultHTTPDate :: HTTPDate
- parseHTTPDate :: ByteString -> Maybe HTTPDate
- formatHTTPDate :: HTTPDate -> ByteString

# Documentation

epochTimeToHTTPDate :: EpochTime -> HTTPDate Source #

Translating `EpochTime` to `HTTPDate`.

httpDateToUTC :: HTTPDate -> UTCTime Source #

Translating `HTTPDate` to `UTCTime`.

Since 0.0.7.

utcToHTTPDate :: UTCTime -> HTTPDate Source #

Translating `UTCTime` to `HTTPDate`.

Since 0.0.7.

data HTTPDate Source #

Data structure for HTTP Date. This value should be specified with `defaultHTTPDate` and its field labels.

#### Instances

Instances details

Show HTTPDate Source # |
Instance details Defined in Network.HTTP.Date.Types Methods showsPrec :: Int -> HTTPDate -> ShowS Source # show :: HTTPDate -> String Source # showList :: [HTTPDate] -> ShowS Source #
Eq HTTPDate Source # |
Instance details Defined in Network.HTTP.Date.Types Methods (==) :: HTTPDate -> HTTPDate -> Bool Source # (/=) :: HTTPDate -> HTTPDate -> Bool Source #
Ord HTTPDate Source # |
Instance details Defined in Network.HTTP.Date.Types Methods compare :: HTTPDate -> HTTPDate -> Ordering Source # (<) :: HTTPDate -> HTTPDate -> Bool Source # (<=) :: HTTPDate -> HTTPDate -> Bool Source # (>) :: HTTPDate -> HTTPDate -> Bool Source # (>=) :: HTTPDate -> HTTPDate -> Bool Source # max :: HTTPDate -> HTTPDate -> HTTPDate Source # min :: HTTPDate -> HTTPDate -> HTTPDate Source #

defaultHTTPDate :: HTTPDate Source #

A default value for `HTTPDate`.

# Utility functions

parseHTTPDate :: ByteString -> Maybe HTTPDate Source #

Parsing HTTP Date. Currently only RFC1123 style is supported.

    >>> parseHTTPDate "Tue, 15 Nov 1994 08:12:31 GMT"
    Just (HTTPDate {hdYear = 1994, hdMonth = 11, hdDay = 15, hdHour = 8, hdMinute = 12, hdSecond = 31, hdWkday = 2})

formatHTTPDate :: HTTPDate -> ByteString Source #

Generating HTTP Date in RFC1123 style.

    >>> formatHTTPDate defaultHTTPDate {hdYear = 1994, hdMonth = 11, hdDay = 15, hdHour = 8, hdMinute = 12, hdSecond = 31, hdWkday = 2}
    "Tue, 15 Nov 1994 08:12:31 GMT"