Allows binding of a value to an entity (eg.
Represents the binding of a parameter to it's value in a particular context
Spec required to marshall a body of a custom type
Spec required to marshall a body of a custom type
the type of the parameter
Description to be used in the documentation
The HTTP content type header value
function to take the input string from the request and attempt to construct a deserialized instance. Exceptions are automatically caught and translated into the appropriate result, so just concentrate on the Happy-path case
function to take the input type and serialize it to a string to be represented in the request
The body entity of a encoded HTML form.
The body entity of a encoded HTML form. Basically a wrapper for Form construction and field extraction.
Represents different strategies for decoding and encoding HTML forms.
Support for parameters which can have more than one value (e.g query parameters or forms)
How a parameter is represented in the HTTP message (JSON type)
A parameter is a name-value pair which can be encoded into an HTTP message.
A parameter is a name-value pair which can be encoded into an HTTP message. Sub-types represent the various places in which values are encoded (eg. header/form/query/path)
Parameter location specific utility functions to assist with extraction and binding of values
Spec required to marshall and demarshall a parameter of a custom type
Spec required to marshall and demarshall a parameter of a custom type
the type of the parameter
optional description of the parameter (for use in description endpoints)
The parameter type to be used in the documentation. For custom types, this is usually ObjectParamType (for JSON) or StringParamType
function to take the input string from the request and attempt to construct a deserialized instance of T. Exceptions are automatically caught and translated into the appropriate result, so just concentrate on the Happy-path case
function to take the input type and serialize it to a string to be represented in the request
a parameter for retrieving a value of type [T] from the request
By implementing ParameterSpecSupplier[T], we can declare parameters using a shorthand: eg.
By implementing ParameterSpecSupplier[T], we can declare parameters using a shorthand: eg. Path(HipsterBeardStyle)
Prototype functions for creating parameters of various types.
Used to transparently copy the value out of an incoming request (or form etc..) and into an outgoing one.
Used to transparently copy the value out of an incoming request (or form etc..) and into an outgoing one. Useful when chaining requests together.
Represents the ability to retrieve a value from an enclosing object (request/form etc..)
Strict Forms fail when failing even a single field fails.
Strict Forms fail when failing even a single field fails. This form is used for non-web forms (where the posted form is merely an url-encoded set of form parameters) and will auto-reject requests with a BadRequest.
Represents a single entity which makes up the entirety of an HTTP message body.
Represents a single entity which makes up the entirety of an HTTP message body.
the type of the request when it has been deserialized from the request
Web-forms are a less harsh version of forms, which report both a collection of received fields and a set of invalid fields.
Web-forms are a less harsh version of forms, which report both a collection of received fields and a set of invalid fields. This form-type is to be used for web forms (where feedback is desirable and the user can be redirected back to the form page). As such, extracting an invalid webform from a request will not fail unless the body encoding itself is invalid.
Factory methods for various supported HTTP body types.
Parameters which are bound to request/response headers
Predefined ParameterSpec instances for common types
Parameters which are bound to the path segments of a URL
Parameters which are bound to the query part of a URL
Allows binding of a value to an entity (eg. query/header/field...)