cachedresourcefactory.java

来自「很棒的web服务器源代码」· Java 代码 · 共 55 行

JAVA
55
字号
// CachedResourceFactory.java// $Id: CachedResourceFactory.java,v 1.16 2000/08/16 21:38:04 ylafon Exp $// (c) COPYRIGHT MIT, INRIA and Keio, 1999.// Please first read the full copyright statement in file COPYRIGHT.htmlpackage org.w3c.www.protocol.http.cache;import java.io.IOException;import org.w3c.www.protocol.http.Reply;import org.w3c.www.protocol.http.Request;/**  * The factory for cache entries. * All cache entries have to be sub-classes of CachedResource, that's the * only limitation to the fun you can have down here. */public class CachedResourceFactory {    /**     * Create a suitable instance of some subclass of CachedResource.     * @param filter The cache filter that ones to create a new entry.     * @param request The original request we emitted.     * @param reply The reply we got from the origin server.     * @return An instance of CachedResource, or <strong>null</strong>     * if no resource was created.     */    public static CachedResource createResource(CacheFilter filter						, Request request						, Reply reply)	throws IOException    {	CachedResource r = null;	String v[] = reply.getVary();		// this is a nightmare, as there is no capitalization	// and someone may add other headers	// on top of that Apache use Vary: negotiate every time the 	// Content-Location is not the same as the request URI...		if (v == null) {	    // no vary, the easy way :)	    r = new EntityCachedResource(filter, request, reply);	} else {	// Check for a varying resource first://	if ( reply.hasHeader(reply.H_VARY) ) //	    r = new VaryResource(filter, request, reply);//	else 	    r = new EntityCachedResource(filter, request, reply);	}	return r;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?