Author: bodewig
Date: Sun Aug 16 05:51:38 2009
New Revision: 804627
URL: http://svn.apache.org/viewvc?rev=804627&view=rev
Log:
zip task
Added:
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Zip.java
(contents, props changed)
- copied, changed from r804624,
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Tar.java
Modified:
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/antlib.xml
ant/sandbox/antlibs/compress/trunk/src/tests/antunit/unzip-test.xml
Modified:
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/antlib.xml
URL:
http://svn.apache.org/viewvc/ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/antlib.xml?rev=804627&r1=804626&r2=804627&view=diff
==============================================================================
---
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/antlib.xml
(original)
+++
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/antlib.xml
Sun Aug 16 05:51:38 2009
@@ -44,6 +44,10 @@
name="tar"
classname="org.apache.ant.compress.taskdefs.Tar"
/>
+ <taskdef
+ name="zip"
+ classname="org.apache.ant.compress.taskdefs.Zip"
+ />
<typedef
name="tarentry"
Copied:
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Zip.java
(from r804624,
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Tar.java)
URL:
http://svn.apache.org/viewvc/ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Zip.java?p2=ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Zip.java&p1=ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Tar.java&r1=804624&r2=804627&rev=804627&view=diff
==============================================================================
---
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Tar.java
(original)
+++
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Zip.java
Sun Aug 16 05:51:38 2009
@@ -18,59 +18,36 @@
package org.apache.ant.compress.taskdefs;
-import org.apache.ant.compress.util.TarStreamFactory;
+import org.apache.ant.compress.util.ZipStreamFactory;
import org.apache.commons.compress.archivers.ArchiveEntry;
-import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
-import org.apache.commons.compress.archivers.tar.TarConstants;
+import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
/**
- * Creates tar archives.
+ * Creates zip archives.
*/
-public class Tar extends ArchiveBase {
- public Tar() {
- super(new TarStreamFactory(),
+public class Zip extends ArchiveBase {
+ public Zip() {
+ super(new ZipStreamFactory(),
new ArchiveBase.EntryBuilder() {
public ArchiveEntry buildEntry(ArchiveBase.ResourceWithFlags
r) {
boolean isDir = r.getResource().isDirectory();
- TarArchiveEntry ent =
- new TarArchiveEntry(r.getName(),
- isDir ? TarConstants.LF_DIR
- : TarConstants.LF_NORMAL);
- ent.setModTime(r.getResource().getLastModified());
+ ZipArchiveEntry ent = new ZipArchiveEntry(r.getName());
+ ent.setTime(r.getResource().getLastModified());
ent.setSize(isDir ? 0 : r.getResource().getSize());
if (r.getResourceFlags().hasModeBeenSet()) {
- ent.setMode(r.getResourceFlags().getMode());
+ ent.setUnixMode(r.getResourceFlags().getMode());
} else if (!isDir
&& r.getCollectionFlags().hasModeBeenSet()) {
- ent.setMode(r.getCollectionFlags().getMode());
+ ent.setUnixMode(r.getCollectionFlags().getMode());
} else if (isDir
&& r.getCollectionFlags().hasDirModeBeenSet()) {
- ent.setMode(r.getCollectionFlags().getDirMode());
+ ent.setUnixMode(r.getCollectionFlags().getDirMode());
}
- if (r.getResourceFlags().hasUserIdBeenSet()) {
- ent.setUserId(r.getResourceFlags().getUserId());
- } else if (r.getCollectionFlags().hasUserIdBeenSet()) {
- ent.setUserId(r.getCollectionFlags().getUserId());
- }
-
- if (r.getResourceFlags().hasGroupIdBeenSet()) {
- ent.setGroupId(r.getResourceFlags().getGroupId());
- } else if (r.getCollectionFlags().hasGroupIdBeenSet()) {
- ent.setGroupId(r.getCollectionFlags().getGroupId());
- }
-
- if (r.getResourceFlags().hasUserNameBeenSet()) {
- ent.setUserName(r.getResourceFlags().getUserName());
- } else if (r.getCollectionFlags().hasUserNameBeenSet()) {
- ent.setUserName(r.getCollectionFlags().getUserName());
- }
-
- if (r.getResourceFlags().hasGroupNameBeenSet()) {
- ent.setGroupName(r.getResourceFlags().getGroupName());
- } else if (r.getCollectionFlags().hasGroupNameBeenSet()) {
-
ent.setGroupName(r.getCollectionFlags().getGroupName());
+ if (r.getResourceFlags().getZipExtraFields() != null) {
+ ent.setExtraFields(r.getResourceFlags()
+ .getZipExtraFields());
}
return ent;
Propchange:
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Zip.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/Zip.java
------------------------------------------------------------------------------
svn:mergeinfo =
Modified: ant/sandbox/antlibs/compress/trunk/src/tests/antunit/unzip-test.xml
URL:
http://svn.apache.org/viewvc/ant/sandbox/antlibs/compress/trunk/src/tests/antunit/unzip-test.xml?rev=804627&r1=804626&r2=804627&view=diff
==============================================================================
--- ant/sandbox/antlibs/compress/trunk/src/tests/antunit/unzip-test.xml
(original)
+++ ant/sandbox/antlibs/compress/trunk/src/tests/antunit/unzip-test.xml Sun Aug
16 05:51:38 2009
@@ -38,7 +38,19 @@
/>
</target>
- <target name="testAgainstNativeTar" depends="setUp">
+ <target name="testAgainstAntlibZipTask" depends="setUp">
+ <cmp:zip destfile="${input}/test.zip">
+ <fileset dir="."/>
+ </cmp:zip>
+ <cmp:unzip src="${input}/test.zip" dest="${output}"/>
+ <au:assertFileExists file="${output}/untar-test.xml"/>
+ <au:assertFilesMatch
+ actual="${output}/untar-test.xml"
+ expected="untar-test.xml"
+ />
+ </target>
+
+ <target name="testAgainstNativeZip" depends="setUp">
<cmp:unzip src="../resources/asf-logo.gif.zip" dest="${output}" />
<au:assertFileExists file="${output}/asf-logo.gif"/>
<au:assertFilesMatch