private void respondAsync(final Request request, final Response response) { final AsyncContext asyncContext = httpServletRequest.startAsync(); scheduledExecutorService.schedule(new Runnable() { @Override public void run() { try { respondTo(request, response); } finally { asyncContext.complete(); } } }, response.getInitialDelay(), MILLISECONDS); }
private boolean isAsyncSupported(Response response, HttpServletRequest httpServletRequest) { return scheduledExecutorService != null && response.getInitialDelay() > 0 && httpServletRequest.isAsyncSupported(); }
private void respondSync(Request request, Response response) { delayIfRequired(response.getInitialDelay()); respondTo(request, response); }
public ServeEvent complete(Response response, int processTimeMillis) { return new ServeEvent(id, request, stubMapping, responseDefinition, LoggedResponse.from(response), false, new Timing((int) response.getInitialDelay(), processTimeMillis)); }
public static Builder like(Response response) { Builder responseBuilder = new Builder(); responseBuilder.status = response.getStatus(); responseBuilder.bodyStream = response.bodyStreamSource; responseBuilder.headers = response.getHeaders(); responseBuilder.configured = response.wasConfigured(); responseBuilder.fault = response.getFault(); responseBuilder.initialDelay = response.getInitialDelay(); responseBuilder.chunkedDribbleDelay = response.getChunkedDribbleDelay(); responseBuilder.fromProxy = response.isFromProxy(); return responseBuilder; }