Package org.forgerock.http
Interface Handler
-
- All Known Subinterfaces:
DescribableHandler
- All Known Implementing Classes:
HttpClientHandler
,Router
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface Handler
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Promise<Response,NeverThrowsException>
handle(Context context, Request request)
-
-
-
Method Detail
-
handle
Promise<Response,NeverThrowsException> handle(Context context, Request request)
Returns aPromise
representing the asynchronousResponse
of the givenrequest
. If any (asynchronous) processing goes wrong, the promise still contains aResponse
(probably from the 4xx or 5xx status code family).A handler that doesn't hand-off the processing to another downstream handler is responsible for creating the response.
The returned
Promise
contains the response returned from the server as-is. This is responsibility of the handler to produce the appropriate error response (404, 500, ...) in case of processing error.Note: As of Promise 2.0 implementation, it is not permitted to throw any runtime exception here. Doing so produce unexpected behaviour (most likely a server-side hang of the processing thread).
- Parameters:
context
- The request context.request
- The request.- Returns:
- A
Promise
representing the response to be returned to the caller.
-
-