@FunctionalInterface public interface Filter extends java.util.function.Function<HttpHandler,HttpHandler>
HttpHandler in order to either modify incoming
HttpRequests or outgoing HttpResponses using the well-known "Filter" pattern.
This is very similar to the Servlet spec's javax.servlet.Filter, but takes advantage of
lambdas:
Filter filter = next -> {
return req -> {
req.addHeader("cheese", "brie");
HttpResponse res = next.apply(req);
res.addHeader("vegetable", "peas");
return res;
};
}
Because each filter returns an HttpHandler, it's easy to do processing before, or after
each request, as well as short-circuit things if necessary.
| Modifier and Type | Method and Description |
|---|---|
default HttpHandler |
andFinally(HttpHandler end) |
default Filter |
andThen(Filter next) |
default HttpHandler andFinally(HttpHandler end)