java.net.CacheResponse Class in Java

CacheResponse is an abstract class that represents channels for retrieving resources from the ResponseCache. The objects of this class provide an InputStream that returns the entity-body and the associated response headers. This class inherits methods from java.lang.Object like as clone, equals, finalize, getClass(), hashCode(), notify(), notifyAll(), toString(), wait().

public abstract class CacheResponse  extends Object

Methods: CacheResponse class provides two methods which are as follows:

  1. getBody() method
  2.  getHeaders() method

Method 1: getBody() method returns an InputStream from which the response body can be accessed.

Syntax:

public abstract InputStream getBody()  throws IOException 

Parameters: NA

Return Type: This method returns the response body as an InputStream.

Exceptions: I/O Exception been thrown while getting response headers.

Implementation:

Example 1

Java




// Java Program to illustrate CacheResponse Class
// showcasing getBody() method
 
// Importing general class of exception
// produced by Interrupted I/O exception
import java.io.IOException;
// Importing superclass of all IO classes
import java.io.InputStream;
// Importing Cacheresponse class from java.net package
// to create an applet
import java.net.CacheResponse;
// Importing List and Map classes
// from java.util package
import java.util.List;
import java.util.Map;
 
// Main class
public class GFG {
 
    // Main driver method
    public static void main(String[] args)
        throws IOException
    {
 
        // Creating an object of CacheResponse class
        CacheResponse cr = new CacheResponse() {
            // getHeaders() method returns response headers
            // as Map
            public Map<String, List<String> > getHeaders()
                throws IOException
            {
 
                return null;
            }
 
            // getBody() method returns response body as
            // InputStream
            public InputStream getBody() throws IOException
            {
                System.out.println(
                    "getbody() has been tested");
                return null;
            }
        };
 
        // Returning an InputStream from which response body
        // can be accessed
        cr.getBody();
    }
}


Output

getbody() has been tested

Now illustrating another method as discussed earlier in the header 

Method 2: getHeaders() method returns an immutable map from response header field names to lists of field values.

Syntax: 

public abstract Map<String,List<String>> getHeaders()   throws IOException  

Parameters: NA

Return Type: The response of the header as a Map.

Exceptions: I/O Exception been thrown while getting response headers.

Implementation:

Example 2 

Java




// Java Program to illustrate CacheResponse Class
// showcasing getHeaders() method
 
// Importing general class of exception
// produced by Interrupted I/O exception
import java.io.IOException;
// Importing superclass of all IO classes 
import java.io.InputStream; 
// Importing Cacheresponse class from java.net package
// to create an applet
import java.net.CacheResponse;
// Importing List, Linkedlist, Map, Tree, TreeMap classes
// from java.util package 
import java.util.LinkedList; 
import java.util.List; 
import java.util.Map; 
import java.util.TreeMap; 
 
// Main class
// To illustrate getHeaders() method 
public class GFG { 
   
    // main driver method
    public static void main(String[] args) throws IOException {
 
        // Creating an object of CacheResponse class 
        CacheResponse cr = new CacheResponse() { 
              
            // getHeaders() method returns response headers as Map
            public Map<String, List<String>> getHeaders() throws IOException { 
 
               // Creating an object of Map class
               // Object is of type- Integer and List<String>
               Map<Integer, List<String>> map = new TreeMap<Integer, List<String>>(); 
                
               // Creating an object of List class
               List<String> list= new LinkedList<String>(); 
                
               // Adding element to List object created  above
               // using add() method
               list.add("GFG"); 
               // Adding element to map object created above
               // using put() method
               map.put(1,list);
                 
                // Print Map class object element's
                System.out.println(map); 
                return null
            
            // getBody() method returns response body as InputStream
            public InputStream getBody() throws IOException { 
                return null
            
        }; 
 
        // Returning an immutable Map from response header
        cr.getHeaders();
}
}


Output

{1=[GFG]}

 



Contact Us