public interface TimeoutHandler
 By default, the runtime generates a WebApplicationException
 with a HTTP 503
 (Service unavailable) error response status code. A custom time-out handler
 may be set on an
 asynchronous response instance to provide custom time-out event resolution.
 
In case of a suspend time-out event, a custom time-out handler takes typically one of the following actions:
custom response or a custom exceptionAsyncResponse cancel(...)
 methods.setting a new suspend time-outWebApplicationException containing the HTTP 503 status code.
 
 
 Following example illustrates the use of a custom TimeoutHandler:
 
 public class MyTimeoutHandler implements TimeoutHandler {
     …
     public void handleTimeout(AsyncResponse ar) {
         if (keepSuspended) {
             ar.setTimeout(10, SECONDS);
         } else if (cancel) {
             ar.cancel(retryPeriod);
         } else {
             ar.resume(defaultResponse);
         }
     }
     …
 }
 @Path("/messages/next")
 public class MessagingResource {
     …
     @GET
     public void readMessage(@Suspended AsyncResponse ar) {
         ar.setTimeoutHandler(new MyTimeoutHandler());
         suspended.put(ar);
     }
     …
 }
 | Modifier and Type | Method | Description | 
|---|---|---|
| void | handleTimeout(AsyncResponse asyncResponse) | Invoked when the suspended asynchronous response is about to time out. | 
void handleTimeout(AsyncResponse asyncResponse)
AsyncResponse API documentation).
 A custom time-out handler may decide to either
resume(...) methods,cancel(...) methods, orsetting a new suspend time-outasyncResponse - suspended asynchronous response that is timing out.Copyright (c) 2019 Eclipse Foundation. Licensed under Eclipse Foundation Specification License.