Skip to main content

Source code file content

Revision: 166

Added tag truezip-7.7.5 for changeset b156ba5fed81
» Project Revision History

» Checkout URL

web / features.html

Size: 13980 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>TrueZIP - Key Features</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="20131107"/>
    <meta http-equiv="Content-Language" content="en"/>
          <script type="text/javascript">
      var _gaq = _gaq || [];
      _gaq.push(['_setAccount', 'UA-25500668-1']);
      _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:0t01zxsxy6y';
          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://truezip.schlichtherle.de/category/announcements/feed/"/>
                      
  </head>
  <body class="composite" onload="prettyPrint()">
    <div id="banner">
                    <div id="bannerLeft">
                TrueZIP
                </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: 7.7.5</span>
                  |                         <a href="index.html" title="TrueZIP">TrueZIP</a>
      &raquo;
        Key Features
              </div>
            <div class="xright">        
                        </div>
      <div class="clear"><hr/></div>
    </div>
    <div id="leftColumn">
      <div id="navcolumn">
              
                                                   <h5>Documentation</h5>
                  <ul>
                  <li class="none">
                          <a href="index.html" title="About">About</a>
            </li>
                  <li class="none">
            <strong>Key Features</strong>
          </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>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <li class="collapsed">
                          <a href="6/index.html" title="TrueZIP 6 (Obsolete)">TrueZIP 6 (Obsolete)</a>
                  </li>
          </ul>
                       <h5>External Resources</h5>
                  <ul>
                  <li class="none">
                          <a href="https://java.net/jira/browse/TRUEZIP#selectedTab=com.atlassian.jira.plugin.system.project%3Aroadmap-panel" class="externalLink" title="Road Map">Road Map</a>
            </li>
                  <li class="none">
                          <a href="https://java.net/jira/browse/TRUEZIP#selectedTab=com.atlassian.jira.plugin.system.project%3Achangelog-panel" class="externalLink" title="Change Log">Change Log</a>
            </li>
                  <li class="none">
                          <a href="http://illegalexception.schlichtherle.de" class="externalLink" title="Christian's Blog">Christian's Blog</a>
            </li>
                  <li class="none">
                          <a href="http://java.net/projects/truezip" class="externalLink" title="Developer Site">Developer Site</a>
            </li>
          </ul>
                       <h5>Parent Module</h5>
                                 <h5>Sub-Modules</h5>
                  <ul>
                  <li class="none">
                          <a href="truezip-archetype/index.html" title="TrueZIP Archetype">TrueZIP Archetype</a>
            </li>
                  <li class="none">
                          <a href="truezip-driver/index.html" title="TrueZIP Driver">TrueZIP Driver</a>
            </li>
                  <li class="none">
                          <a href="truezip-extension/index.html" title="TrueZIP Extension">TrueZIP Extension</a>
            </li>
                  <li class="none">
                          <a href="truezip-file/index.html" title="TrueZIP File*">TrueZIP File*</a>
            </li>
                  <li class="none">
                          <a href="truezip-kernel/index.html" title="TrueZIP Kernel">TrueZIP Kernel</a>
            </li>
                  <li class="none">
                          <a href="truezip-samples/index.html" title="TrueZIP Samples">TrueZIP Samples</a>
            </li>
                  <li class="none">
                          <a href="truezip-swing/index.html" title="TrueZIP Swing">TrueZIP Swing</a>
            </li>
                  <li class="none">
                          <a href="truezip-path/index.html" title="TrueZIP Path">TrueZIP Path</a>
            </li>
          </ul>
                       <h5>Reports</h5>
                  <ul>
                                                                                                                                                                                                                                                                                                                                                  <li class="collapsed">
                          <a href="project-info.html" title="Project Information">Project Information</a>
                  </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="2QSQY9ECYES9E" 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>Key Features<a name="Key_Features"></a></h2>
<p>The following list introduces key features of the overal TrueZIP architecture. For a list of features for individual modules please visit their respective home page, e.g. <a href="./truezip-driver/truezip-driver-zip/index.html">TrueZIP Driver ZIP</a>. You can find the modules in the navigation bar.</p>
<dl>
<dt>Easy To Use</dt>
<dd> The client API modules <a href="./truezip-file/index.html">TrueZIP&#160;File*</a> and <a href="./truezip-path/index.html">TrueZIP&#160;Path</a> provide convenient and transparent read/write access to archive files as if they were virtual directories. For example, the classes <a href="./apidocs/de/schlichtherle/truezip/file/TFile.html"><tt>TFile</tt></a>, <a href="./apidocs/de/schlichtherle/truezip/file/TFileInputStream.html"><tt>TFileInputStream</tt></a>, <a href="./apidocs/de/schlichtherle/truezip/file/TFileOutputStream.html"><tt>TFileOutputStream</tt></a> et al can instantly access ZIP files, TAR files and their relatives or even your own <a href="./usecases/aff.html">application file format</a> or <a href="./usecases/eaff.html">encrypted application file format</a>.</dd>
<dt>Fast Bulk I/O</dt>
<dd> The client API module <a href="./truezip-file/index.html">TrueZIP&#160;File*</a> provides convenient and powerful methods for fast bulk I/O operations like file or directory tree copying, moving, deleting, traversing etc. For example, by using the multi-threaded method <a href="./apidocs/de/schlichtherle/truezip/file/TFile.html#catjava.io.InputStreamjava.io.OutputStream"><tt>TFile.cat(InputStream, OutputStream)</tt></a>, you'll never need to use a naive read-stop-write-stop-loop again.</dd>
<dt>File System Federation</dt>
<dd> The <a href="./truezip-kernel/index.html">TrueZIP&#160;Kernel</a> module supports read/write access to stacked file systems. This enables you to read and write entries in nested archive files, e.g. you could write the manifest entry of a JAR file within a WAR file in the current directory simply by using a <tt>new <a href="./apidocs/de/schlichtherle/truezip/file/TFileWriter.html">TFileWriter</a>(&quot;app.war/WEB-INF/lib/lib.jar/META-INF/MANIFEST.MF&quot;)</tt></dd>
<dt>Modular Architecture</dt>
<dd> TrueZIP employs a <a href="./concepts.html">three-tier architecture</a> with an access tier, a kernel tier and a driver tier. The access tier and the driver tier consist of several modules to give you the freedom to select what suits your needs best.</dd>
<dt>Pluggable File System Drivers</dt>
<dd> TrueZIP can support virtually any file system type via its pluggable <a href="./apidocs/de/schlichtherle/truezip/fs/FsDriver.html">file system driver</a> architecture in the driver tier. TrueZIP ships with file system drivers for the file system schemes FILE, HTTP(S), ZIP, TAR and their relatives like JAR, TGZ, TBZ2 etc. To make a file system driver available to your application, simply add the JAR artifact of the driver module to the application's run time class path.</dd>
<dt>Robust</dt>
<dd> The TrueZIP&#160;Kernel properly recognizes false positive archive files, so it does not get confused by an arbitrary file or directory which inadvertenly uses a detectable archive file suffix, e.g. <tt>.zip</tt>.</dd>
<dt>Thread-Safe</dt>
<dd> The TrueZIP&#160;Kernel applies fine grained locking, caching and accounting of resources where required so that multiple threads can safely and concurrently read and write entries within the same archive file.</dd>
<dt>Scalable</dt>
<dd> Given enough heap space to hold the archive file system meta data, TrueZIP can access thousands of archive files with thousands of entries in many different threads concurrently. The kernel and driver tier modules precompute the initial capacity of its hash tables in order to reduce heap fragmentation and CPU utilization caused by frequent resizing of hash tables when adding large numbers of entries.</dd>
<dt>Reliable</dt>
<dd> TrueZIP uses code assertions, unit tests, function tests, integration tests and static code analysis tools like FindBugs and JDepend in order to meet the project's high reliability standards. The project aims for zero bug tolerance so that you can persist your application data using TrueZIP with ease of mind. This claim goes without warranties, of course!</dd></dl></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-11-07</span>
                        </div>
      <div class="clear"><hr/></div>
    </div>
  </body>
</html>
 
 
Close
loading
Please Confirm
Close