- allowMissingPost :: Handler s m Bool
Whether to allow HTTP POSTs to a missing resource. Default: false.
- allowedMethods :: Handler s m [Method]
The set of HTTP methods that this resource allows. Default: GET
and HEAD
.
If a request arrives with an HTTP method not included herein, 501 Not Implemented
is returned.
- contentTypesAccepted :: Handler s m [(MediaType, Handler s m ())]
An association list of MediaType
s and Handler
actions that correspond to the accepted
Content-Type
values that this resource can accept in a request body. If a Content-Type
header
is present but not accounted for in contentTypesAccepted
, processing will halt with 415 Unsupported Media Type
.
Otherwise, the corresponding Handler
action will be executed and processing will continue.
- contentTypesProvided :: Handler s m [(MediaType, Webmachine s m (ResponseBody m))]
An association list of MediaType
values and ResponseBody
values. The response will be chosen
by looking up the MediaType
that most closely matches the Content-Type
header. Should there be no match,
processing will halt with 406 Not Acceptable
.
- deleteCompleted :: Handler s m Bool
When a DELETE
request is enacted (via a True
value returned from deleteResource
), a
False
value returns a 202 Accepted
response. Returning True
will continue processing,
usually ending up with a 204 No Content
response. Default: False.
- deleteResource :: Handler s m Bool
When processing a DELETE
request, a True
value allows processing to continue.
Returns 500 Forbidden
if False. Default: false.
- entityTooLarge :: Handler s m Bool
Returns 413 Request Entity Too Large
if true. Default: false.
- forbidden :: Handler s m Bool
Checks if the given request is allowed to access this resource.
Returns 403 Forbidden
if true. Default: false.
- generateETag :: Handler s m (Maybe ETag)
If this returns a non-Nothing
ETag
, its value will be added to every HTTP response
in the ETag:
field.
- implemented :: Handler s m Bool
Checks if this resource has actually implemented a handler for a given HTTP method.
Returns 501 Not Implemented
if false. Default: true.
- isAuthorized :: Handler s m Bool
Returns 401 Unauthorized
if false. Default: true.
- isConflict :: Handler s m Bool
When processing PUT
requests, a True
value returned here will halt processing with a 409 Created
.
- knownContentType :: Handler s m Bool
Returns 415 Unsupported Media Type
if false. We recommend you use the contentTypeMatches
helper function, which accepts a list of
MediaType
values, so as to simplify proper MIME type handling. Default: true.
- lastModified :: Handler s m (Maybe UTCTime)
In the presence of an If-Modified-Since
header, returning a Just
value from lastModifed
allows
the server to halt with 304 Not Modified
if appropriate.
- languageAvailable :: Handler s m Bool
If an Accept-Language
value is present in the HTTP request, and this function returns False
,
processing will halt with 406 Not Acceptable
.
- malformedRequest :: Handler s m Bool
Returns 400 Bad Request
if true. Default: false.
- movedPermanently :: Handler s m (Maybe ByteString)
When processing a resource for which resourceExists
returned False
, returning a Just
value
halts with a 301 Moved Permanently
response. The contained ByteString
will be added to the
HTTP response under the Location:
header.
- movedTemporarily :: Handler s m (Maybe ByteString)
Like movedPermanently
, except with a 307 Moved Temporarily
response.
- multipleChoices :: Handler s m Bool
When handling a PUT
request, returning True
here halts processing with 300 Multiple Choices
. Default: False.
- previouslyExisted :: Handler s m Bool
When processing a request for which resourceExists
returned False
, returning True
here
allows the movedPermanently
and movedTemporarily
functions to process the request.
- processPost :: Handler s m (PostResponse s m)
When handling POST
requests, the value returned determines whether to treat the request as a PUT
,
a PUT
and a redirect, or a plain POST
. See the documentation for PostResponse
for more information.
The default implemetation returns a PostProcess
with an empty handler.
- resourceExists :: Handler s m Bool
Does the resource at this path exist?
Returning false from this usually entails a 404 Not Found
response.
(If allowMissingPost
returns True
or an If-Match: *
header is present, it may not).
- serviceAvailable :: Handler s m Bool
Returns 503 Service Unavailable
if false. Default: true.
- uriTooLong :: Handler s m Bool
Returns 414 Request URI Too Long
if true. Default: false.
- validContentHeaders :: Handler s m Bool
Returns 501 Not Implemented
if false. Default: true.