package org.wikiwebserver.handler.http.interfaces;

import java.io.IOException;

import org.wikiwebserver.handler.http.HTTPHandler;
import org.wikiwebserver.handler.http.interfaces.HTTPResponder;

/**
 * A class implementing CacheableHTTPResponder can generate a dynamic 
 * content suitable for responding to a request made by a web browser.
 * 
 * The response can be cached and returned to subsequent requests if the 
 * getCacheKey method returns the same value for the request.
 * 
 * @author Dr Michael Gardiner
 *
 */
public interface CacheableHTTPResponse extends HTTPResponder {
    
    public void init(HTTPHandler conn) throws IOException;
    
    public String getCacheKey();
    public long getExpireTime();    
}

