[jboss-cvs] JBossAS SVN: r75060 - in projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context: file and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Jun 25 10:00:25 EDT 2008
Author: mstruk
Date: 2008-06-25 10:00:25 -0400 (Wed, 25 Jun 2008)
New Revision: 75060
Modified:
projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractVFSContext.java
projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileSystemContext.java
projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipEntryContext.java
Log:
Fixed context options propagation to mounted contexts
Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractVFSContext.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractVFSContext.java 2008-06-25 13:13:22 UTC (rev 75059)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractVFSContext.java 2008-06-25 14:00:25 UTC (rev 75060)
@@ -25,6 +25,7 @@
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
+import java.net.MalformedURLException;
import java.util.List;
import java.util.Map;
@@ -121,6 +122,32 @@
return rootOptions;
}
+ /**
+ * Helper method to set options on an URL
+ *
+ * @param url url to set options on
+ * @return url with query parameters
+ * @throws java.net.MalformedURLException if url manipulation fails
+ */
+ protected URL setOptionsToURL(URL url) throws MalformedURLException
+ {
+ if (rootOptions.size() == 0)
+ return url;
+
+ StringBuilder sb = new StringBuilder(url.toString());
+ sb.append("?");
+ int i = 0;
+ for (Map.Entry<String, String> ent : rootOptions.entrySet())
+ {
+ if (i > 0)
+ sb.append("&");
+ sb.append(ent.getKey()).append("=").append(ent.getValue());
+ i++;
+ }
+
+ return new URL(sb.toString());
+ }
+
public List<VirtualFileHandler> getChildren(VirtualFileHandler parent, boolean ignoreErrors) throws IOException
{
if (parent == null)
Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileSystemContext.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileSystemContext.java 2008-06-25 13:13:22 UTC (rev 75059)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileSystemContext.java 2008-06-25 14:00:25 UTC (rev 75060)
@@ -275,6 +275,7 @@
if (parent != null)
delegatorUrl = getChildURL(parent, name);
+ delegatorUrl = setOptionsToURL(delegatorUrl);
ZipEntryContext ctx = new ZipEntryContext(delegatorUrl, delegator, fileUrl);
VirtualFileHandler handler = ctx.getRoot();
@@ -282,7 +283,7 @@
return delegator;
}
-
+
/**
* Create a new virtual file handler
*
Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipEntryContext.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipEntryContext.java 2008-06-25 13:13:22 UTC (rev 75059)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/zip/ZipEntryContext.java 2008-06-25 14:00:25 UTC (rev 75060)
@@ -475,6 +475,7 @@
if (parent != null)
delegatorUrl = getChildURL(parent, name);
+ delegatorUrl = setOptionsToURL(delegatorUrl);
ZipEntryContext ctx = new ZipEntryContext(delegatorUrl, delegator, fileUrl, true);
VirtualFileHandler handler = ctx.getRoot();
delegator.setDelegate(handler);
@@ -502,6 +503,7 @@
if (parent != null)
delegatorUrl = getChildURL(parent, name);
+ delegatorUrl = setOptionsToURL(delegatorUrl);
ZipEntryContext ctx = new ZipEntryContext(delegatorUrl, delegator, wrapper, false);
VirtualFileHandler handler = ctx.getRoot();
delegator.setDelegate(handler);
More information about the jboss-cvs-commits
mailing list