-- | This module exports the types used to create diffs queries. module Data.Factual.Query.DiffsQuery ( -- * DiffsQuery type DiffsQuery(..) -- * Required modules , module Data.Factual.Shared.Table ) where import Data.Factual.Query import Data.Factual.Shared.Table import qualified Data.Map as M -- | The timestamps are unix epoch integers type Timestamp = Integer -- | The DiffsQuery type is used to construct diffs queries. A table, start -- timestamp and end timestamp should be specified. data DiffsQuery = DiffsQuery { table :: Table , start :: Timestamp , end :: Timestamp } deriving (Eq, Show) -- The DiffsQuery type is a member of the Query typeclass so it can be used to -- make a request. instance Query DiffsQuery where path query = (show $ table query) ++ "/diffs" params query = M.fromList [ ("start", show $ start query) , ("end", show $ end query) ]