Return-Path: Delivered-To: apmail-incubator-harmony-commits-archive@www.apache.org Received: (qmail 10887 invoked from network); 13 Jun 2006 23:14:43 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 13 Jun 2006 23:14:43 -0000 Received: (qmail 25162 invoked by uid 500); 13 Jun 2006 23:14:42 -0000 Delivered-To: apmail-incubator-harmony-commits-archive@incubator.apache.org Received: (qmail 25131 invoked by uid 500); 13 Jun 2006 23:14:42 -0000 Mailing-List: contact harmony-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: harmony-dev@incubator.apache.org Delivered-To: mailing list harmony-commits@incubator.apache.org Received: (qmail 25119 invoked by uid 99); 13 Jun 2006 23:14:42 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 13 Jun 2006 16:14:42 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [209.237.227.198] (HELO brutus.apache.org) (209.237.227.198) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 13 Jun 2006 16:14:41 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id C982E7141F9 for ; Tue, 13 Jun 2006 23:13:29 +0000 (GMT) Message-ID: <1717956.1150240409795.JavaMail.jira@brutus> Date: Tue, 13 Jun 2006 23:13:29 +0000 (GMT+00:00) From: "Alex Blewitt (JIRA)" To: harmony-commits@incubator.apache.org Subject: [jira] Created: (HARMONY-599) Pack200 implementation for Harmony (work in progress) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Pack200 implementation for Harmony (work in progress) ----------------------------------------------------- Key: HARMONY-599 URL: http://issues.apache.org/jira/browse/HARMONY-599 Project: Harmony Type: New Feature Components: Contributions, Classlib Reporter: Alex Blewitt Priority: Minor Attachments: pack200.impl.zip This is the first part of the pack200 implementation. It includes code for decoding a sequence of values from an input stream (though s=2 codes are not yet supported) and can parse the constant pool headers out of an archive. Although the values make sense from introspecting the output, there are some significant things missing so far (other than the remainder of the archive format) * s=2 decodings are not supported, largely because I don't have any test data to show what the values should be * the attributeDefinitionLayout affects the default codec that is used for each band. Currently, only the default band codec is known; if this contains any vlaues, the parser won't work * I'm not sure if some of the index values are supposed to be 1-indexed instead of 0-indexed, such that cp[0] == null/0. I suspect that a zero value transmitted means something specific. * The test code looks for HelloWorld.pack, which is a packed Jar of the HelloWorld.class. Currently, I don't assert any values from it, just that it parses (or not) as well as hand-inspecting the values. A better test class with known values that can be asserted (or a family of them) will be better * The input stream passed to the parse method must be buffered and GUnzipped before use. Although pack files may be optionally post-compressed with GZip (most are) there isn't any mechanism to peek the values of the header to determine whether or not they're valid. Given that it's incomplete, it doesn't implement/provide the standard java.util.jar Pack200 interfaces yet. This has been built with Eclipse on a Mac(Java 5) so I hope that the classes are referenceable inside harmony. I've attached my .classpath and .project along with it if necessary. I hope that someone can create an appropriate classlib location, and I can then sync this with SVN to provide patches. I've not done all the documentation, but I've done most of the important bits (with the exception of the cpUTF8 parsing in Segment). Any patches to documentation welcome -- or even proof reading :-) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira