@Override public String readAttribute(HttpServerExchange exchange) { byte[] data = exchange.getAttachment(StoredResponseStreamSinkConduit.RESPONSE); if(data == null) { return null; } String charset = extractCharset(exchange.getResponseHeaders()); if(charset == null) { return null; } try { return new String(data, charset); } catch (UnsupportedEncodingException e) { UndertowLogger.ROOT_LOGGER.debugf(e,"Could not decode response body using charset %s", charset); return null; } } private String extractCharset(HeaderMap headers) {
@Override public String readAttribute(HttpServerExchange exchange) { byte[] data = exchange.getAttachment(StoredResponseStreamSinkConduit.RESPONSE); if(data == null) { return null; } String charset = extractCharset(exchange.getResponseHeaders()); if(charset == null) { return null; } try { return new String(data, charset); } catch (UnsupportedEncodingException e) { UndertowLogger.ROOT_LOGGER.debugf(e,"Could not decode response body using charset %s", charset); return null; } } private String extractCharset(HeaderMap headers) {
@Override public String readAttribute(HttpServerExchange exchange) { byte[] data = exchange.getAttachment(StoredResponseStreamSinkConduit.RESPONSE); if(data == null) { return null; } String charset = extractCharset(exchange.getResponseHeaders()); if(charset == null) { return null; } try { return new String(data, charset); } catch (UnsupportedEncodingException e) { UndertowLogger.ROOT_LOGGER.debugf(e,"Could not decode response body using charset %s", charset); return null; } } private String extractCharset(HeaderMap headers) {