private boolean responseAndEntryEtagsDiffer(final HttpResponse response, final HttpCacheEntry entry) { final Header entryEtag = entry.getFirstHeader(HeaderConstants.ETAG); final Header responseEtag = response.getFirstHeader(HeaderConstants.ETAG); if (entryEtag == null || responseEtag == null) { return false; } return (!entryEtag.getValue().equals(responseEtag.getValue())); }
@Override public boolean expectContinue() { final Header expect = getFirstHeader(HTTP.EXPECT_DIRECTIVE); return expect != null && HTTP.EXPECT_CONTINUE.equalsIgnoreCase(expect.getValue()); }
@Override public boolean expectContinue() { final Header expect = getFirstHeader(HTTP.EXPECT_DIRECTIVE); return expect != null && HTTP.EXPECT_CONTINUE.equalsIgnoreCase(expect.getValue()); }
protected long getContentLengthValue(final HttpCacheEntry entry) { final Header cl = entry.getFirstHeader(HTTP.CONTENT_LEN); if (cl == null) { return -1; } try { return Long.parseLong(cl.getValue()); } catch (final NumberFormatException ex) { return -1; } }
public String getHeader(String name) { Header header = request.getFirstHeader(name); if (header == null) { return null; } return header.getValue(); }
public String getContentType() { if (entity == null) { return null; } Header header = entity.getContentType(); if (header == null) { return null; } return header.getValue(); }
@Override public boolean expectContinue() { final Header expect = getFirstHeader(HTTP.EXPECT_DIRECTIVE); return expect != null && HTTP.EXPECT_CONTINUE.equalsIgnoreCase(expect.getValue()); }
@Override public boolean expectContinue() { final Header expect = getFirstHeader(HTTP.EXPECT_DIRECTIVE); return expect != null && HTTP.EXPECT_CONTINUE.equalsIgnoreCase(expect.getValue()); }
/** * Returns the HTTP request method that was used to create the cached * response entry. * * @since 4.4 */ public String getRequestMethod() { final Header requestMethodHeader = responseHeaders .getFirstHeader(REQUEST_METHOD_HEADER_NAME); if (requestMethodHeader != null) { return requestMethodHeader.getValue(); } return HeaderConstants.GET_METHOD; }
private void removeCacheEntry1xxWarnings(final List<Header> cacheEntryHeaderList, final HttpCacheEntry entry) { final ListIterator<Header> cacheEntryHeaderListIter = cacheEntryHeaderList.listIterator(); while (cacheEntryHeaderListIter.hasNext()) { final String cacheEntryHeaderName = cacheEntryHeaderListIter.next().getName(); if (HeaderConstants.WARNING.equals(cacheEntryHeaderName)) { for (final Header cacheEntryWarning : entry.getHeaders(HeaderConstants.WARNING)) { if (cacheEntryWarning.getValue().startsWith("1")) { cacheEntryHeaderListIter.remove(); } } } } }
public Map<String, String> getAllHeaders() { Header[] origHeaders = request.getAllHeaders(); HashMap<String, String> headers = new HashMap<String, String>(); for (Header h : origHeaders) { headers.put(h.getName(), h.getValue()); } return headers; }
private boolean hasValidDateField(final HttpRequest request, final String headerName) { for(final Header h : request.getHeaders(headerName)) { final Date date = DateUtils.parseDate(h.getValue()); return date != null; } return false; } }
protected Date getLastModifiedValue(final HttpCacheEntry entry) { final Header dateHdr = entry.getFirstHeader(HeaderConstants.LAST_MODIFIED); if (dateHdr == null) { return null; } return DateUtils.parseDate(dateHdr.getValue()); }
/** * Find the "Date" response header and parse it into a java.util.Date * @return the Date value of the header or null if the header is not present */ private Date parseDate() { final Header dateHdr = getFirstHeader(HTTP.DATE_HEADER); if (dateHdr == null) { return null; } return DateUtils.parseDate(dateHdr.getValue()); }
protected Date getExpirationDate(final HttpCacheEntry entry) { final Header expiresHeader = entry.getFirstHeader(HeaderConstants.EXPIRES); if (expiresHeader == null) { return null; } return DateUtils.parseDate(expiresHeader.getValue()); }
private void addVariantWithEtag(final String variantKey, final String variantCacheKey, final Map<String, Variant> variants) throws IOException { final HttpCacheEntry entry = storage.getEntry(variantCacheKey); if (entry == null) { return; } final Header etagHeader = entry.getFirstHeader(HeaderConstants.ETAG); if (etagHeader == null) { return; } variants.put(etagHeader.getValue(), new Variant(variantKey, variantCacheKey, entry)); }
private void decrementOPTIONSMaxForwardsIfGreaterThen0(final HttpRequest request) { if (!HeaderConstants.OPTIONS_METHOD.equals(request.getRequestLine().getMethod())) { return; } final Header maxForwards = request.getFirstHeader(HeaderConstants.MAX_FORWARDS); if (maxForwards == null) { return; } request.removeHeaders(HeaderConstants.MAX_FORWARDS); final int currentMaxForwards = Integer.parseInt(maxForwards.getValue()); request.setHeader(HeaderConstants.MAX_FORWARDS, Integer.toString(currentMaxForwards - 1)); }
private URL getContentLocationURL(final URL reqURL, final HttpResponse response) { final Header clHeader = response.getFirstHeader("Content-Location"); if (clHeader == null) { return null; } final String contentLocation = clHeader.getValue(); final URL canonURL = getAbsoluteURL(contentLocation); if (canonURL != null) { return canonURL; } return getRelativeURL(reqURL, contentLocation); }
private URL getLocationURL(final URL reqURL, final HttpResponse response) { final Header clHeader = response.getFirstHeader("Location"); if (clHeader == null) { return null; } final String location = clHeader.getValue(); final URL canonURL = getAbsoluteURL(location); if (canonURL != null) { return canonURL; } return getRelativeURL(reqURL, location); }
static MultipartFormEntityBytes buildMultipartFormEntityBytes(JSONObject params) throws ConnectionException { HttpEntity httpEntity = multiPartFormEntity(params); return new MultipartFormEntityBytes( httpEntity.getContentType().getName(), httpEntity.getContentType().getValue(), httpEntityToBytes(httpEntity)); }