You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Konstantin Kolinko (JIRA)" <ji...@apache.org> on 2014/10/13 13:03:34 UTC

[jira] [Comment Edited] (BCEL-180) Enable loading ConstantPool from a byte array

    [ https://issues.apache.org/jira/browse/BCEL-180?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14169180#comment-14169180 ] 

Konstantin Kolinko edited comment on BCEL-180 at 10/13/14 11:03 AM:
--------------------------------------------------------------------

{quote}
So we need a way to create ConstantPool instance from byte array we can retrieve by calling http://docs.oracle.com/javase/7/docs/jdk/api/jpda/jdi/com/sun/jdi/ReferenceType.html#constantPool%28%29

N.B. Byte array returned by ReferenceType::constantPool() does not contain entry count at the start expected by ConstantPool(DataInputStream) implementation.
{quote}

The above Javadoc for ReferenceType.constantPool() also says that "The format of the constant pool may differ between versions of the Class File Format, so, the minor and major class version numbers should be checked for compatibility".

Thus constructor may become ConstantPool(int, int, int, byte[])


was (Author: kkolinko):
{quote}
So we need a way to create ConstantPool instance from byte array we can retrieve by calling http://docs.oracle.com/javase/7/docs/jdk/api/jpda/jdi/com/sun/jdi/ReferenceType.html#constantPool%28%29

N.B. Byte array returned by ReferenceType::constantPool() does not contain entry count at the start expected by ConstantPool(DataInputStream) implementation.
{/quote}

The above Javadoc for ReferenceType.constantPool() also says that "The format of the constant pool may differ between versions of the Class File Format, so, the minor and major class version numbers should be checked for compatibility".

Thus constructor may become ConstantPool(int, int, int, byte[])

> Enable loading ConstantPool from a byte array
> ---------------------------------------------
>
>                 Key: BCEL-180
>                 URL: https://issues.apache.org/jira/browse/BCEL-180
>             Project: Commons BCEL
>          Issue Type: Improvement
>            Reporter: Maxim Degtyarev
>
> In some cases such as JDI API we have the class constant pool content only in form of separate byte array. Currently there is no way to load constant pool from byte array.
> The proposed patch add new public constructor to the org.apache.bcel.classfile.ConstantPool that allow loading ConstantPool from byte array representation.
> GitHub pull request: https://github.com/apache/commons-bcel/pull/1



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)