(extraFields is usually empty, so leave null unless really needed.)
Heap usage from <zip> still intense, however - some ZipEntry's (another 1-2Mb)
but mostly String's (9Mb!) from all the FileSet's which are kept in memory.
For the same 30Mb (compressed) ZIP file, need about 15Mb heap at peak.
Not clear whether that could be improved without breaking B/C. Another day.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@432410 13f79535-47bb-0310-9956-ffa450edef68
The equals method was a bit lousy and does not have a real meaning, so I keep it clear that the equals is related to the instance and nothing else. the hashCode method is actually the most important for performance.
I have yet to find a way to unit test it programmatically as I don't understand the Zip task impl. at first glance.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@277432 13f79535-47bb-0310-9956-ffa450edef68
A zip entry is not equal to another zip entry when the name matches.
Multiple files may have the same name, and have for instance different
offsets.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@277346 13f79535-47bb-0310-9956-ffa450edef68
The performance problem was mainly due to the entry insertion in
the hashtable where all hash code were equals in the hashtable.
I also removed a lot of unecessary Zip(Long|Short) object creation by
adding static methods and suppressed a hashtable.
More can be done, but I tried not to break the interface and have as less code
as possible. The testcase attached in the bug report show that it is now 15% slower than Sun native code and 20% faster than Jazz libs.
Now watch for Gump...
PR: 31930
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@277122 13f79535-47bb-0310-9956-ffa450edef68
In java.15 some of the reflection APIs are overloaded to be
usable via varargs, so untyped things cause confusion. These
are everywhere that bootstrap complains.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@277008 13f79535-47bb-0310-9956-ffa450edef68
get an InputStream to the ZipEntrys yet.
Will be needed to fix PR 10504 as well as to preserve permissions when
updating an archive (no PR yet).
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@274742 13f79535-47bb-0310-9956-ffa450edef68
to allow Ant generated zip/jar/war/ear files to be extracted on Unix
boxes without permission problems for directories.
This one uses external file attributes like InfoZip's zip does, this
is a rough cut - the infrastructure to set arbitrary permissions and
add user/group IDs via Zip's external fields is there, but not used
ATM. Directories will always get 755 permissions right now.
The testcases work on my box, and I can extract Ant created archives
without any trouble - can't await tomorrows Gump run.
package documentation for org.apache.tools.zip will follow.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@268959 13f79535-47bb-0310-9956-ffa450edef68