on master help sign in
No more requestBody, Application lives in Iteratee
commit2be8986866ce038a18b5004facc7bf5f166d2ed9 authorMichael Snoyman <michael@snoyman.com> dateThu 30 Dec 2010, 23:52 (16 years ago) parent9bc8882
1 file changed+3−3
Network/Wai.hs+3−3
Network/Wai.hs+3−3
@@ -77,7 +77,7 @@ import qualified Data.ByteString.Lazy as L
7777import Data.Char (toLower)
7878import Data.String (IsString (..))
7979import Data.Typeable (Typeable)
80−import Data.Enumerator (Enumerator, Iteratee, ($$), joinI, enumList, run_)
80+import Data.Enumerator (Iteratee, ($$), joinI, enumList, run_)
8181import qualified Data.Enumerator as E
8282import Data.Enumerator.IO (enumFile)
8383import Blaze.ByteString.Builder (Builder, fromByteString, fromLazyByteString)
@@ -209,7 +209,6 @@ data Request = Request
209209 , requestHeaders :: [(RequestHeader, B.ByteString)]
210210 -- ^ Was this request made over an SSL connection?
211211 , isSecure :: Bool
212− , requestBody :: forall a. Enumerator B.ByteString IO a
213212 -- ^ Log the given line in some method; how this is accomplished is
214213 -- server-dependant.
215214 , errorHandler :: String -> IO ()
@@ -221,6 +220,7 @@ data Request = Request
221220data Response
222221 = ResponseFile Status ResponseHeaders FilePath
223222 | ResponseEnumerator (forall a. ResponseEnumerator a)
223+ deriving Typeable
224224
225225type ResponseEnumerator a =
226226 (Status -> ResponseHeaders -> Iteratee Builder IO a) -> IO a
@@ -236,7 +236,7 @@ responseBuilder s h b = ResponseEnumerator $ \f -> run_ $ enumList 1 [b] $$ f s
236236responseLBS :: Status -> ResponseHeaders -> L.ByteString -> Response
237237responseLBS s h = responseBuilder s h . fromLazyByteString
238238
239−type Application = Request -> IO Response
239+type Application = Request -> Iteratee B.ByteString IO Response
240240
241241-- | Middleware is a component that sits between the server and application. It
242242-- can do such tasks as GZIP encoding or response caching. What follows is the