List of usage examples for org.springframework.http HttpHeaders getETag
@Nullable
public String getETag()
From source file:net.eusashead.hateoas.hal.response.impl.HalResponseBuilderImplTest.java
private void assertHeaders(ResponseEntity<Representation> response) { HttpHeaders headers = response.getHeaders(); Assert.assertNotNull(headers.getETag()); Assert.assertEquals("W/\"123456789\"", headers.getETag()); Assert.assertEquals(123456000, headers.getLastModified()); Assert.assertNotNull(headers.getDate()); Assert.assertNotNull(headers.getExpires()); Assert.assertEquals(headers.getDate() + 1000000, headers.getExpires()); Assert.assertNotNull(headers.getCacheControl()); Assert.assertEquals("public, must-revalidate, proxy-revalidate, max-age=1000", headers.getCacheControl()); }
From source file:org.springframework.cloud.stream.app.http.source.DefaultMixedCaseContentTypeHttpHeaderMapper.java
private Object getHttpHeader(HttpHeaders source, String name) { if (ACCEPT.equalsIgnoreCase(name)) { return source.getAccept(); } else if (ACCEPT_CHARSET.equalsIgnoreCase(name)) { return source.getAcceptCharset(); } else if (ALLOW.equalsIgnoreCase(name)) { return source.getAllow(); } else if (CACHE_CONTROL.equalsIgnoreCase(name)) { String cacheControl = source.getCacheControl(); return (StringUtils.hasText(cacheControl)) ? cacheControl : null; } else if (CONTENT_LENGTH.equalsIgnoreCase(name)) { long contentLength = source.getContentLength(); return (contentLength > -1) ? contentLength : null; } else if (CONTENT_TYPE.equalsIgnoreCase(name)) { return source.getContentType(); } else if (DATE.equalsIgnoreCase(name)) { long date = source.getDate(); return (date > -1) ? date : null; } else if (ETAG.equalsIgnoreCase(name)) { String eTag = source.getETag(); return (StringUtils.hasText(eTag)) ? eTag : null; } else if (EXPIRES.equalsIgnoreCase(name)) { try {//from w ww .j ava2s. co m long expires = source.getExpires(); return (expires > -1) ? expires : null; } catch (Exception e) { if (logger.isDebugEnabled()) { logger.debug(e.getMessage()); } // According to RFC 2616 return null; } } else if (IF_NONE_MATCH.equalsIgnoreCase(name)) { return source.getIfNoneMatch(); } else if (IF_MODIFIED_SINCE.equalsIgnoreCase(name)) { long modifiedSince = source.getIfModifiedSince(); return (modifiedSince > -1) ? modifiedSince : null; } else if (IF_UNMODIFIED_SINCE.equalsIgnoreCase(name)) { String unmodifiedSince = source.getFirst(IF_UNMODIFIED_SINCE); return unmodifiedSince != null ? this.getFirstDate(unmodifiedSince, IF_UNMODIFIED_SINCE) : null; } else if (LAST_MODIFIED.equalsIgnoreCase(name)) { long lastModified = source.getLastModified(); return (lastModified > -1) ? lastModified : null; } else if (LOCATION.equalsIgnoreCase(name)) { return source.getLocation(); } else if (PRAGMA.equalsIgnoreCase(name)) { String pragma = source.getPragma(); return (StringUtils.hasText(pragma)) ? pragma : null; } return source.get(name); }
From source file:org.springframework.data.keyvalue.riak.core.AbstractRiakTemplate.java
protected RiakMetaData extractMetaData(HttpHeaders headers) throws IOException { Map<String, Object> props = new LinkedHashMap<String, Object>(); for (Map.Entry<String, List<String>> entry : headers.entrySet()) { List<String> val = entry.getValue(); Object prop = (1 == val.size() ? val.get(0) : val); try {/* w ww .ja va2s .c o m*/ if (entry.getKey().equals("Last-Modified") || entry.getKey().equals("Date")) { prop = httpDate.parse(val.get(0)); } } catch (ParseException e) { log.error(e.getMessage(), e); } if (entry.getKey().equals("Link")) { List<String> links = new ArrayList<String>(); for (String link : entry.getValue()) { String[] parts = link.split(","); for (String part : parts) { String s = part.replaceAll("<(.+)>; rel=\"(\\S+)\"[,]?", "").trim(); if (!"".equals(s)) { links.add(s); } } } props.put("Link", links); } else { props.put(entry.getKey().toString(), prop); } } props.put("ETag", headers.getETag()); RiakMetaData meta = new RiakMetaData(headers.getContentType(), props); return meta; }
From source file:org.springframework.data.keyvalue.riak.core.AbstractRiakTemplate.java
@SuppressWarnings({ "unchecked" }) protected <K, T> T checkCache(K key, Class<T> requiredType) { BucketKeyPair bucketKeyPair = resolveBucketKeyPair(key, requiredType); RiakValue<?> obj = cache.get(bucketKeyPair); if (null != obj) { String bucketName = (null != bucketKeyPair.getBucket() ? bucketKeyPair.getBucket().toString() : requiredType.getName()); RestTemplate restTemplate = getRestTemplate(); try {// w ww.j ava2 s .co m HttpHeaders resp = restTemplate.headForHeaders(defaultUri, bucketName, bucketKeyPair.getKey()); if (!obj.getMetaData().getProperties().get("ETag").toString().equals(resp.getETag())) { obj = null; } else { if (log.isDebugEnabled()) { log.debug("Returning CACHED object: " + obj); } } } catch (ResourceAccessException ignored) { return null; } } if (null != obj && obj.getClass() == requiredType) { return (T) obj.get(); } else { return null; } }
From source file:org.springframework.integration.http.support.DefaultHttpHeaderMapper.java
private Object getHttpHeader(HttpHeaders source, String name) { if (ACCEPT.equalsIgnoreCase(name)) { return source.getAccept(); } else if (ACCEPT_CHARSET.equalsIgnoreCase(name)) { return source.getAcceptCharset(); } else if (ALLOW.equalsIgnoreCase(name)) { return source.getAllow(); } else if (CACHE_CONTROL.equalsIgnoreCase(name)) { String cacheControl = source.getCacheControl(); return (StringUtils.hasText(cacheControl)) ? cacheControl : null; } else if (CONTENT_LENGTH.equalsIgnoreCase(name)) { long contentLength = source.getContentLength(); return (contentLength > -1) ? contentLength : null; } else if (CONTENT_TYPE.equalsIgnoreCase(name)) { return source.getContentType(); } else if (DATE.equalsIgnoreCase(name)) { long date = source.getDate(); return (date > -1) ? date : null; } else if (ETAG.equalsIgnoreCase(name)) { String eTag = source.getETag(); return (StringUtils.hasText(eTag)) ? eTag : null; } else if (EXPIRES.equalsIgnoreCase(name)) { try {/* w w w . j a va 2 s.com*/ long expires = source.getExpires(); return (expires > -1) ? expires : null; } catch (Exception e) { if (logger.isDebugEnabled()) { logger.debug(e.getMessage()); } // According to RFC 2616 return null; } } else if (IF_NONE_MATCH.equalsIgnoreCase(name)) { return source.getIfNoneMatch(); } else if (IF_UNMODIFIED_SINCE.equalsIgnoreCase(name)) { long unmodifiedSince = source.getIfNotModifiedSince(); return (unmodifiedSince > -1) ? unmodifiedSince : null; } else if (LAST_MODIFIED.equalsIgnoreCase(name)) { long lastModified = source.getLastModified(); return (lastModified > -1) ? lastModified : null; } else if (LOCATION.equalsIgnoreCase(name)) { return source.getLocation(); } else if (PRAGMA.equalsIgnoreCase(name)) { String pragma = source.getPragma(); return (StringUtils.hasText(pragma)) ? pragma : null; } return source.get(name); }