Author: markt
Date: Fri Nov 8 09:30:39 2013
New Revision: 1539959
URL: http://svn.apache.org/r1539959
Log:
Reduce calls to exists()
Modified:
tomcat/trunk/java/org/apache/catalina/webresources/CachedResource.java
tomcat/trunk/java/org/apache/catalina/webresources/FileResource.java
Modified: tomcat/trunk/java/org/apache/catalina/webresources/CachedResource.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/webresources/CachedResource.java?rev=1539959&r1=1539958&r2=1539959&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/webresources/CachedResource.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/webresources/CachedResource.java Fri
Nov 8 09:30:39 2013
@@ -66,6 +66,13 @@ public class CachedResource implements W
getLastModified();
getContentLength();
nextCheck = ttl + now;
+ // exists() is a relatively expensive check for a file so
+ // use the fact that we know if it exists at this point
+ if (webResource instanceof EmptyResource) {
+ cachedExists = Boolean.FALSE;
+ } else {
+ cachedExists = Boolean.TRUE;
+ }
return true;
}
}
Modified: tomcat/trunk/java/org/apache/catalina/webresources/FileResource.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/webresources/FileResource.java?rev=1539959&r1=1539958&r2=1539959&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/webresources/FileResource.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/webresources/FileResource.java Fri
Nov 8 09:30:39 2013
@@ -126,14 +126,10 @@ public class FileResource extends Abstra
@Override
protected InputStream doGetInputStream() {
- if (resource.exists()) {
- try {
- return new FileInputStream(resource);
- } catch (FileNotFoundException fnfe) {
- // Race condition - not an error
- return null;
- }
- } else {
+ try {
+ return new FileInputStream(resource);
+ } catch (FileNotFoundException fnfe) {
+ // Race condition (file has been deleted) - not an error
return null;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]