## org.apache.bcel.classfile
Class Unknown

    java.lang.Object
      |
      +--org.apache.bcel.classfile.Attribute
            |
            +--org.apache.bcel.classfile.Unknown

All Implemented Interfaces:
  java.lang.Cloneable, Node, java.io.Serializable

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,v 1.3 2002/03/11 16:16:35 mdahm Exp $
Author:
  M. Dahm
See Also:
  `Attribute`, `AttributeReader`, Serialized Form

Field Summary

Fields inherited from class org.apache.bcel.classfile.Attribute
`constant_pool, length, name_index, tag`

Constructor Summary
`Unknown(int name_index, int length, byte[] bytes, ConstantPool constant_pool)` Create a non-standard attribute.
`Unknown(Unknown c)` Initialize from another object.

Method Summary
`void` `accept(Visitor v)` Called by objects that are traversing the nodes of the tree implicitely defined by the contents of a Java class.
`Attribute` `copy(ConstantPool constant_pool)`
`void` `dump(java.io.DataOutputStream file)` Dump unknown bytes to file stream.
`byte[]` `getBytes()`
`java.lang.String` `getName()`
`void` `setBytes(byte[] bytes)`
`java.lang.String` `toString()`

Methods inherited from class org.apache.bcel.classfile.Attribute
`addAttributeReader, clone, getConstantPool, getLength, getNameIndex, getTag, readAttribute, removeAttributeReader, setConstantPool, setLength, setNameIndex`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

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

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.

  Specified by:
    `accept` in interface `Node`
  Specified by:
    `accept` in class `Attribute`
  Parameters:
    `v` - Visitor object

### dump

    public final void dump(java.io.DataOutputStream file)
                    throws java.io.IOException

  Dump unknown bytes to file stream.

  Overrides:
    `dump` in class `Attribute`
  Parameters:
    `file` - Output file stream
  Throws:
    `java.io.IOException`

### getBytes

    public final byte[] getBytes()

  Returns:
    data bytes.

### getName

    public final java.lang.String getName()

  Returns:
    name of attribute.

### setBytes

    public final void setBytes(byte[] bytes)

### toString

    public final java.lang.String toString()

  Overrides:
    `toString` in class `Attribute`
  Returns:
    String representation.

### copy

    public Attribute copy(ConstantPool constant_pool)

  Specified by:
    `copy` in class `Attribute`
  Returns:
    deep copy of this attribute

Copyright © 2002-2003 Apache Software Foundation. All Rights Reserved.