You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by im...@apache.org on 2005/06/19 09:25:20 UTC
svn commit: r191323 [2/2] - in /jakarta/commons/proper/vfs/trunk: ./
src/java/org/apache/commons/vfs/ src/java/org/apache/commons/vfs/impl/
src/java/org/apache/commons/vfs/provider/
src/java/org/apache/commons/vfs/provider/ftp/
src/java/org/apache/commons/vfs/provider/http/
src/java/org/apache/commons/vfs/provider/jar/
src/java/org/apache/commons/vfs/provider/local/
src/java/org/apache/commons/vfs/provider/sftp/
src/java/org/apache/commons/vfs/provider/smb/
src/java/org/apache/commons/vfs/provider/tar/
src/java/org/apache/commons/vfs/provider/temp/
src/java/org/apache/commons/vfs/provider/url/
src/java/org/apache/commons/vfs/provider/webdav/
src/java/org/apache/commons/vfs/provider/zip/ src/test-data/
src/test-data/basedir/ src/test/org/apache/commons/vfs/
src/test/org/apache/commons/vfs/provider/smb/test/
src/test/org/apache/commons/vfs/provider/test/
src/test/org/apache/commons/vfs/test/ src/utils/ xdocs/
Modified: jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/webdav/WebdavFileObject.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/webdav/WebdavFileObject.java?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/webdav/WebdavFileObject.java (original)
+++ jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/webdav/WebdavFileObject.java Sun Jun 19 00:25:16 2005
@@ -24,22 +24,23 @@
import org.apache.commons.vfs.NameScope;
import org.apache.commons.vfs.provider.AbstractFileObject;
import org.apache.commons.vfs.provider.GenericFileName;
-import org.apache.commons.vfs.provider.UriParser;
+import org.apache.commons.vfs.provider.URLFileName;
import org.apache.commons.vfs.util.MonitorOutputStream;
import org.apache.webdav.lib.BaseProperty;
import org.apache.webdav.lib.WebdavResource;
import org.apache.webdav.lib.methods.DepthSupport;
import org.apache.webdav.lib.methods.OptionsMethod;
import org.apache.webdav.lib.methods.XMLResponseMethodBase;
-import org.apache.webdav.lib.methods.DeleteMethod;
import org.apache.webdav.lib.properties.ResourceTypeProperty;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.util.ArrayList;
import java.util.Enumeration;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
@@ -93,6 +94,7 @@
/**
* set the davResource
+ *
* @param resource
* @param bCheckExists might be removed soon
* @throws Exception
@@ -101,13 +103,15 @@
{
redirectionResolved = false;
+ final URLFileName name = (URLFileName) getName();
+
// System.err.println("set on " + System.identityHashCode(this) + " " + getName() + ":" + bCheckExists);
if (resource == null)
{
- final GenericFileName name = (GenericFileName) getName();
// HttpURL url = new HttpURL(name.getHostName(), name.getPort(), name.getPath());
- HttpURL url = new HttpURL(name.getUserName(), name.getPassword(), name.getHostName(), name.getPort(), name.getPathDecoded());
- url.setEscapedPath(name.getPath());
+ String pathEncoded = name.getPathQueryEncoded();
+ HttpURL url = new HttpURL(name.getUserName(), name.getPassword(), name.getHostName(), name.getPort());
+ url.setEscapedPath(pathEncoded);
resource = new WebdavResource(fileSystem.getClient())
{
};
@@ -119,7 +123,8 @@
// if (bCheckExists)
{
/* now fill the dav properties */
- final OptionsMethod optionsMethod = new OptionsMethod(getName().getPath());
+ String pathEncoded = name.getPathQueryEncoded();
+ final OptionsMethod optionsMethod = new OptionsMethod(pathEncoded);
optionsMethod.setFollowRedirects(true);
final int status = fileSystem.getClient().executeMethod(optionsMethod);
if (status < 200 || status > 299)
@@ -142,7 +147,7 @@
}
// handle the (maybe) redirected url
redirectionResolved = true;
- resource.getHttpURL().setEscapedPath(optionsMethod.getPath());
+ resource.getHttpURL().setEscapedPath(optionsMethod.getURI().getPath());
setAllowedMethods(optionsMethod.getAllowedMethods());
boolean exists = false;
@@ -182,6 +187,7 @@
}
}
+
private void setAllowedMethods(Enumeration allowedMethods)
{
this.allowedMethods = new TreeSet();
@@ -289,27 +295,32 @@
throw new FileSystemException("vfs.provider.webdav/list-children.error", resource.getStatusMessage());
}
- WebdavFileObject[] vfs = new WebdavFileObject[children.length];
+ List vfs = new ArrayList(children.length);
+ // WebdavFileObject[] vfs = new WebdavFileObject[children.length];
for (int i = 0; i < children.length; i++)
{
WebdavResource dav = children[i];
- /*
- WebdavFileObject fo = (WebdavFileObject) getFileSystem().resolveFile(
- getName().resolveName(
- UriParser.encode(dav.getName()), NameScope.CHILD));
- */
+ String davName = dav.getHttpURL().getEscapedName();
+ if ("".equals(davName))
+ {
+ // current file
+ continue;
+ }
+
WebdavFileObject fo = (WebdavFileObject) getFileSystem().resolveFile(
- getFileSystem().getFileSystemManager().resolveName(
- getName(),
- UriParser.encode(dav.getName()),
- NameScope.CHILD));
+ getFileSystem().getFileSystemManager().resolveName(
+ getName(),
+ davName,
+ NameScope.CHILD));
fo.setDavResource(dav, false);
- vfs[i] = fo;
+ // vfs[i] = fo;
+ vfs.add(fo);
}
- return vfs;
+ return (WebdavFileObject[]) vfs.toArray(new WebdavFileObject[vfs.size()]);
+ // return vfs;
}
/**
@@ -318,7 +329,8 @@
protected void doCreateFolder() throws Exception
{
// Adjust resource path
- resource.getHttpURL().setEscapedPath(getName().getPath() + '/');
+ //// resource.getHttpURL().setEscapedPath(getName().getPath() + '/');
+ resource.getHttpURL().setPath(getName().getPathDecoded() + '/');
final boolean ok = resource.mkcolMethod();
if (!ok)
{
@@ -411,7 +423,8 @@
final ByteArrayOutputStream outstr = (ByteArrayOutputStream) out;
// Adjust the resource path (this file object may have been a folder)
- resource.getHttpURL().setEscapedPath(getName().getPath());
+ //// resource.getHttpURL().setEscapedPath(getName().getPath());
+ resource.getHttpURL().setPath(getName().getPathDecoded());
final boolean ok = resource.putMethod(outstr.toByteArray());
if (!ok)
{
Modified: jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/webdav/WebdavFileProvider.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/webdav/WebdavFileProvider.java?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/webdav/WebdavFileProvider.java (original)
+++ jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/webdav/WebdavFileProvider.java Sun Jun 19 00:25:16 2005
@@ -23,6 +23,7 @@
import org.apache.commons.vfs.FileSystemOptions;
import org.apache.commons.vfs.provider.AbstractOriginatingFileProvider;
import org.apache.commons.vfs.provider.GenericFileName;
+import org.apache.commons.vfs.provider.http.HttpFileNameParser;
import java.util.Arrays;
import java.util.Collection;
@@ -55,7 +56,7 @@
{
super();
- setFileNameParser(WebdavFileNameParser.getInstance());
+ setFileNameParser(HttpFileNameParser.getInstance());
}
/**
Modified: jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/zip/ZipFileProvider.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/zip/ZipFileProvider.java?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/zip/ZipFileProvider.java (original)
+++ jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/zip/ZipFileProvider.java Sun Jun 19 00:25:16 2005
@@ -23,7 +23,6 @@
import org.apache.commons.vfs.FileSystemOptions;
import org.apache.commons.vfs.provider.AbstractLayeredFileProvider;
import org.apache.commons.vfs.provider.FileProvider;
-import org.apache.commons.vfs.provider.UriParser;
import org.apache.commons.vfs.provider.LayeredFileName;
import java.util.Arrays;
Modified: jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/zip/ZipFileSystem.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/zip/ZipFileSystem.java?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/zip/ZipFileSystem.java (original)
+++ jakarta/commons/proper/vfs/trunk/src/java/org/apache/commons/vfs/provider/zip/ZipFileSystem.java Sun Jun 19 00:25:16 2005
@@ -25,15 +25,14 @@
import org.apache.commons.vfs.Selectors;
import org.apache.commons.vfs.VfsLog;
import org.apache.commons.vfs.provider.AbstractFileSystem;
-import org.apache.commons.vfs.provider.AbstractFileObject;
import org.apache.commons.vfs.provider.UriParser;
import java.io.File;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.Enumeration;
import java.util.List;
-import java.util.ArrayList;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
Added: jakarta/commons/proper/vfs/trunk/src/test-data/basedir/file space.txt
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/basedir/file%20space.txt?rev=191323&view=auto
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/test-data/basedir/file space.txt (added)
+++ jakarta/commons/proper/vfs/trunk/src/test-data/basedir/file space.txt Sun Jun 19 00:25:16 2005
@@ -0,0 +1 @@
+This is a test file.
\ No newline at end of file
Propchange: jakarta/commons/proper/vfs/trunk/src/test-data/basedir/file space.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: jakarta/commons/proper/vfs/trunk/src/test-data/basedir/file space.txt
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: jakarta/commons/proper/vfs/trunk/src/test-data/basedir/file space.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/nested.jar
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/nested.jar?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/nested.tar
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/nested.tar?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/nested.tbz2
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/nested.tbz2?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/nested.tgz
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/nested.tgz?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/nested.zip
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/nested.zip?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/test.jar
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/test.jar?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/test.tar
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/test.tar?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/test.tbz2
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/test.tbz2?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/test.tgz
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/test.tgz?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test-data/test.zip
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test-data/test.zip?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
Binary files - no diff available.
Modified: jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/RunTest.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/RunTest.java?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/RunTest.java (original)
+++ jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/RunTest.java Sun Jun 19 00:25:16 2005
@@ -3,12 +3,9 @@
import junit.framework.AssertionFailedError;
import junit.framework.Test;
import junit.framework.TestResult;
-import org.apache.commons.vfs.provider.ftp.test.FtpProviderTestCase;
import org.apache.commons.vfs.provider.http.test.HttpProviderTestCase;
import org.apache.commons.vfs.provider.jar.test.JarProviderTestCase;
import org.apache.commons.vfs.provider.jar.test.NestedJarTestCase;
-import org.apache.commons.vfs.provider.local.test.LocalProviderTestCase;
-import org.apache.commons.vfs.provider.res.test.ResourceProviderTestCase;
import org.apache.commons.vfs.provider.sftp.test.SftpProviderTestCase;
import org.apache.commons.vfs.provider.smb.test.SmbProviderTestCase;
import org.apache.commons.vfs.provider.tar.test.NestedTarTestCase;
@@ -17,12 +14,15 @@
import org.apache.commons.vfs.provider.tar.test.TarProviderTestCase;
import org.apache.commons.vfs.provider.tar.test.Tbz2ProviderTestCase;
import org.apache.commons.vfs.provider.tar.test.TgzProviderTestCase;
-import org.apache.commons.vfs.provider.temp.test.TemporaryProviderTestCase;
-import org.apache.commons.vfs.provider.test.VirtualProviderTestCase;
-import org.apache.commons.vfs.provider.url.test.UrlProviderTestCase;
import org.apache.commons.vfs.provider.webdav.test.WebdavProviderTestCase;
import org.apache.commons.vfs.provider.zip.test.NestedZipTestCase;
import org.apache.commons.vfs.provider.zip.test.ZipProviderTestCase;
+import org.apache.commons.vfs.provider.ftp.test.FtpProviderTestCase;
+import org.apache.commons.vfs.provider.local.test.LocalProviderTestCase;
+import org.apache.commons.vfs.provider.res.test.ResourceProviderTestCase;
+import org.apache.commons.vfs.provider.temp.test.TemporaryProviderTestCase;
+import org.apache.commons.vfs.provider.url.test.UrlProviderTestCase;
+import org.apache.commons.vfs.provider.test.VirtualProviderTestCase;
import java.util.Properties;
@@ -98,6 +98,8 @@
Test test = tests[i];
test.run(result);
+
+// break;
}
}
}
Modified: jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/provider/smb/test/FileNameTestCase.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/provider/smb/test/FileNameTestCase.java?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/provider/smb/test/FileNameTestCase.java (original)
+++ jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/provider/smb/test/FileNameTestCase.java Sun Jun 19 00:25:16 2005
@@ -35,7 +35,7 @@
public void testParseUri() throws Exception
{
// Simple name
- SmbFileName name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, "smb://hostname/share/file");
+ SmbFileName name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, null, "smb://hostname/share/file");
assertEquals("smb", name.getScheme());
assertNull(name.getUserName());
assertNull(name.getPassword());
@@ -48,7 +48,7 @@
assertEquals("smb://hostname/share/file", name.getURI());
// Name with port
- name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, "smb://hostname:9090/share/file");
+ name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, null, "smb://hostname:9090/share/file");
assertEquals("smb", name.getScheme());
assertNull(name.getUserName());
assertNull(name.getPassword());
@@ -60,7 +60,7 @@
assertEquals("smb://hostname:9090/share/file", name.getURI());
// Name with no path
- name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, "smb://hostname/share");
+ name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, null, "smb://hostname/share");
assertEquals("smb", name.getScheme());
assertNull(name.getUserName());
assertNull(name.getPassword());
@@ -72,7 +72,7 @@
assertEquals("smb://hostname/share/", name.getURI());
// Name with username
- name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, "smb://user@hostname/share/file");
+ name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, null, "smb://user@hostname/share/file");
assertEquals("smb", name.getScheme());
assertEquals("user", name.getUserName());
assertNull(name.getPassword());
@@ -84,7 +84,7 @@
assertEquals("smb://user@hostname/share/file", name.getURI());
// Name with extension
- name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, "smb://user@hostname/share/file.txt");
+ name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, null, "smb://user@hostname/share/file.txt");
assertEquals("smb", name.getScheme());
assertEquals("user", name.getUserName());
assertNull(name.getPassword());
@@ -98,7 +98,7 @@
assertEquals("smb://user@hostname/share/file.txt", name.getURI());
// Name look likes extension, but isnt
- name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, "smb://user@hostname/share/.bashrc");
+ name = (SmbFileName) SmbFileNameParser.getInstance().parseUri(null, null, "smb://user@hostname/share/.bashrc");
assertEquals("smb", name.getScheme());
assertEquals("user", name.getUserName());
assertNull(name.getPassword());
@@ -149,7 +149,7 @@
{
try
{
- SmbFileNameParser.getInstance().parseUri(null, uri);
+ SmbFileNameParser.getInstance().parseUri(null, null, uri);
fail();
}
catch (final FileSystemException e)
Modified: jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/provider/test/GenericFileNameTestCase.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/provider/test/GenericFileNameTestCase.java?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/provider/test/GenericFileNameTestCase.java (original)
+++ jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/provider/test/GenericFileNameTestCase.java Sun Jun 19 00:25:16 2005
@@ -37,7 +37,7 @@
{
URLFileNameParser urlParser = new URLFileNameParser(21);
// Simple name
- GenericFileName name = (GenericFileName) urlParser.parseUri(null, "ftp://hostname/file");
+ GenericFileName name = (GenericFileName) urlParser.parseUri(null, null, "ftp://hostname/file");
assertEquals("ftp", name.getScheme());
assertNull(name.getUserName());
assertNull(name.getPassword());
@@ -49,7 +49,7 @@
assertEquals("ftp://hostname/file", name.getURI());
// Name with port
- name = (GenericFileName) urlParser.parseUri(null, "ftp://hostname:9090/file");
+ name = (GenericFileName) urlParser.parseUri(null, null, "ftp://hostname:9090/file");
assertEquals("ftp", name.getScheme());
assertNull(name.getUserName());
assertNull(name.getPassword());
@@ -60,7 +60,7 @@
assertEquals("ftp://hostname:9090/file", name.getURI());
// Name with no path
- name = (GenericFileName) urlParser.parseUri(null, "ftp://hostname");
+ name = (GenericFileName) urlParser.parseUri(null, null, "ftp://hostname");
assertEquals("ftp", name.getScheme());
assertNull(name.getUserName());
assertNull(name.getPassword());
@@ -71,7 +71,7 @@
assertEquals("ftp://hostname/", name.getURI());
// Name with username
- name = (GenericFileName) urlParser.parseUri(null, "ftp://user@hostname/file");
+ name = (GenericFileName) urlParser.parseUri(null, null, "ftp://user@hostname/file");
assertEquals("ftp", name.getScheme());
assertEquals("user", name.getUserName());
assertNull(name.getPassword());
@@ -82,7 +82,7 @@
assertEquals("ftp://user@hostname/file", name.getURI());
// Name with username and password
- name = (GenericFileName) urlParser.parseUri(null, "ftp://user:password@hostname/file");
+ name = (GenericFileName) urlParser.parseUri(null, null, "ftp://user:password@hostname/file");
assertEquals("ftp", name.getScheme());
assertEquals("user", name.getUserName());
assertEquals("password", name.getPassword());
@@ -93,7 +93,7 @@
assertEquals("ftp://user:password@hostname/file", name.getURI());
// Encoded username and password
- name = (GenericFileName) urlParser.parseUri(null, "ftp://%75ser%3A:%40@hostname");
+ name = (GenericFileName) urlParser.parseUri(null, null, "ftp://%75ser%3A:%40@hostname");
assertEquals("ftp", name.getScheme());
assertEquals("user:", name.getUserName());
assertEquals("@", name.getPassword());
@@ -136,7 +136,7 @@
{
try
{
- GenericFileNameParser.getInstance().parseUri(null, uri);
+ GenericFileNameParser.getInstance().parseUri(null, null, uri);
fail();
}
catch (final FileSystemException e)
Modified: jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/test/AbstractProviderTestCase.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/test/AbstractProviderTestCase.java?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/test/AbstractProviderTestCase.java (original)
+++ jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/test/AbstractProviderTestCase.java Sun Jun 19 00:25:16 2005
@@ -20,6 +20,9 @@
import org.apache.commons.vfs.FileContent;
import org.apache.commons.vfs.FileObject;
import org.apache.commons.vfs.FileType;
+import org.apache.commons.vfs.FileSystemManager;
+import org.apache.commons.vfs.FileName;
+import org.apache.commons.vfs.FileSystemException;
import org.apache.commons.vfs.impl.DefaultFileSystemManager;
import java.io.ByteArrayOutputStream;
@@ -251,12 +254,26 @@
/**
* Builds the expected structure of the read tests folder.
*/
- protected FileInfo buildExpectedStructure()
+ protected FileInfo buildExpectedStructure() throws FileSystemException
{
// Build the expected structure
final FileInfo base = new FileInfo(getReadFolder().getName().getBaseName(), FileType.FOLDER);
base.addFile("file1.txt", FILE1_CONTENT);
+ // file%.txt - test out encoding
base.addFile("file%25.txt", FILE1_CONTENT);
+
+ // file?test.txt - test out encoding (test.txt is not the queryString)
+ // as we do not know if the current file provider we need to
+ // ask it to normalize the name
+ // todo: move this into the FileInfo class to do it generally?
+ /* webdav-bug?: didnt manage to get the "?" correctly through webdavlib
+ FileSystemManager fsm = getReadFolder().getFileSystem().getFileSystemManager();
+ FileName fn = fsm.resolveName(getReadFolder().getName(), "file%3ftest.txt");
+ String baseName = fn.getBaseName();
+ base.addFile(baseName, FILE1_CONTENT);
+ */
+ base.addFile("file space.txt", FILE1_CONTENT);
+
base.addFile("empty.txt", "");
base.addFolder("emptydir");
Modified: jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/test/NamingTests.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/test/NamingTests.java?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/test/NamingTests.java (original)
+++ jakarta/commons/proper/vfs/trunk/src/test/org/apache/commons/vfs/test/NamingTests.java Sun Jun 19 00:25:16 2005
@@ -67,27 +67,33 @@
getManager().setBaseFile(getReadFolder());
final String path = getReadFolder().getName().getPath();
- // Encode "some file"
+ // §1 Encode "some file"
FileObject file = getManager().resolveFile("%73%6f%6d%65%20%66%69%6c%65");
assertEquals(path + "/some file", file.getName().getPathDecoded());
- // Encode "."
+ // §2 Encode "."
file = getManager().resolveFile("%2e");
- assertEquals(path + "/.", file.getName().getPathDecoded());
+ // 18-6-2005 imario@apache.org: no need to keep the "current directory"
+ // assertEquals(path + "/.", file.getName().getPathDecoded());
+ assertEquals(path, file.getName().getPathDecoded());
- // Encode '%'
+ // §3 Encode '%'
file = getManager().resolveFile("a%25");
assertEquals(path + "/a%", file.getName().getPathDecoded());
- // Encode /
+ // §4 Encode /
file = getManager().resolveFile("dir%2fchild");
assertEquals(path + "/dir/child", file.getName().getPathDecoded());
- // Encode \
+ // §5 Encode \
file = getManager().resolveFile("dir%5cchild");
- assertEquals(path + "/dir\\child", file.getName().getPathDecoded());
+ // 18-6-2005 imario@apache.org: all file separators normalized to "/"
+ // decided to do this to get the same behaviour as in §4 on windows
+ // platforms
+ // assertEquals(path + "/dir\\child", file.getName().getPathDecoded());
+ assertEquals(path + "/dir/child", file.getName().getPathDecoded());
- // Use "%" literal
+ // §6 Use "%" literal
try
{
getManager().resolveFile("%");
@@ -97,7 +103,7 @@
{
}
- // Not enough digits in encoded char
+ // §7 Not enough digits in encoded char
try
{
getManager().resolveFile("%5");
@@ -107,7 +113,7 @@
{
}
- // Invalid digit in encoded char
+ // §8 Invalid digit in encoded char
try
{
getManager().resolveFile("%q");
Added: jakarta/commons/proper/vfs/trunk/src/utils/create_archives.sh
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/src/utils/create_archives.sh?rev=191323&view=auto
==============================================================================
--- jakarta/commons/proper/vfs/trunk/src/utils/create_archives.sh (added)
+++ jakarta/commons/proper/vfs/trunk/src/utils/create_archives.sh Sun Jun 19 00:25:16 2005
@@ -0,0 +1,80 @@
+#!/bin/sh
+
+PRG="$0"
+
+while [ -h "$PRG" ]; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '.*/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`/"$link"
+ fi
+done
+
+# Get standard environment variables
+PRGDIR=`dirname "$PRG"`
+
+cd $PRGDIR/../..
+
+if [ ! -d target/test-data/read-tests ]
+then
+ echo "Please run maven to have the environment setup correctly"
+ exit 1
+fi
+
+if [ ! -x "`type -p jar`" ]
+then
+ echo "cant execute jar?"
+ exit 1
+fi
+if [ ! -x "`type -p tar`" ]
+then
+ echo "cant execute tar?"
+ exit 1
+fi
+if [ ! -x "`type -p zip`" ]
+then
+ echo "cant execute zip?"
+ exit 1
+fi
+
+cd target/test-data
+
+rm -f test.jar test.tar test.tbz2 test.tgz test.zip
+rm -f nested.jar nested.tar nested.tbz2 nested.tgz nested.zip
+
+echo "Creating test.jar ..."
+jar -cvfm test.jar test.mf read-tests code
+
+echo "Creating test.tar ..."
+tar cvf test.tar read-tests code
+
+echo "Creating test.tbz2 ..."
+tar cjvf test.tbz2 read-tests code
+
+echo "Creating test.tgz ..."
+tar czvf test.tgz read-tests code
+
+echo "Creating test.zip ..."
+zip -r test.zip read-tests code
+
+echo "Creating nested.jar ..."
+jar cvf nested.jar test.jar
+
+echo "Creating nested.tar ..."
+tar cvf nested.tar test.tar
+
+echo "Creating nested.tbz2 ..."
+tar cjvf nested.tbz2 test.tbz2
+
+echo "Creating nested.tgz ..."
+tar czvf nested.tgz test.tgz
+
+echo "Creating nested.zip ..."
+zip nested.zip test.zip
+
+for i in test.jar test.tar test.tbz2 test.tgz test.zip nested.jar nested.tar nested.tbz2 nested.tgz nested.zip
+do
+ cp $i ../../src/test-data/$i
+done
Propchange: jakarta/commons/proper/vfs/trunk/src/utils/create_archives.sh
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: jakarta/commons/proper/vfs/trunk/src/utils/create_archives.sh
------------------------------------------------------------------------------
svn:executable = *
Propchange: jakarta/commons/proper/vfs/trunk/src/utils/create_archives.sh
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Modified: jakarta/commons/proper/vfs/trunk/xdocs/todo.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/vfs/trunk/xdocs/todo.xml?rev=191323&r1=191322&r2=191323&view=diff
==============================================================================
--- jakarta/commons/proper/vfs/trunk/xdocs/todo.xml (original)
+++ jakarta/commons/proper/vfs/trunk/xdocs/todo.xml Sun Jun 19 00:25:16 2005
@@ -127,5 +127,18 @@
</ul>
</subsection>
</section>
+
+ <section name="Library upgrades">
+ <p>
+ The following describes things I discovered during testing newer dependencies.
+ </p>
+
+ <subsection name="webdavlib 2.1">
+ <ul>
+ <li>resource.listWebdavResources() do no longer list directories?<br />Figure out what to do</li>
+ </ul>
+ </subsection>
+
+ </section>
</body>
</document>
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org