@Override protected void deallocate() { closeSilently(body); } }
public Builder setQop(String qop) { if (isNonEmpty(qop)) { this.qop = qop; } return this; }
private static Charset charsetOrDefault(Charset charset) { return withDefault(charset, DEFAULT_CHARSET); }
tooManyConnections = buildStaticIOException(String.format("Too many connections %s", config.getMaxConnections())); tooManyConnectionsPerHost = buildStaticIOException(String.format("Too many connections per host %s", config.getMaxConnectionsPerHost())); poolAlreadyClosed = buildStaticIOException("Pool is already closed"); maxTotalConnectionsEnabled = config.getMaxConnections() > 0; maxConnectionsPerHostEnabled = config.getMaxConnectionsPerHost() > 0;
public static Throwable getCause(Throwable t) { Throwable cause = t.getCause(); return cause != null ? getCause(cause) : t; } }
tooManyConnections = buildStaticIOException(String.format("Too many connections %s", config.getMaxConnections())); tooManyConnectionsPerHost = buildStaticIOException(String.format("Too many connections per host %s", config.getMaxConnectionsPerHost())); poolAlreadyClosed = buildStaticIOException("Pool is already closed"); maxTotalConnectionsEnabled = config.getMaxConnections() > 0; maxConnectionsPerHostEnabled = config.getMaxConnectionsPerHost() > 0;
@Override protected void onFailure(Throwable cause) { abort(null, future, getCause(cause)); } });
@Override public boolean hasResponseBody() { return isNonEmpty(bodyParts); }
/** * {@inheritDoc} */ public void onAllBytesReceived() { closeSilently(file); }
tooManyConnections = buildStaticIOException(String.format("Too many connections %s", config.getMaxConnections())); tooManyConnectionsPerHost = buildStaticIOException(String.format("Too many connections per host %s", config.getMaxConnectionsPerHost())); poolAlreadyClosed = buildStaticIOException("Pool is already closed"); maxTotalConnectionsEnabled = config.getMaxConnections() > 0; maxConnectionsPerHostEnabled = config.getMaxConnectionsPerHost() > 0;
private void updateCharset() { String contentTypeHeader = headers.get(CONTENT_TYPE); Charset contentTypeCharset = extractContentTypeCharsetAttribute(contentTypeHeader); charset = withDefault(contentTypeCharset, withDefault(charset, UTF_8)); if (contentTypeHeader != null && contentTypeHeader.regionMatches(true, 0, "text/", 0, 5) && contentTypeCharset == null) { // add explicit charset to content-type header headers.set(CONTENT_TYPE, contentTypeHeader + "; charset=" + charset.name()); } }
@Override public void exceptionCaught(ChannelHandlerContext ctx, Throwable e) { Throwable cause = getCause(e);
public String getNonEmptyPath() { return isNonEmpty(path) ? path : "/"; }
private void closeConsumer() { if (bodyConsumer != null) closeSilently(bodyConsumer); }
tooManyConnections = buildStaticIOException(String.format("Too many connections %s", config.getMaxConnections())); tooManyConnectionsPerHost = buildStaticIOException(String.format("Too many connections per host %s", config.getMaxConnectionsPerHost())); poolAlreadyClosed = buildStaticIOException("Pool is already closed"); maxTotalConnectionsEnabled = config.getMaxConnections() > 0; maxConnectionsPerHostEnabled = config.getMaxConnectionsPerHost() > 0;
private static String computeContentType(String contentType, String fileName) { return contentType != null ? contentType : MIME_TYPES_FILE_TYPE_MAP.getContentType(withDefault(fileName, "")); }
abort(null, future, getCause(t));
private String cookiePath(String rawCookiePath, String requestPath) { if (MiscUtils.isNonEmpty(rawCookiePath) && rawCookiePath.charAt(0) == '/') { return rawCookiePath; } else { // rfc6265#section-5.1.4 int indexOfLastSlash = requestPath.lastIndexOf('/'); if (!requestPath.isEmpty() && requestPath.charAt(0) == '/' && indexOfLastSlash > 0) return requestPath.substring(0, indexOfLastSlash); else return "/"; } }
public void close() { if (closed.compareAndSet(false, true)) { for (MultipartPart<? extends Part> part : parts) { closeSilently(part); } } }
@Override public String getResponseBody() { return getResponseBody(withDefault(extractContentTypeCharsetAttribute(getContentType()), UTF_8)); }