You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by so...@apache.org on 2009/04/24 00:19:57 UTC
svn commit: r768080 - in
/myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad:
resource/CachingResourceLoader.java resource/ResourceLoader.java
webapp/ResourceServlet.java
Author: sobryan
Date: Thu Apr 23 22:19:57 2009
New Revision: 768080
URL: http://svn.apache.org/viewvc?rev=768080&view=rev
Log:
TRINIDAD-1457: Need the ability to bypass the Cache on ResourceServlet
* Added an isCachable() method to ResourceLoader
* Override isCachable() method in CachingResourceLoader to return false
* Added code in ResourceServlet to only Cache cachable resources
Modified:
myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/CachingResourceLoader.java
myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/ResourceLoader.java
myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/ResourceServlet.java
Modified: myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/CachingResourceLoader.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/CachingResourceLoader.java?rev=768080&r1=768079&r2=768080&view=diff
==============================================================================
--- myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/CachingResourceLoader.java (original)
+++ myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/CachingResourceLoader.java Thu Apr 23 22:19:57 2009
@@ -50,6 +50,8 @@
_cache = new ConcurrentHashMap<String, URL>();
}
+
+
/**
* Returns the cached resource url if previously requested. Otherwise,
* fully reads the resource contents stores in the cache.
@@ -83,6 +85,12 @@
private final ConcurrentMap<String, URL> _cache;
+ @Override
+ public boolean isCachable()
+ {
+ return false;
+ }
+
/**
* URLStreamHandler to cache URL contents and URLConnection headers.
*/
Modified: myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/ResourceLoader.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/ResourceLoader.java?rev=768080&r1=768079&r2=768080&view=diff
==============================================================================
--- myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/ResourceLoader.java (original)
+++ myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/resource/ResourceLoader.java Thu Apr 23 22:19:57 2009
@@ -73,6 +73,15 @@
return url;
}
+
+ /**
+ * Returns whether a resource is cachable.
+ * @return
+ */
+ public boolean isCachable()
+ {
+ return _parent == null || _parent.isCachable();
+ }
/**
* Finds the resource with the given name. Resource loader implementations
Modified: myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/ResourceServlet.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/ResourceServlet.java?rev=768080&r1=768079&r2=768080&view=diff
==============================================================================
--- myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/ResourceServlet.java (original)
+++ myfaces/trinidad/branches/1.2.10.1-branch/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/ResourceServlet.java Thu Apr 23 22:19:57 2009
@@ -342,8 +342,10 @@
}
// Enable resource caching, but only if we aren't debugging
- if (!_debug)
+ if (!_debug && loader.isCachable())
+ {
loader = new CachingResourceLoader(loader);
+ }
}
catch (IllegalAccessException e)
{