[jboss-cvs] JBossAS SVN: r75169 - in projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context: jar and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sat Jun 28 16:13:05 EDT 2008


Author: alesj
Date: 2008-06-28 16:13:05 -0400 (Sat, 28 Jun 2008)
New Revision: 75169

Modified:
   projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractURLHandler.java
   projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/jar/AbstractJarHandler.java
   projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/jar/JarHandler.java
   projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipDirWrapper.java
   projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipWrapper.java
Log:
[JBVFS-43]; URLConnection::setUseCaches(false)

Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractURLHandler.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractURLHandler.java	2008-06-28 14:37:07 UTC (rev 75168)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractURLHandler.java	2008-06-28 20:13:05 UTC (rev 75169)
@@ -65,11 +65,38 @@
       initCacheLastModified();
    }
 
+   /**
+    * Open connection.
+    *
+    * @return  url's connection
+    * @throws IOException for any error
+    */
+   protected URLConnection openConnection() throws IOException
+   {
+      return openConnection(url);
+   }
+
+   /**
+    * Open connection.
+    * Set use cacheable to false,
+    * due to locking on Windows.
+    *
+    * @param url the url to open
+    * @return  url's connection
+    * @throws IOException for any error
+    */
+   protected static URLConnection openConnection(URL url) throws IOException
+   {
+      URLConnection conn = url.openConnection();
+      conn.setUseCaches(false);
+      return conn;
+   }
+
    protected void initCacheLastModified()
    {
       try
       {
-         this.cachedLastModified = url.openConnection().getLastModified();
+         this.cachedLastModified = openConnection().getLastModified();
       }
       catch (IOException e)
       {
@@ -95,14 +122,14 @@
    public long getLastModified() throws IOException
    {
       checkClosed();
-      URLConnection c = url.openConnection();
+      URLConnection c = openConnection();
       return c.getLastModified();
    }
 
    public long getSize() throws IOException
    {
       checkClosed();
-      URLConnection c = url.openConnection();
+      URLConnection c = openConnection();
       return c.getContentLength();
    }
 
@@ -115,7 +142,7 @@
     */
    public boolean exists() throws IOException
    {
-      URLConnection c = url.openConnection();
+      URLConnection c = openConnection();
       return c.getLastModified() != 0;
    }
 
@@ -128,7 +155,8 @@
    public InputStream openStream() throws IOException
    {
       checkClosed();
-      return url.openStream();
+      URLConnection conn = openConnection();
+      return conn.getInputStream();
    }
 
    public URI toURI() throws URISyntaxException

Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/jar/AbstractJarHandler.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/jar/AbstractJarHandler.java	2008-06-28 14:37:07 UTC (rev 75168)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/jar/AbstractJarHandler.java	2008-06-28 20:13:05 UTC (rev 75169)
@@ -161,7 +161,7 @@
    {
       try
       {
-         URLConnection connection = url.openConnection();
+         URLConnection connection = openConnection(url);
          JarURLConnection jarConnection;
          if (connection instanceof JarURLConnection)
          {
@@ -171,9 +171,8 @@
          {
             // try wrapping it in jar:
             URL jarUrl = new URL("jar:" + url + "!/");
-            jarConnection = (JarURLConnection)jarUrl.openConnection();
+            jarConnection = (JarURLConnection)openConnection(jarUrl);
          }
-         jarConnection.setUseCaches(false);
          return jarConnection.getJarFile();
       }
       catch (IOException original)
@@ -206,7 +205,7 @@
       }
       else
       {
-         URLConnection conn = jarURL.openConnection();
+         URLConnection conn = openConnection(jarURL);
          if (conn instanceof JarURLConnection)
          {
             JarURLConnection jconn = (JarURLConnection) conn;

Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/jar/JarHandler.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/jar/JarHandler.java	2008-06-28 14:37:07 UTC (rev 75168)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/jar/JarHandler.java	2008-06-28 20:13:05 UTC (rev 75169)
@@ -53,7 +53,7 @@
     */
    public JarHandler(VFSContext context, VirtualFileHandler parent, URL url, String name) throws IOException
    {
-      super(context, parent, url, ((JarURLConnection) url.openConnection()).getJarFile(), null, name);
+      super(context, parent, url, ((JarURLConnection)openConnection(url)).getJarFile(), null, name);
       setVfsUrl(new URL("vfs" + url));
 
       try

Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipDirWrapper.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipDirWrapper.java	2008-06-28 14:37:07 UTC (rev 75168)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipDirWrapper.java	2008-06-28 20:13:05 UTC (rev 75169)
@@ -88,6 +88,7 @@
          }
          catch (IOException e)
          {
+            log.warn("Error retrieving entries for entry " + getName() + ", cause: " + e);
             return false;
          }
       }

Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipWrapper.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipWrapper.java	2008-06-28 14:37:07 UTC (rev 75168)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipWrapper.java	2008-06-28 20:13:05 UTC (rev 75169)
@@ -21,12 +21,14 @@
 */
 package org.jboss.virtual.plugins.context.zip;
 
+import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.FileNotFoundException;
+import java.util.Enumeration;
 import java.util.zip.ZipEntry;
-import java.util.Enumeration;
 
+import org.jboss.logging.Logger;
+
 /**
  * ZipWrapper represents abstracted access to zip archive
  *
@@ -35,6 +37,9 @@
  */
 abstract class ZipWrapper
 {
+   /** the log */
+   protected static final Logger log = Logger.getLogger(ZipWrapper.class);
+
    /** last known modifyTime of the zip source */
    protected long lastModified;
 




More information about the jboss-cvs-commits mailing list