imario 2004/10/01 12:12:48
Modified: vfs/xdocs api.xml filesystems.xml index.xml
Log:
documented SoftRefFilesCache
bzip2, gzip filesystem
Revision Changes Path
1.10 +26 -0 jakarta-commons-sandbox/vfs/xdocs/api.xml
Index: api.xml
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/vfs/xdocs/api.xml,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- api.xml 23 Jun 2004 07:59:14 -0000 1.9
+++ api.xml 1 Oct 2004 19:12:48 -0000 1.10
@@ -60,6 +60,32 @@
Javadocs for more detail.
</p>
+ <subsection name="Cache">
+ <p>
+ By default every resolved file will be cached in an map and -
unhappily - it will never be released.
+ This is what
+ <a
href="apidocs/org/apache/commons/vfs/cache/SoftRefFilesCache.html">SoftRefFilesCache</a>
+ tries to address.
+ </p>
+ <p>
+ Currently you could not use VFS.getManager() to use this sort
of cache, instead you have to create
+ your own FileSytemManager instance.
+ </p>
+ <source><![CDATA[
+private static FileSystemManager manager;
+
+manager = new StandardFileSystemManager();
+manager.setFilesCache(new SoftRefFilesCache());
+manager.init();
+ ]]></source>
+
+ <p>
+ This cache will return the same instance for a file as long as
it is "strongly reachable" e.g. you
+ hold a reference to this object. If the FileObject is no longer
reachable, and the jvm needs some memory,
+ it will be released.
+ </p>
+ </subsection>
+
<subsection name="Examples">
<p>
For an example of using the API, take a look at the classes
1.8 +223 -45 jakarta-commons-sandbox/vfs/xdocs/filesystems.xml
Index: filesystems.xml
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/vfs/xdocs/filesystems.xml,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- filesystems.xml 20 Feb 2003 07:46:23 -0000 1.7
+++ filesystems.xml 1 Oct 2004 19:12:48 -0000 1.8
@@ -3,6 +3,7 @@
<properties>
<title>Supported File Systems</title>
<author email="[EMAIL PROTECTED]">Adam Murdoch</author>
+ <author email="[EMAIL PROTECTED]">Mario Ivankovits</author>
</properties>
<body>
@@ -33,6 +34,9 @@
<li>
<a href="#Zip and Jar">Zip and Jar</a>
</li>
+ <li>
+ <a href="#gzip and bzip2">gzip and bzip2</a>
+ </li>
</ul>
</section>
@@ -40,24 +44,47 @@
<p>Provides access to the files on the local physical file system.</p>
- <p><b>URI Format</b></p>
+ <p>
+ <b>URI Format</b>
+ </p>
- <p><code>[file://]<i>absolute-path</i></code></p>
+ <p>
+ <code>[file://]
+ <i>absolute-path</i>
+ </code>
+ </p>
<p>
- Where <code><i>absolute-path</i></code> is a valid absolute
+ Where
+ <code>
+ <i>absolute-path</i>
+ </code> is a valid absolute
file name for the local platform. UNC names are supported
under Windows.
</p>
- <p><b>Examples</b></p>
+ <p>
+ <b>Examples</b>
+ </p>
<ul>
- <li><code>file:///home/someuser/somedir</code></li>
- <li><code>file://C:/Documents and Settings</code></li>
- <li><code>file:////somehost/someshare/afile.txt</code></li>
- <li><code>/home/someuser/somedir</code></li>
- <li><code>c:\program files\some dir</code></li>
- <li><code>c:/program files/some dir</code></li>
+ <li>
+ <code>file:///home/someuser/somedir</code>
+ </li>
+ <li>
+ <code>file://C:/Documents and Settings</code>
+ </li>
+ <li>
+ <code>file:////somehost/someshare/afile.txt</code>
+ </li>
+ <li>
+ <code>/home/someuser/somedir</code>
+ </li>
+ <li>
+ <code>c:\program files\some dir</code>
+ </li>
+ <li>
+ <code>c:/program files/some dir</code>
+ </li>
</ul>
</section>
@@ -65,23 +92,86 @@
<p>Provides read-only access to the contents of Zip and Jar files.</p>
- <p><b>URI Format</b></p>
+ <p>
+ <b>URI Format</b>
+ </p>
- <p><code>zip://<i>zip-file-uri</i>[!<i>absolute-path</i>]</code></p>
- <p><code>jar://<i>zip-file-uri</i>[!<i>absolute-path</i>]</code></p>
+ <p>
+ <code>zip://
+ <i>zip-file-uri</i>[!
+ <i>absolute-path</i>]
+ </code>
+ </p>
+ <p>
+ <code>jar://
+ <i>zip-file-uri</i>[!
+ <i>absolute-path</i>]
+ </code>
+ </p>
<p>
- Where <code>zip-file-uri</code> refers to a file of any
+ Where
+ <code>zip-file-uri</code> refers to a file of any
supported type, including other zip files. Note that any
- ! characters in <code><i>zip-file-uri</i></code> must be escaped
- using <code>%21</code>.
+ ! characters in
+ <code>
+ <i>zip-file-uri</i>
+ </code> must be escaped
+ using
+ <code>%21</code>.
</p>
- <p><b>Examples</b></p>
+ <p>
+ <b>Examples</b>
+ </p>
+ <ul>
+ <li>
+ <code>jar:../lib/classes.jar!/META-INF/manifest.mf</code>
+ </li>
+ <li>
+ <code>zip:http://somehost/downloads/somefile.zip</code>
+ </li>
+ <li>
+ <code>jar:zip:outer.zip%21/nested.jar!/somedir</code>
+ </li>
+ </ul>
+
+ </section>
+
+ <section name="gzip and bzip2">
+
+ <p>Provides read-only access to the contents of gzip and bzip2
files.</p>
+
+ <p>
+ <b>URI Format</b>
+ </p>
+
+ <p>
+ <code>gz://
+ <i>compressed-file-uri</i>
+ </code>
+ </p>
+ <p>
+ <code>bz2://
+ <i>compressed-file-uri</i>
+ </code>
+ </p>
+
+ <p>
+ Where
+ <code>compressed-file-uri</code> refers to a file of any
+ supported type. There is no need to add a ! part to the uri if
+ you read the content of the file you always will get the
uncompressed
+ version.
+ </p>
+
+ <p>
+ <b>Examples</b>
+ </p>
<ul>
- <li><code>jar:../lib/classes.jar!/META-INF/manifest.mf</code></li>
- <li><code>zip:http://somehost/downloads/somefile.zip</code></li>
- <li><code>jar:zip:outer.zip%21/nested.jar!/somedir</code></li>
+ <li>
+ <code>gz:/my/gz/file.gz</code>
+ </li>
</ul>
</section>
@@ -90,15 +180,39 @@
<p>Provides access to files on an HTTP server.</p>
- <p><b>URI Format</b></p>
+ <p>
+ <b>URI Format</b>
+ </p>
- <p><code>http://[<i>username</i>[:<i>password</i>[EMAIL
PROTECTED]<i>hostname</i>[:<i>port</i>][<i>absolute-path</i>]</code></p>
- <p><code>https://[<i>username</i>[:<i>password</i>[EMAIL
PROTECTED]<i>hostname</i>[:<i>port</i>][<i>absolute-path</i>]</code></p>
+ <p>
+ <code>http://[
+ <i>username</i>[:
+ <i>password</i>[EMAIL PROTECTED]
+ <i>hostname</i>[:
+ <i>port</i>][
+ <i>absolute-path</i>]
+ </code>
+ </p>
+ <p>
+ <code>https://[
+ <i>username</i>[:
+ <i>password</i>[EMAIL PROTECTED]
+ <i>hostname</i>[:
+ <i>port</i>][
+ <i>absolute-path</i>]
+ </code>
+ </p>
- <p><b>Examples</b></p>
+ <p>
+ <b>Examples</b>
+ </p>
<ul>
- <li><code>http://somehost:8080/downloads/somefile.jar</code></li>
- <li><code>http://[EMAIL PROTECTED]/index.html</code></li>
+ <li>
+ <code>http://somehost:8080/downloads/somefile.jar</code>
+ </li>
+ <li>
+ <code>http://[EMAIL PROTECTED]/index.html</code>
+ </li>
</ul>
</section>
@@ -106,13 +220,27 @@
<p>Provides access to files on a WebDAV server.</p>
- <p><b>URI Format</b></p>
+ <p>
+ <b>URI Format</b>
+ </p>
- <p><code>webdav://[<i>username</i>[:<i>password</i>[EMAIL
PROTECTED]<i>hostname</i>[:<i>port</i>][<i>absolute-path</i>]</code></p>
+ <p>
+ <code>webdav://[
+ <i>username</i>[:
+ <i>password</i>[EMAIL PROTECTED]
+ <i>hostname</i>[:
+ <i>port</i>][
+ <i>absolute-path</i>]
+ </code>
+ </p>
- <p><b>Examples</b></p>
+ <p>
+ <b>Examples</b>
+ </p>
<ul>
- <li><code>webdav://somehost:8080/dist</code></li>
+ <li>
+ <code>webdav://somehost:8080/dist</code>
+ </li>
</ul>
</section>
@@ -120,13 +248,27 @@
<p>Provides access to the files on an FTP server.</p>
- <p><b>URI Format</b></p>
+ <p>
+ <b>URI Format</b>
+ </p>
- <p><code>ftp://[<i>username</i>[:<i>password</i>[EMAIL
PROTECTED]<i>hostname</i>[:<i>port</i>][<i>absolute-path</i>]</code></p>
+ <p>
+ <code>ftp://[
+ <i>username</i>[:
+ <i>password</i>[EMAIL PROTECTED]
+ <i>hostname</i>[:
+ <i>port</i>][
+ <i>absolute-path</i>]
+ </code>
+ </p>
- <p><b>Examples</b></p>
+ <p>
+ <b>Examples</b>
+ </p>
<ul>
- <li><code>ftp://myusername:[EMAIL
PROTECTED]/pub/downloads/somefile.tgz</code></li>
+ <li>
+ <code>ftp://myusername:[EMAIL
PROTECTED]/pub/downloads/somefile.tgz</code>
+ </li>
</ul>
</section>
@@ -138,11 +280,23 @@
or SCP server).
</p>
- <p><b>URI Format</b></p>
+ <p>
+ <b>URI Format</b>
+ </p>
- <p><code>sftp://[<i>username</i>[:<i>password</i>[EMAIL
PROTECTED]<i>hostname</i>[:<i>port</i>][<i>absolute-path</i>]</code></p>
+ <p>
+ <code>sftp://[
+ <i>username</i>[:
+ <i>password</i>[EMAIL PROTECTED]
+ <i>hostname</i>[:
+ <i>port</i>][
+ <i>absolute-path</i>]
+ </code>
+ </p>
- <p><b>Examples</b></p>
+ <p>
+ <b>Examples</b>
+ </p>
<ul>
<li>
<code>sftp://myusername:[EMAIL
PROTECTED]/pub/downloads/somefile.tgz</code>
@@ -157,14 +311,28 @@
Provides access to the files on a CIFS server, such as
a Samba server, or a Windows share.
</p>
- <p><b>URI Format</b></p>
+ <p>
+ <b>URI Format</b>
+ </p>
- <p><code>smb://[<i>username</i>[:<i>password</i>[EMAIL
PROTECTED]<i>hostname</i>[:<i>port</i>][<i>absolute-path</i>]</code></p>
+ <p>
+ <code>smb://[
+ <i>username</i>[:
+ <i>password</i>[EMAIL PROTECTED]
+ <i>hostname</i>[:
+ <i>port</i>][
+ <i>absolute-path</i>]
+ </code>
+ </p>
- <p><b>Examples</b></p>
+ <p>
+ <b>Examples</b>
+ </p>
<ul>
- <li><code>smb://somehost/home</code></li>
+ <li>
+ <code>smb://somehost/home</code>
+ </li>
</ul>
</section>
@@ -177,14 +345,24 @@
system is backed by a local file system.
</p>
- <p><b>URI Format</b></p>
+ <p>
+ <b>URI Format</b>
+ </p>
- <p><code>tmp://[<i>absolute-path</i>]</code></p>
+ <p>
+ <code>tmp://[
+ <i>absolute-path</i>]
+ </code>
+ </p>
- <p><b>Examples</b></p>
+ <p>
+ <b>Examples</b>
+ </p>
<ul>
- <li><code>tmp://dir/somefile.txt</code></li>
+ <li>
+ <code>tmp://dir/somefile.txt</code>
+ </li>
</ul>
</section>
1.6 +4 -3 jakarta-commons-sandbox/vfs/xdocs/index.xml
Index: index.xml
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/vfs/xdocs/index.xml,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- index.xml 27 Feb 2003 01:38:18 -0000 1.5
+++ index.xml 1 Oct 2004 19:12:48 -0000 1.6
@@ -39,10 +39,11 @@
Utilities for integrating Commons VFS into applications,
such as a VFS-aware ClassLoader and URLStreamHandlerFactory.
</li>
- <li>A set of VFS-enabled <a href="anttasks.html">Ant tasks</a>.</li>
- <li>More coming soon ...</li>
+ <li>A set of VFS-enabled
+ <a href="anttasks.html">Ant tasks</a>.
+ </li>
</ul>
-
+
</section>
</body>
</document>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]