[jboss-cvs] JBossAS SVN: r89263 - projects/spring-int/trunk/vfs/src/main/java/org/jboss/spring/vfs.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu May 21 19:46:29 EDT 2009
Author: marius.bogoevici
Date: 2009-05-21 19:46:29 -0400 (Thu, 21 May 2009)
New Revision: 89263
Modified:
projects/spring-int/trunk/vfs/src/main/java/org/jboss/spring/vfs/VFSResourceLoader.java
Log:
getResource() must always return a Resource, if it is not found in the classpath, existent() must be false.
Modified: projects/spring-int/trunk/vfs/src/main/java/org/jboss/spring/vfs/VFSResourceLoader.java
===================================================================
--- projects/spring-int/trunk/vfs/src/main/java/org/jboss/spring/vfs/VFSResourceLoader.java 2009-05-21 22:10:11 UTC (rev 89262)
+++ projects/spring-int/trunk/vfs/src/main/java/org/jboss/spring/vfs/VFSResourceLoader.java 2009-05-21 23:46:29 UTC (rev 89263)
@@ -23,8 +23,13 @@
import org.springframework.core.io.DefaultResourceLoader;
import org.springframework.core.io.Resource;
+import org.springframework.core.io.AbstractResource;
import org.springframework.util.Assert;
+import java.net.URL;
+import java.io.InputStream;
+import java.io.IOException;
+
/**
* VFS based ResourceLoader.
*
@@ -42,7 +47,11 @@
Assert.notNull(location, "Location must not be null");
if (location.startsWith(CLASSPATH_URL_PREFIX))
{
- return new VFSResource(getClassLoader().getResource(location.substring(CLASSPATH_URL_PREFIX.length())));
+ URL url = getClassLoader().getResource(location.substring(CLASSPATH_URL_PREFIX.length()));
+ if (url != null)
+ return new VFSResource(url);
+ else
+ return new InexistentResource();
}
else
{
@@ -54,4 +63,20 @@
{
return new VFSResource(getClassLoader().getResource(path));
}
+
+ private static class InexistentResource extends AbstractResource {
+
+ public String getDescription() {
+ return null;
+ }
+
+ public InputStream getInputStream() throws IOException {
+ throw new IOException("Resource does not exist");
+ }
+
+ @Override
+ public boolean exists() {
+ return false;
+ }
+ }
}
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list