Request HTTP parts can also be retrieved programmatically through the following classes that
can be passed in as parameters or access through {@link oajr.RestRequest} bean:
- {@link oajr.httppart.RequestHeaders}
- {@link oajr.httppart.RequestQueryParams}
- {@link oajr.httppart.RequestFormParams}
- {@link oajr.httppart.RequestPathParams}
| @RestPost(...)
| public Object myMethod(RequestHeaders headers) {
|
| // Add a default value.
| headers.addDefault("ETag", DEFAULT_UUID);
|
| // Get a header value as a POJO.
| UUID etag = headers.get("ETag").as(UUID.class).get();
|
| // Get a header as a standard HTTP part.
| ContentType contentType = headers.get(ContentType.class).orElse(ContentType.TEXT_XML);
| }
Built in to these APIs are various convenience methods such as converting parts to
different types or inline fluent assertions:
| // Inline fluent assertion and retrieval.
| String foo = request
| .getHeader("Foo")
| .assertString().contains("bar")
| .get();