Skip to main content

Source code file content

Revision: 29

Added tag truevfs-0.10.3 for changeset 8fc053fae61a
» Project Revision History

» Checkout URL

web / index.html

Size: 17634 bytes, 1 line
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <link href="./css/prettify.css" type="text/css" rel="stylesheet"/>
    <script src="./js/prettify.js" type="text/javascript"></script>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <title>TrueVFS - Home Page</title>
    <style type="text/css" media="all">
      @import url("./css/site.css");
    </style>
    <link rel="stylesheet" href="./css/print.css" type="text/css" media="print"/>
    <meta name="author" content="Christian Schlichtherle"/>
    <meta name="Date-Revision-yyyymmdd" content="20130719"/>
    <meta http-equiv="Content-Language" content="en"/>
          <script type="text/javascript">
      var _gaq = _gaq || [];
      _gaq.push(['_setAccount', 'UA-25500668-2']);
      _gaq.push(['_trackPageview']);
      (function() {
        var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
      })();
    </script>
                  <script>
        (function() {
          var cx = '003580521944097984334:8uinm6tpaz4';
          var gcse = document.createElement('script'); gcse.type = 'text/javascript'; gcse.async = true;
          gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
              '//www.google.com/cse/cse.js?cx=' + cx;
          var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse, s);
        })();
      </script>
                                                          
<link title="The TrueZIP Blog - Announcements Feed" rel="alternate" type="application/rss+xml" href="http://truevfs.schlichtherle.de/category/announcements/feed/"/>
                      
  </head>
  <body class="composite" onload="prettyPrint()">
    <div id="banner">
                    <div id="bannerLeft">
                TrueVFS
                </div>
                                <div id="gcse-search-form" class="gcse-searchbox-only"></div>
            <div class="clear"><hr/></div>
    </div>
    <div id="breadcrumbs">
            
                                  <div class="xleft">
        <span id="projectVersion">Version: 0.10.3</span>
                  |                         <a href="index.html" title="TrueVFS">TrueVFS</a>
      &raquo;
        Home Page
              </div>
            <div class="xright">        
                        </div>
      <div class="clear"><hr/></div>
    </div>
    <div id="leftColumn">
      <div id="navcolumn">
              
                                                   <h5>Documentation</h5>
                  <ul>
                  <li class="none">
            <strong>About</strong>
          </li>
                  <li class="none">
                          <a href="features.html" title="Key Features">Key Features</a>
            </li>
                                                                                                                                            <li class="collapsed">
                          <a href="usecases/index.html" title="Use Cases">Use Cases</a>
                  </li>
                                                                                                        <li class="collapsed">
                          <a href="kick-start/index.html" title="Getting Started">Getting Started</a>
                  </li>
                                                                                                                          <li class="collapsed">
                          <a href="help.html" title="Getting Help">Getting Help</a>
                  </li>
                  <li class="none">
                          <a href="concepts.html" title="Basic Concepts">Basic Concepts</a>
            </li>
                  <li class="none">
                          <a href="glossary.html" title="Glossary">Glossary</a>
            </li>
          </ul>
                       <h5>External Resources</h5>
                  <ul>
                  <li class="none">
                          <a href="http://java.net/jira/browse/TRUEVFS#selectedTab=com.atlassian.jira.plugin.system.project:roadmap-panel" class="externalLink" title="Road Map">Road Map</a>
            </li>
                  <li class="none">
                          <a href="http://java.net/jira/browse/TRUEVFS#selectedTab=com.atlassian.jira.plugin.system.project:changelog-panel" class="externalLink" title="Change Log">Change Log</a>
            </li>
                  <li class="none">
                          <a href="http://truevfs.schlichtherle.de" class="externalLink" title="The TrueVFS Blog">The TrueVFS Blog</a>
            </li>
                  <li class="none">
                          <a href="http://java.net/projects/truevfs" class="externalLink" title="Developer Site">Developer Site</a>
            </li>
          </ul>
                       <h5>Parent Module</h5>
                                 <h5>Sub-Modules</h5>
                  <ul>
                  <li class="none">
                          <a href="truevfs-access/index.html" title="TrueVFS Access">TrueVFS Access</a>
            </li>
                  <li class="none">
                          <a href="truevfs-access-swing/index.html" title="TrueVFS Access Swing">TrueVFS Access Swing</a>
            </li>
                  <li class="none">
                          <a href="truevfs-archetype/index.html" title="TrueVFS Archetype">TrueVFS Archetype</a>
            </li>
                  <li class="none">
                          <a href="truevfs-comp/index.html" title="TrueVFS Component">TrueVFS Component</a>
            </li>
                  <li class="none">
                          <a href="truevfs-driver/index.html" title="TrueVFS Driver">TrueVFS Driver</a>
            </li>
                  <li class="none">
                          <a href="truevfs-ext/index.html" title="TrueVFS Extension">TrueVFS Extension</a>
            </li>
                  <li class="none">
                          <a href="truevfs-kernel/index.html" title="TrueVFS Kernel">TrueVFS Kernel</a>
            </li>
                  <li class="none">
                          <a href="truevfs-profile/index.html" title="TrueVFS Profile">TrueVFS Profile</a>
            </li>
                  <li class="none">
                          <a href="truevfs-samples/index.html" title="TrueVFS Samples">TrueVFS Samples</a>
            </li>
          </ul>
                       <h5>Reports</h5>
                  <ul>
                                                                                                                                                                                                                                                                                                                                                            <li class="expanded">
                          <a href="project-info.html" title="Project Information">Project Information</a>
                    <ul>
                      <li class="none">
            <strong>About</strong>
          </li>
                      <li class="none">
                          <a href="plugin-management.html" title="Plugin Management">Plugin Management</a>
            </li>
                      <li class="none">
                          <a href="distribution-management.html" title="Distribution Management">Distribution Management</a>
            </li>
                      <li class="none">
                          <a href="dependency-info.html" title="Dependency Information">Dependency Information</a>
            </li>
                      <li class="none">
                          <a href="dependency-convergence.html" title="Dependency Convergence">Dependency Convergence</a>
            </li>
                      <li class="none">
                          <a href="source-repository.html" title="Source Repository">Source Repository</a>
            </li>
                      <li class="none">
                          <a href="mail-lists.html" title="Mailing Lists">Mailing Lists</a>
            </li>
                      <li class="none">
                          <a href="issue-tracking.html" title="Issue Tracking">Issue Tracking</a>
            </li>
                      <li class="none">
                          <a href="integration.html" title="Continuous Integration">Continuous Integration</a>
            </li>
                      <li class="none">
                          <a href="plugins.html" title="Project Plugins">Project Plugins</a>
            </li>
                      <li class="none">
                          <a href="license.html" title="Project License">Project License</a>
            </li>
                      <li class="none">
                          <a href="modules.html" title="Project Modules">Project Modules</a>
            </li>
                      <li class="none">
                          <a href="dependency-management.html" title="Dependency Management">Dependency Management</a>
            </li>
                      <li class="none">
                          <a href="team-list.html" title="Project Team">Project Team</a>
            </li>
                      <li class="none">
                          <a href="project-summary.html" title="Project Summary">Project Summary</a>
            </li>
                      <li class="none">
                          <a href="dependencies.html" title="Dependencies">Dependencies</a>
            </li>
              </ul>
        </li>
                                                                                      <li class="collapsed">
                          <a href="project-reports.html" title="Project Reports">Project Reports</a>
                  </li>
          </ul>
                     
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
  <div class="paypalButton">
    <input name="cmd" value="_s-xclick" type="hidden"/>
    <input name="hosted_button_id" value="AGDEQWWKNZ6UL" type="hidden"/>
    <input style="border: 0" alt="PayPal - The safer, easier way to pay online!" name="submit" src="https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif" type="image"/>
  </div>
</form>
                                
                              </div>
    </div>
    <div id="bodyColumn" class="content">
      <div id="contentBox">
                                      <div class="section">
<h2>About<a name="About"></a></h2>
<p>TrueVFS is a virtual file system (VFS) for Java&#160;7 which enables client applications to perform CRUD (Create, Read, Update, Delete) operations on archive files as if they were virtual directories, even with nested archive files in multithreaded environments - see <a href="./features.html">Key Features</a>. For example, creating a TAR.GZ file from a ZIP file is as easy as calling:</p>
<div class="source">
<pre>new TFile(&quot;archive.zip&quot;).cp_rp(new TFile(&quot;archive.tar.gz&quot;));</pre></div>
<p>The semantics of this example are roughly equivalent to the GNU command...</p>
<div class="source">
<pre>cp -rp archive.zip archive.tar.gz</pre></div>
<p>... if only the <tt>cp</tt> command would let you access ZIP files and TAR.GZ files as if they were directories.</p>
<p>Note that the high abstraction level of the client API enables optimization of I/O access, so that this example operation doesn't even require buffering to temporary files.</p>
<p>TrueVFS is Open Source Software and is covered by the <a href="./license.html">Eclipse Public License, Version 1.0</a>. The most recent version is TrueVFS&#160;0.10.3 - see <a class="externalLink" href="http://java.net/jira/browse/TRUEVFS#selectedTab=com.atlassian.jira.plugin.system.project:changelog-panel">Change Log</a>.</p>
<div class="section">
<h3>State Of Affairs<a name="State_Of_Affairs"></a></h3>
<p>TrueVFS is the successor of <a class="externalLink" href="http://truezip.java.net">TrueZIP</a>. TrueVFS&#160;0.10.3 has been developed by refactoring the TrueZIP code base and reflects the latest changes up to TrueZIP&#160;7.7.2. While refactoring, the original automated test suite has been maintained and extended so that you can easily put the same faith into TrueVFS&#160;0.10.3 than you could put into TrueZIP&#160;7.7.2.</p>
<p>If you are interested in the plans for this project, please have a look at its <a class="externalLink" href="http://java.net/jira/browse/TRUEVFS#selectedTab=com.atlassian.jira.plugin.system.project%3Aroadmap-panel">Road Map</a> on JIRA or subscribe to its <a href="./mail-lists.html">Users Mailing List</a> for discussion. As of now, TrueVFS and TrueZIP share the same mailing lists, so if you are already subscribed to any TrueZIP mailing list, then you don&#x2019;t need to change anything.</p>
<p>Note that the TrueVFS version is not yet at 1.0 because chances are that there will be backwards incompatible changes to the API of internal modules. This is unlikely to happen to the API of the client module <a href="./truevfs-access/index.html">TrueVFS&#160;Access</a>, however.</p>
<p>Developing TrueVFS is a serious effort which requires a lot of time. If TrueVFS has helped you or your organization to save some valuable development time or enable new features in your application, then please consider making a donation. To make a donation, just click the <i>Donate</i> button in the navigation bar on the left side or <a href="./team-list.html">contact me</a> personally. Any donation contributes to the ongoing development and support of the TrueVFS project. Thank you very much for your consideration!</p></div>
<div class="section">
<h3>Supported File System Types<a name="Supported_File_System_Types"></a></h3>
<p>TrueVFS&#160;0.10.3 ships with pluggable driver modules for <a href="./truevfs-driver/truevfs-driver-file/index.html">FILE</a>, <a href="./truevfs-driver/truevfs-driver-http/index.html">HTTP(S)</a>, <a href="./truevfs-driver/truevfs-driver-jar/index.html">JAR</a>, <a href="./truevfs-driver/truevfs-driver-odf/index.html">ODF</a>, <a href="./truevfs-driver/truevfs-driver-sfx/index.html">SFX</a>, <a href="./truevfs-driver/truevfs-driver-tar/index.html">TAR</a>, <a href="./truevfs-driver/truevfs-driver-tar-bzip2/index.html">TAR.BZIP2</a>, <a href="./truevfs-driver/truevfs-driver-tar-gzip/index.html">TAR.GZIP</a>, <a href="./truevfs-driver/truevfs-driver-tar-xz/index.html">TAR.XZ</a>, <a href="./truevfs-driver/truevfs-driver-zip/index.html">ZIP</a> and <a href="./truevfs-driver/truevfs-driver-tzp/index.html">ZIP.RAES (TZP)</a> file system schemes. For the 1.0 release, there will be more.</p>
<p>Simply add the JAR artifact of these driver modules to the run time class path to make their file system drivers available for service location in the client API module - see below.</p></div>
<div class="section">
<h3>Using TrueVFS<a name="Using_TrueVFS"></a></h3>
<p>As a library, TrueVFS provides simple, uniform, transparent, thread-safe, read/write access to archive files as if they were virtual directories in a file system path. TrueVFS provides the client module <a href="./truevfs-access/index.html">TrueVFS&#160;Access</a> with the API for convenient access to its (federated virtual) file system space.</p>
<p>Writing an application for this API is really simple: Please have a look at the page <a href="./kick-start/index.html">Getting Started</a> to learn how to generate a TrueVFS client application from a Maven archetype in about ten minutes or have a look at the <a href="./kick-start/tutorial.html">tutorial</a>.</p></div>
<div class="section">
<h3>Extending TrueVFS<a name="Extending_TrueVFS"></a></h3>
<p>As a framework, TrueVFS provides the API to write file system drivers which plug-in to its federated file system space. The module TrueVFS&#160;Kernel modules features federating, multithreading, multiplexing, caching and accounting so that (archive) file system drivers do not need to take care of these aspects of a (virtual) file system.</p>
<p>While there is no tutorial for how to write a file system driver, there's comprehensive Javadoc and sample code:</p>
<ul>
<li>If you are going to write an archive file system driver, please consult the Javadoc for the abstract class <a href="./apidocs/net/java/truevfs/kernel/spec/FsArchiveDriver.html"><tt>FsArchiveDriver</tt></a>.</li>
<li>If you are going to write a plain file system driver, please consult the Javadoc for the abstract class <a href="./apidocs/net/java/truevfs/kernel/spec/FsDriver.html"><tt>FsDriver</tt></a>.</li></ul></div></div>
              </div>
    </div>
    <div class="clear"><hr/></div>
    <div id="footer">
      <div class="xright">
              Copyright &#169;                    2005-2013
                        <a href="http://schlichtherle.de">Schlichtherle IT Services</a>.
            All Rights Reserved.      
                                   <span id="publishDate">Last Published: 2013-07-19</span>
                        </div>
      <div class="clear"><hr/></div>
    </div>
  </body>
</html>
 
 
Close
loading
Please Confirm
Close