} else { nanos = System.nanoTime() - requestStartTime; if(exchange.isResponseComplete()) {
return; if(exchange.isResponseComplete()) { invokeOnException(callback, new IOException(UndertowMessages.MESSAGES.responseComplete()));
exchange.setResponseCode(challengeResult.getDesiredResponseCode()); if (exchange.isResponseComplete()) { break;
@Override public void transferFrom(FileChannel source, IoCallback callback) { if (callback == null) { throw UndertowMessages.MESSAGES.argumentCannotBeNull("callback"); } if(!exchange.getConnection().isOpen()) { invokeOnException(callback, new ClosedChannelException()); return; } if(exchange.isResponseComplete()) { invokeOnException(callback, new IOException(UndertowMessages.MESSAGES.responseComplete())); } if (this.fileChannel != null || this.buffer != null) { throw UndertowMessages.MESSAGES.dataAlreadyQueued(); } this.callback = callback; this.fileChannel = source; if (inCallback) { return; } if(transferTask == null) { transferTask = new TransferTask(); } if (exchange.isInIoThread()) { exchange.dispatch(transferTask); return; } transferTask.run(); }
return; if(exchange.isResponseComplete()) { invokeOnException(callback, new IOException(UndertowMessages.MESSAGES.responseComplete()));
return; if(exchange.isResponseComplete()) { invokeOnException(callback, new IOException(UndertowMessages.MESSAGES.responseComplete()));
@Override public void handleRequest(HttpServerExchange exchange) throws Exception { RestExchange restExchange = new RestExchange(exchange); try { if (!exchange.isResponseComplete()) { endpoint.accept(restExchange); } } catch (Exception e) { exceptionMapper.getOrFallback(e).onException(e, restExchange); } }
} else { nanos = System.nanoTime() - requestStartTime; if(exchange.isResponseComplete()) {
} else { nanos = System.nanoTime() - requestStartTime; if(exchange.isResponseComplete()) {
@Override public void handleRequest(HttpServerExchange exchange) { T httpExchange = createExchange(exchange); try { if (!exchange.isResponseComplete()) { endpoint.accept(httpExchange); } } catch (Exception e) { if (exchange.isResponseChannelAvailable() && !exchange.isResponseComplete()) { //unwraps the original caught from RestConsumer if (e instanceof ApplicationException) { e = ((ApplicationException) e).original; } logger.error(HandlerUtil.exceptionMessageTemplate(exchange, "Application error"), e); exceptionMapper.getOrFallback(e).accept(e, httpExchange); exchange.endExchange(); } else { logger.error(e.getMessage(), e); } } }
@Override public void handleRequest(HttpServerExchange exchange, RequestContext context) throws Exception { for (String traceIdHeader: Bootstrapper.getConfiguration().getTraceHeaders()) { Optional.ofNullable(exchange.getRequestHeaders().get(traceIdHeader)) .flatMap(x -> Optional.ofNullable(x.peekFirst())) .ifPresent(value -> { MDC.put(traceIdHeader, value); exchange.getResponseHeaders().put(HttpString.tryFromString(traceIdHeader), value); }); } if (!exchange.isResponseComplete() && getNext() != null) { next(exchange, context); } } }
@Override public void handleRequest(HttpServerExchange exchange) throws Exception { boolean faviconHandled = false; if (!exchange.isResponseComplete() && exchange.getRequestPath().contains("favicon.ico")) { try (InputStream faviconStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("favicon.ico")) { if (faviconStream != null) { // Load from WAR faviconHandled = writeFavicon(faviconStream, exchange); } } if (!faviconHandled) { Module module = Module.getBootModuleLoader().loadModule("org.wildfly.swarm.undertow:runtime"); ClassLoader cl = module.getClassLoader(); try (InputStream in = cl.getResourceAsStream("favicon-default.ico")) { if (in != null) { // Return default faviconHandled = writeFavicon(in, exchange); } } } } if (!faviconHandled) { this.next.handleRequest(exchange); } }
@Override public void handleRequest(HttpServerExchange exchange) throws Exception { RestExchange restExchange = new RestExchange(exchange); try { if (!exchange.isResponseComplete()) { endpoint.accept(restExchange); } } catch (Exception e) { //unwraps the exception caught from RestConsumer if(e instanceof ExceptionCaught) { e = ((ExceptionCaught)e).exception; } ExceptionDetails<Exception> wrapper = new ExceptionDetails<>(e); logger.error(HandlerUtil.exceptionMessageTemplate(exchange, wrapper.timestamp, "Application error"), e); exceptionMapper.getOrFallback(e).onException(wrapper, restExchange); exchange.endExchange(); } }
@Override public void handleRequest(HttpServerExchange exchange) throws Exception { boolean faviconHandled = false; if (!exchange.isResponseComplete() && exchange.getRequestPath().contains("favicon.ico")) { try (InputStream faviconStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("favicon.ico")) { if (faviconStream != null) { // Load from WAR faviconHandled = writeFavicon(faviconStream, exchange); } } if (!faviconHandled) { Module module = Module.getBootModuleLoader().loadModule(ModuleIdentifier.create("org.wildfly.swarm.undertow", "runtime")); ClassLoader cl = module.getClassLoader(); try (InputStream in = cl.getResourceAsStream("favicon.ico")) { if (in != null) { // Return default faviconHandled = writeFavicon(in, exchange); } } } } if (!faviconHandled) { this.next.handleRequest(exchange); } }
/** * * @param exchange * @param context * @throws Exception */ @Override public void handleRequest(HttpServerExchange exchange, RequestContext context) throws Exception { if (wrapped == null) { next(exchange, context); } else { wrapped.handleRequest(exchange); if (!exchange.isResponseComplete() && getNext() != null) { next(exchange, context); } } } }
return; if(exchange.isResponseComplete()) { invokeOnException(callback, new IOException(UndertowMessages.MESSAGES.responseComplete()));
return; if(exchange.isResponseComplete()) { invokeOnException(callback, new IOException(UndertowMessages.MESSAGES.responseComplete()));
@Override public void handleRequest(HttpServerExchange exchange, RequestContext context) throws Exception { final long requestStartTime = context.getRequestStartTime(); if (!exchange.isComplete()) { exchange.addExchangeCompleteListener((httpServerExchange, nextListener) -> { addMetrics(requestStartTime, httpServerExchange, context); nextListener.proceed(); }); } if (!exchange.isResponseComplete() && getNext() != null) { next(exchange, context); } }
@Override public void transferFrom(FileChannel source, IoCallback callback) { if (callback == null) { throw UndertowMessages.MESSAGES.argumentCannotBeNull("callback"); } if(!exchange.getConnection().isOpen()) { invokeOnException(callback, new ClosedChannelException()); return; } if(exchange.isResponseComplete()) { invokeOnException(callback, new IOException(UndertowMessages.MESSAGES.responseComplete())); } if (this.fileChannel != null || this.buffer != null) { throw UndertowMessages.MESSAGES.dataAlreadyQueued(); } this.callback = callback; this.fileChannel = source; if (inCallback) { return; } if(transferTask == null) { transferTask = new TransferTask(); } if (exchange.isInIoThread()) { exchange.dispatch(transferTask); return; } transferTask.run(); }
@Override public void transferFrom(FileChannel source, IoCallback callback) { if (callback == null) { throw UndertowMessages.MESSAGES.argumentCannotBeNull("callback"); } if(!exchange.getConnection().isOpen()) { invokeOnException(callback, new ClosedChannelException()); return; } if(exchange.isResponseComplete()) { invokeOnException(callback, new IOException(UndertowMessages.MESSAGES.responseComplete())); } if (this.fileChannel != null || this.buffer != null) { throw UndertowMessages.MESSAGES.dataAlreadyQueued(); } this.callback = callback; this.fileChannel = source; if (inCallback) { return; } if(transferTask == null) { transferTask = new TransferTask(); } if (exchange.isInIoThread()) { exchange.dispatch(transferTask); return; } transferTask.run(); }