module Network.HTTP.Pony.Transformer.HTTP.Builder where
import Data.ByteString (ByteString)
import Pipes (yield, (~>), each, Producer)
import Network.HTTP.Pony.Transformer.HTTP.Type (Header, HttpRequest)
header :: Monad m => Header -> Producer ByteString m ()
header (key, value) = do
yield key
yield ": "
yield value
yield "\r\n"
message :: Monad m => HttpRequest ByteString m r -> Producer ByteString m r
message ((startLine, headers), body) = do
yield startLine
yield "\n"
(each ~> header) headers
yield "\r\n"
body