|
|
|
@ -1,5 +1,5 @@
@@ -1,5 +1,5 @@
|
|
|
|
|
/* |
|
|
|
|
* Copyright 2002-2015 the original author or authors. |
|
|
|
|
* Copyright 2002-2016 the original author or authors. |
|
|
|
|
* |
|
|
|
|
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
|
|
|
* you may not use this file except in compliance with the License. |
|
|
|
@ -212,34 +212,34 @@ public class CacheControl {
@@ -212,34 +212,34 @@ public class CacheControl {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Add an "stale-while-revalidate" directive. |
|
|
|
|
* <p>This directive indicates that caches MAY serve the response in |
|
|
|
|
* which it appears after it becomes stale, up to the indicated number of seconds. |
|
|
|
|
* If a cached response is served stale due to the presence of this extension, |
|
|
|
|
* the cache SHOULD attempt to revalidate it while still serving stale responses (i.e., without blocking). |
|
|
|
|
* @param staleWhileRevalidate the maximum time the response should be used while being revalidated |
|
|
|
|
* @param unit the time unit of the {@code sMaxAge} argument |
|
|
|
|
* @return {@code this}, to facilitate method chaining |
|
|
|
|
* @see <a href="http://tools.ietf.org/html/rfc5861#section-3">rfc5861 section 3</a> |
|
|
|
|
*/ |
|
|
|
|
public CacheControl staleWhileRevalidate(long staleWhileRevalidate, TimeUnit unit) { |
|
|
|
|
this.staleWhileRevalidate = unit.toSeconds(staleWhileRevalidate); |
|
|
|
|
return this; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Add an "stale-if-error" directive. |
|
|
|
|
* <p>This directive indicates that that when an error is encountered, a cached stale response MAY be used to satisfy |
|
|
|
|
* the request, regardless of other freshness information.. |
|
|
|
|
* @param staleIfError the maximum time the response should be used when errors are encountered |
|
|
|
|
* @param unit the time unit of the {@code sMaxAge} argument |
|
|
|
|
* @return {@code this}, to facilitate method chaining |
|
|
|
|
* @see <a href="http://tools.ietf.org/html/rfc5861#section-4">rfc5861 section 4</a> |
|
|
|
|
*/ |
|
|
|
|
public CacheControl staleIfError(long staleIfError, TimeUnit unit) { |
|
|
|
|
this.staleIfError = unit.toSeconds(staleIfError); |
|
|
|
|
return this; |
|
|
|
|
} |
|
|
|
|
* Add a "stale-while-revalidate" directive. |
|
|
|
|
* <p>This directive indicates that caches MAY serve the response in |
|
|
|
|
* which it appears after it becomes stale, up to the indicated number of seconds. |
|
|
|
|
* If a cached response is served stale due to the presence of this extension, |
|
|
|
|
* the cache SHOULD attempt to revalidate it while still serving stale responses (i.e., without blocking). |
|
|
|
|
* @param staleWhileRevalidate the maximum time the response should be used while being revalidated |
|
|
|
|
* @param unit the time unit of the {@code staleWhileRevalidate} argument |
|
|
|
|
* @return {@code this}, to facilitate method chaining |
|
|
|
|
* @see <a href="https://tools.ietf.org/html/rfc5861#section-3">rfc5861 section 3</a> |
|
|
|
|
*/ |
|
|
|
|
public CacheControl staleWhileRevalidate(long staleWhileRevalidate, TimeUnit unit) { |
|
|
|
|
this.staleWhileRevalidate = unit.toSeconds(staleWhileRevalidate); |
|
|
|
|
return this; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Add a "stale-if-error" directive. |
|
|
|
|
* <p>This directive indicates that when an error is encountered, a cached stale response MAY be used to satisfy |
|
|
|
|
* the request, regardless of other freshness information. |
|
|
|
|
* @param staleIfError the maximum time the response should be used when errors are encountered |
|
|
|
|
* @param unit the time unit of the {@code staleIfError} argument |
|
|
|
|
* @return {@code this}, to facilitate method chaining |
|
|
|
|
* @see <a href="https://tools.ietf.org/html/rfc5861#section-4">rfc5861 section 4</a> |
|
|
|
|
*/ |
|
|
|
|
public CacheControl staleIfError(long staleIfError, TimeUnit unit) { |
|
|
|
|
this.staleIfError = unit.toSeconds(staleIfError); |
|
|
|
|
return this; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
@ -275,10 +275,10 @@ public class CacheControl {
@@ -275,10 +275,10 @@ public class CacheControl {
|
|
|
|
|
if (this.sMaxAge != -1) { |
|
|
|
|
appendDirective(ccValue, "s-maxage=" + Long.toString(this.sMaxAge)); |
|
|
|
|
} |
|
|
|
|
if(this.staleIfError != -1) { |
|
|
|
|
if (this.staleIfError != -1) { |
|
|
|
|
appendDirective(ccValue, "stale-if-error=" + Long.toString(this.staleIfError)); |
|
|
|
|
} |
|
|
|
|
if(this.staleWhileRevalidate != -1) { |
|
|
|
|
if (this.staleWhileRevalidate != -1) { |
|
|
|
|
appendDirective(ccValue, "stale-while-revalidate=" + Long.toString(this.staleWhileRevalidate)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|