context-wai-middleware-0.2.0.0: Add request-specific (or not!) context to your WAI applications
Safe HaskellNone
LanguageHaskell2010

Network.Wai.Middleware.Context

Synopsis

Middlewares

Request-specific

addRequestContext :: Store ctx -> (Request -> IO ctx) -> Middleware Source #

Register request-specific context into the provided Store, for subsequent use in your Application. This middleware expects to be able to build a context value from every request. Use the addRequestContextMay variant in your application instead if only some requests will result in a context value.

Endpoints can access their context from the middleware via mine and friends.

Since: 0.1.0.0

addRequestContextMay :: Store ctx -> (Request -> IO (Maybe ctx)) -> Middleware Source #

Register request-specific context into the provided Store, for subsequent use in your Application. This middleware does not expect to be able to build a context value from every request. Use the addRequestContext variant in your application instead if all requests will result in a context value.

Endpoints can access their context from the middleware via mineMay and friends.

Since: 0.1.0.0

General

addContext :: Store ctx -> IO ctx -> Middleware Source #

Register arbitrary context into the provided Store, for subsequent use in your Application. This middleware ignores requests when building context values. Use addRequestContext/addRequestContextMay in your application instead if you would like to register request-specific context.

Endpoints can access their context from the middleware via mine and friends.

Since: 0.1.0.0