ResponseCache
  public
  
  
  abstract
  class
  ResponseCache
  
    extends Object
  
  
  
  
  
  
  
    
      
        
          Known direct subclasses
          
  
  
    
  
  
    
      
        | HttpResponseCache | 
        
          Caches HTTP and HTTPS responses to the filesystem so they may be reused,
 saving time and bandwidth. 
          
    
         | 
       
      
    
   
   
         
       | 
    
  
  
  
    
  Represents implementations of URLConnection caches. An instance of
 such a class can be registered with the system by doing
 ResponseCache.setDefault(ResponseCache), and the system will call
 this object in order to:
    
- store resource data which has been retrieved from an
            external source into the cache
 
         - try to fetch a requested resource that may have been
            stored in the cache
 
    
 The ResponseCache implementation decides which resources
 should be cached, and for how long they should be cached. If a
 request resource cannot be retrieved from the cache, then the
 protocol handlers will fetch the resource from its original
 location.
 The settings for URLConnection#useCaches controls whether the
 protocol is allowed to use a cached response.
 For more information on HTTP caching, see 
RFC 2616: Hypertext
 Transfer Protocol -- HTTP/1.1
Summary
Inherited methods | 
  
    From class
      
        
          java.lang.Object
        
      
    
    
      
  
  
  
    
        
        
        
        
        
        Object
     | 
  
    
      
      clone()
      
      
        Creates and returns a copy of this object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        boolean
     | 
  
    
      
      equals(Object obj)
      
      
        Indicates whether some other object is "equal to" this one.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        void
     | 
  
    
      
      finalize()
      
      
        Called by the garbage collector on an object when garbage collection
 determines that there are no more references to the object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        Class<?>
     | 
  
    
      
      getClass()
      
      
        Returns the runtime class of this Object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        int
     | 
  
    
      
      hashCode()
      
      
        Returns a hash code value for the object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      notify()
      
      
        Wakes up a single thread that is waiting on this object's
 monitor.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      notifyAll()
      
      
        Wakes up all threads that are waiting on this object's monitor.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        String
     | 
  
    
      
      toString()
      
      
        Returns a string representation of the object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      wait(long timeoutMillis, int nanos)
      
      
        Causes the current thread to wait until it is awakened, typically
 by being notified or interrupted, or until a
 certain amount of real time has elapsed.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      wait(long timeoutMillis)
      
      
        Causes the current thread to wait until it is awakened, typically
 by being notified or interrupted, or until a
 certain amount of real time has elapsed.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      wait()
      
      
        Causes the current thread to wait until it is awakened, typically
 by being notified or interrupted.
        
    
 
      
     | 
   
  
     
   
 | 
Public constructors
    ResponseCache
    
public ResponseCache ()
    
    
    
  
 
Public methods
    get
    
public abstract CacheResponse get (URI uri, 
                String rqstMethod, 
                Map<String, List<String>> rqstHeaders)
    
    
    
  Retrieve the cached response based on the requesting uri,
 request method and request headers. Typically this method is
 called by the protocol handler before it sends out the request
 to get the network resource. If a cached response is returned,
 that resource is used instead.
    
    | Parameters | 
      
        uri | 
        
          URI: a URI used to reference the requested
            network resource | 
      
      
        rqstMethod | 
        
          String: a String representing the request
            method | 
      
      
        rqstHeaders | 
        
          Map: - a Map from request header
            field names to lists of field values representing
            the current request headers | 
      
    
    
      | Returns | 
      
        CacheResponse | 
        a CacheResponse instance if available
          from cache, or null otherwise | 
      
    
      
  
  
 
    getDefault
    
public static ResponseCache getDefault ()
    
    
    
  Gets the system-wide response cache.
    
    
      
  
  
 
    put
    
public abstract CacheRequest put (URI uri, 
                URLConnection conn)
    
    
    
  The protocol handler calls this method after a resource has
 been retrieved, and the ResponseCache must decide whether or
 not to store the resource in its cache. If the resource is to
 be cached, then put() must return a CacheRequest object which
 contains an OutputStream that the protocol handler will
 use to write the resource into the cache. If the resource is
 not to be cached, then put must return null.
    
    | Parameters | 
      
        uri | 
        
          URI: a URI used to reference the requested
            network resource | 
      
      
        conn | 
        
          URLConnection: - a URLConnection instance that is used to fetch
            the response to be cached | 
      
    
    
      | Returns | 
      
        CacheRequest | 
        a CacheRequest for recording the
            response to be cached. Null return indicates that
            the caller does not intend to cache the response. | 
      
    
      
  
 
    setDefault
    
public static void setDefault (ResponseCache responseCache)
    
    
    
  Sets (or unsets) the system-wide cache.
 Note: non-standard procotol handlers may ignore this setting.
    
    
    | Parameters | 
      
        responseCache | 
        
          ResponseCache: The response cache, or
          null to unset the cache. |