org.apache.bcel.classfile

Class Unknown

public final class Unknown extends Attribute

This class represents a reference to an unknown (i.e., application-specific) attribute of a class. It is instantiated from the Attribute.readAttribute() method. Applications that need to read in application-specific attributes should create an AttributeReader implementation and attach it via Attribute.addAttributeReader.

Version: $Id: Unknown.java 386056 2006-03-15 11:31:56Z tcurdt $

Author: M. Dahm

See Also: Attribute AttributeReader

Field Summary
byte[]bytes
Stringname
static Mapunknown_attributes
Constructor Summary
Unknown(Unknown c)
Initialize from another object.
Unknown(int name_index, int length, byte[] bytes, ConstantPool constant_pool)
Create a non-standard attribute.
Unknown(int name_index, int length, DataInputStream file, ConstantPool constant_pool)
Construct object from file stream.
Method Summary
voidaccept(Visitor v)
Called by objects that are traversing the nodes of the tree implicitely defined by the contents of a Java class.
Attributecopy(ConstantPool _constant_pool)
voiddump(DataOutputStream file)
Dump unknown bytes to file stream.
byte[]getBytes()
StringgetName()
static Unknown[]getUnknownAttributes()
voidsetBytes(byte[] bytes)
StringtoString()

Field Detail

bytes

private byte[] bytes

name

private String name

unknown_attributes

private static Map unknown_attributes

Constructor Detail

Unknown

public Unknown(Unknown c)
Initialize from another object. Note that both objects use the same references (shallow copy). Use clone() for a physical copy.

Unknown

public Unknown(int name_index, int length, byte[] bytes, ConstantPool constant_pool)
Create a non-standard attribute.

Parameters: name_index Index in constant pool length Content length in bytes bytes Attribute contents constant_pool Array of constants

Unknown

Unknown(int name_index, int length, DataInputStream file, ConstantPool constant_pool)
Construct object from file stream.

Parameters: name_index Index in constant pool length Content length in bytes file Input stream constant_pool Array of constants

Throws: IOException

Method Detail

accept

public void accept(Visitor v)
Called by objects that are traversing the nodes of the tree implicitely defined by the contents of a Java class. I.e., the hierarchy of methods, fields, attributes, etc. spawns a tree of objects.

Parameters: v Visitor object

copy

public Attribute copy(ConstantPool _constant_pool)

Returns: deep copy of this attribute

dump

public final void dump(DataOutputStream file)
Dump unknown bytes to file stream.

Parameters: file Output file stream

Throws: IOException

getBytes

public final byte[] getBytes()

Returns: data bytes.

getName

public final String getName()

Returns: name of attribute.

getUnknownAttributes

static Unknown[] getUnknownAttributes()

Returns: array of unknown attributes, but just one for each kind.

setBytes

public final void setBytes(byte[] bytes)

Parameters: bytes the bytes to set

toString

public final String toString()

Returns: String representation.