Build 1.0_r1(from source)

java.net
Class ResponseCache

java.lang.Object
  extended by java.net.ResponseCache

public abstract class ResponseCache
extends Object

ResponseCache implements URLConnection caches. System default cache can be registered by invoking ResponseCache.setDefault(ResponseCache), and can be retrieved by invoking ResponseCache.getDefault. If URLConnection#useCaches is set, URLConnection class will use ResponseCache to store and get resources. Whether the resource is cached depends on ResponseCache implementation. If a request resource is cached, protocol handler will fecth it from the cache. If the protocol handler fails to get resource from the cache, it turns to get the resource from its original location.


Constructor Summary
ResponseCache()
          Constructor method.
 
Method Summary
abstract  CacheResponse get(URI uri, String rqstMethod, Map<String,List<String>> rqstHeaders)
          Gets the cached response according to requesting uri,method and headers.
static ResponseCache getDefault()
          Gets system default response cache.
abstract  CacheRequest put(URI uri, URLConnection conn)
          Protocol handler calls this method after retrieving resources.
static void setDefault(ResponseCache responseCache)
          Sets the system default response cache when responseCache is not null.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ResponseCache

public ResponseCache()
Constructor method.

Method Detail

getDefault

public static ResponseCache getDefault()
Gets system default response cache.

Returns:
default ResponseCache.
Throws:
SecurityException - If a security manager is installed and it doesn't have NetPermission("getResponseCache").

setDefault

public static void setDefault(ResponseCache responseCache)
Sets the system default response cache when responseCache is not null. Otherwise, the method unsets the system default response cache. This setting may be ignored by some non-standard protocols.

Parameters:
responseCache - Set default ResponseCache. If responseCache is null, it unsets the cache.
Throws:
SecurityException - If a security manager is installed and it doesn't have NetPermission("setResponseCache").

get

public abstract CacheResponse get(URI uri,
                                  String rqstMethod,
                                  Map<String,List<String>> rqstHeaders)
                           throws IOException
Gets the cached response according to requesting uri,method and headers.

Parameters:
uri - A URL represents requesting uri.
rqstMethod - A String represents requesting method.
rqstHeaders - A Map from request header field names to lists of field values represents requesting headers.
Returns:
A CacheResponse object if the request is available in the cache. Otherwise, this method returns null.
Throws:
IOException - If an I/O error is encountered.
IllegalArgumentException - If any one of the parameters is null

put

public abstract CacheRequest put(URI uri,
                                 URLConnection conn)
                          throws IOException
Protocol handler calls this method after retrieving resources. The ResponseCache decides whether the resource should be cached. If the resource needs to be cached, this method will return a CacheRequest with a WriteableByteChannel, and then, protocol handler will use this channel to write the resource data into the cache. Otherwise, if the resource doesn't need to be cached, it returns null.

Parameters:
uri -
conn -
Returns:
a CacheRequest which contains WriteableByteChannel if the resource is cached. Otherwise, it returns null.
Throws:
IOException - If an I/O error is encountered.
IllegalArgumentException - If any one of the parameters is null.

Build 1.0_r1(from source)

Please submit a feedback, bug or feature