| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| <html> |
| |
| <head> |
| <meta http-equiv="Content-Language" content="en-us"> |
| <link rel="stylesheet" type="text/css" href="style.css"> |
| <title>Uncompressing Tasks</title> |
| </head> |
| |
| <body> |
| |
| <h2><a name="unpack">Uncompressing Tasks</a></h2> |
| <h3>Description</h3> |
| |
| <p>For each of the supported compression formats there is a |
| correspondig task that uncompresses a resource. These tasks are |
| based on |
| their <a href="http://ant.apache.org/manual/CoreTasks/unpack.html">core |
| cousin tasks</a>.</p> |
| |
| <p>If <i>dest</i> is a directory the name of the destination file is |
| the same as <i>src</i> (with the compression specific |
| extension removed if present). If <i>dest</i> is omitted, the parent |
| dir of <i>src</i> is taken. The file is only expanded if the source |
| resource is newer than the destination file, or when the destination file |
| does not exist.</p> |
| |
| <h3>Parameters</h3> |
| <table border="1" cellpadding="2" cellspacing="0"> |
| <tr> |
| <td valign="top"><b>Attribute</b></td> |
| <td valign="top"><b>Description</b></td> |
| <td align="center" valign="top"><b>Required</b></td> |
| </tr> |
| <tr> |
| <td valign="top">src</td> |
| <td valign="top">the file to expand.</td> |
| <td align="center" valign="top">Yes, or a nested resource collection.</td> |
| </tr> |
| <tr> |
| <td valign="top">dest</td> |
| <td valign="top">the destination file or directory.</td> |
| <td align="center" valign="top">No</td> |
| </tr> |
| <tr> |
| <td valign="top"> |
| <a name="decompressConcatenated">decompressConcatenated</a></td> |
| <td valign="top">Only for the formats that support files holding |
| multiple compressed streams (bzip2, gzip and xz).<br/> |
| If set to true all streams will be concatenated and treated as a |
| single resource. With the default value false only the first |
| stream is uncompressed.</td> |
| <td align="center" valign="top">No</td> |
| </tr> |
| </table> |
| <h3>Parameters specified as nested elements</h3> |
| |
| <h4>any <a href="http://ant.apache.org/manual/CoreTypes/resources.html">resource</a> or single element |
| resource collection</h4> |
| |
| <p>The specified resource will be used as src.</p> |
| |
| <h3><a name="bunzip2">BUnZip2</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses the BZIP2 |
| compression algorithm.</p> |
| |
| <p>This task supports |
| the <a href="#decompressConcatenated">decompressConcatenated</a> |
| attribute.</p> |
| |
| <h3><a name="gunzip">GUnZip</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses the GZIP |
| compression algorithm.</p> |
| |
| <p>This task supports |
| the <a href="#decompressConcatenated">decompressConcatenated</a> |
| attribute.</p> |
| |
| <h3><a name="unbrotli">unbrotli</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses the Brotli |
| compression algorithm.</p> |
| |
| <p><em>Since Compress Antlib 1.5</em> |
| |
| <h3><a name="undeflate">Undeflate</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses the DEFLATE |
| compression algorithm.</p> |
| |
| <p><em>Since Compress Antlib 1.5</em> |
| |
| <p>This task supports the following additional attributes:</p> |
| |
| <table border="1" cellpadding="2" cellspacing="0"> |
| <tr> |
| <td valign="top"><b>Attribute</b></td> |
| <td valign="top"><b>Description</b></td> |
| <td align="center" valign="top"><b>Required</b></td> |
| </tr> |
| <tr> |
| <td valign="top">zlibheader</td> |
| <td valign="top">Whether to expect ZLIB headers. Unfortunately |
| it is currently not possible to detect whether zlib headers have |
| been used.</td> |
| <td valign="top" align="center">No, defaults to <code>true</code></td> |
| </tr> |
| </table> |
| |
| <h3><a name="unlz4">UnLZ4</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses the LZ4 |
| compression algorithm.</p> |
| |
| <p><em>Since Apache Compress Antlib 1.5</em>.</p> |
| |
| <p>This task supports |
| the <a href="#decompressConcatenated">decompressConcatenated</a> |
| attribute if the frame format is used.</p> |
| |
| <h4>Parameters</h4> |
| <p>In addition to the attributes supported by all uncompressing task |
| this task also supports.</p> |
| <table border="1" cellpadding="2" cellspacing="0"> |
| <tr> |
| <td valign="top"><b>Attribute</b></td> |
| <td valign="top"><b>Description</b></td> |
| <td align="center" valign="top"><b>Required</b></td> |
| </tr> |
| <tr> |
| <td valign="top">framed</td> |
| <td valign="top">Whether the input is expected to use |
| the <a href="http://lz4.github.io/lz4/lz4_Frame_format.html">frame |
| format</a>.</td> |
| <td align="center" valign="top">No, defaults to true.</td> |
| </tr> |
| </table> |
| |
| <h3><a name="unlzma">UnLZMA</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses the LZMA |
| compression algorithm.</p> |
| |
| <h3><a name="unpack200">Unpack200</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses |
| the <a href="http://download.oracle.com/javase/1.5.0/docs/api/java/util/jar/Pack200.html">Pack200</a> |
| compression algorithm.</p> |
| |
| <p>This task does not work on defalted archives, you need to wrap |
| deflated archives into <code>gunzipresource</code>s in order to use |
| them. |
| |
| <h4>Parameters</h4> |
| <p>In addition to the attributes supported by all uncompressing task |
| this task also supports.</p> |
| <table border="1" cellpadding="2" cellspacing="0"> |
| <tr> |
| <td valign="top"><b>Attribute</b></td> |
| <td valign="top"><b>Description</b></td> |
| <td align="center" valign="top"><b>Required</b></td> |
| </tr> |
| <tr> |
| <td valign="top">pack200strategy</td> |
| <td valign="top">Apache Commons Compress' Pack200 streams cache |
| the archive data either in memory or in a temporary file. |
| User this attribute to control which strategy is chosen. |
| Valid values are "in-memory" and "temp-file".</td> |
| <td align="center" valign="top">No, defaults to in-memory.</td> |
| </tr> |
| </table> |
| |
| <h4>Parameters specified as nested elements</h4> |
| <p>In addition to the nested elements supported by all uncompressing task |
| this task also supports.</p> |
| |
| <h5>property</h5> |
| |
| <p>Sets a property for the unpacker (see the Pack200 javadocs for |
| details).</p> |
| |
| <table border="1" cellpadding="2" cellspacing="0"> |
| <tr> |
| <td valign="top"><b>Attribute</b></td> |
| <td valign="top"><b>Description</b></td> |
| <td align="center" valign="top"><b>Required</b></td> |
| </tr> |
| <tr> |
| <td valign="top">key</td> |
| <td valign="top">Name of the property.</td> |
| <td align="center" valign="top">Yes.</td> |
| </tr> |
| <tr> |
| <td valign="top">value</td> |
| <td valign="top">Value of the property.</td> |
| <td align="center" valign="top">Yes.</td> |
| </tr> |
| </table> |
| |
| <h3><a name="unsnappy">UnSnappy</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses |
| the <a href="https://github.com/google/snappy">Snappy</a> |
| compression algorithm.</p> |
| |
| <p><em>Since Apache Compress Antlib 1.4</em>.</p> |
| |
| <h4>Parameters</h4> |
| <p>In addition to the attributes supported by all uncompressing task |
| this task also supports.</p> |
| <table border="1" cellpadding="2" cellspacing="0"> |
| <tr> |
| <td valign="top"><b>Attribute</b></td> |
| <td valign="top"><b>Description</b></td> |
| <td align="center" valign="top"><b>Required</b></td> |
| </tr> |
| <tr> |
| <td valign="top">framed</td> |
| <td valign="top">Whether the input is expected to use |
| the <a href="https://github.com/google/snappy/blob/master/framing_format.txt">framing |
| format</a>.</td> |
| <td align="center" valign="top">No, defaults to true.</td> |
| </tr> |
| </table> |
| |
| <h3><a name="unxz">UnXZ</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses the XZ |
| compression algorithm.</p> |
| |
| <p>This task supports |
| the <a href="#decompressConcatenated">decompressConcatenated</a> |
| attribute.</p> |
| |
| <h3><a name="unz">UnZ</a></h3> |
| |
| <p>Is an <a href="#unpack">uncompressing task</a> that uses the .Z |
| compression algorithm.</p> |
| |
| <p><em>Since Apache Compress Antlib 1.4</em>.</p> |
| |
| <h3>Examples</h3> |
| <blockquote><pre> |
| <cmp:gunzip src="test.tar.gz" xmlns:cmp="antlib:org.apache.ant.compress"/> |
| </pre></blockquote> |
| <p>expands <i>test.tar.gz</i> to <i>test.tar</i></p> |
| <blockquote><pre> |
| <cmp:bunzip2 src="test.tar.bz2" xmlns:cmp="antlib:org.apache.ant.compress"/> |
| </pre></blockquote> |
| <p>expands <i>test.tar.bz2</i> to <i>test.tar</i></p> |
| <blockquote><pre> |
| <cmp:gunzip src="test.tar.gz" dest="test2.tar" xmlns:cmp="antlib:org.apache.ant.compress"/> |
| </pre></blockquote> |
| <p>expands <i>test.tar.gz</i> to <i>test2.tar</i></p> |
| <blockquote><pre> |
| <cmp:gunzip src="test.tar.gz" dest="subdir" xmlns:cmp="antlib:org.apache.ant.compress"/> |
| </pre></blockquote> |
| <p>expands <i>test.tar.gz</i> to <i>subdir/test.tar</i> (assuming |
| subdir is a directory).</p> |
| <blockquote><pre> |
| <cmp:gunzip dest="." xmlns:cmp="antlib:org.apache.ant.compress"> |
| <url url="http://example.org/archive.tar.gz"/> |
| </cmp:gunzip> |
| </pre></blockquote> |
| <p>downloads <i>http://example.org/archive.tar.gz</i> and expands it |
| to <i>archive.tar</i> in the project's basedir on the fly.</p> |
| <blockquote><pre> |
| <cmp:unpack200 dest="foo.jar" xmlns:cmp="antlib:org.apache.ant.compress"> |
| <cmp:gzipresource> |
| <file file="foo.pack.gz"/> |
| </cmp:gzipresource> |
| </cmp:unpack200> |
| </pre></blockquote> |
| <p>Unpacks the deflated Pack200 archive <i>foo.pack.gz</i> and stores |
| it as <i>foo.jar</i>.</p> |
| |
| <h3>Related tasks</h3> |
| |
| <pre> |
| <cmp:gunzip src="some-archive.gz" dest="some-dest-dir" xmlns:cmp="antlib:org.apache.ant.compress"/> |
| </pre> |
| |
| is identical to |
| |
| <pre> |
| <copy todir="some-dest-dir"> |
| <cmp:gzipresource xmlns:cmp="antlib:org.apache.ant.compress"> |
| <file file="some-archive.gz"/> |
| </cmp:gzipresource> |
| <mapper type="glob" from="*.gz" to="*"/> |
| </copy> |
| </pre> |
| |
| <p>The same is also true for <code><bunzip2></code> and |
| <code><bzip2resource></code>. <code><copy></code> offers |
| additional features like <a |
| href="http://ant.apache.org/manual/CoreTypes/filterchain.html">filtering |
| files</a> on the fly, |
| allowing a file to be mapped to multiple destinations, preserving the |
| last modified time or a configurable file system timestamp |
| granularity.</p> |
| |
| </body> |
| </html> |