package org.jboss.resteasy.test.asynch.resource; import javax.ws.rs.container.AsyncResponse; import javax.ws.rs.container.TimeoutHandler; import java.util.concurrent.TimeUnit; public class CallbackTimeoutHandler implements TimeoutHandler { private int function = 0; public CallbackTimeoutHandler(final int function) { super(); this.function = function; } @Override public void handleTimeout(AsyncResponse asyncResponse) { switch (function) { case 1: asyncResponse.setTimeout(200, TimeUnit.MILLISECONDS); break; case 2: asyncResponse.cancel(); break; case 3: asyncResponse.resume(CallbackResource.RESUMED); break; } } }