[jboss-cvs] JBossAS SVN: r82784 - projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Jan 12 12:19:09 EST 2009
Author: alesj
Date: 2009-01-12 12:19:09 -0500 (Mon, 12 Jan 2009)
New Revision: 82784
Modified:
projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileHandler.java
Log:
Initial [JBVFS-85] impl - adding missing close.
Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileHandler.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileHandler.java 2009-01-12 17:17:54 UTC (rev 82783)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileHandler.java 2009-01-12 17:19:09 UTC (rev 82784)
@@ -270,6 +270,7 @@
// if the child has been modified on disk then create a new handler
if (handler != null && handler.hasBeenModified())
{
+ handler.close(); // close old cached one
handler = null;
}
if (handler == null)
@@ -336,12 +337,25 @@
public boolean removeChild(String name) throws IOException
{
- return childCache.remove(name) != null;
+ VirtualFileHandler fileHandler = childCache.remove(name);
+ if (fileHandler != null)
+ {
+ fileHandler.close();
+ return true;
+ }
+ else
+ {
+ return false;
+ }
}
protected void internalReplaceChild(VirtualFileHandler original, VirtualFileHandler replacement)
{
- childCache.put(original.getName(), replacement);
+ VirtualFileHandler previousHandler = childCache.put(original.getName(), replacement);
+ if (previousHandler != null)
+ {
+ previousHandler.close();
+ }
}
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
More information about the jboss-cvs-commits
mailing list