Package org.apache.commons.compress.harmony.unpack200

# Class AttributeLayout

java.lang.Object
org.apache.commons.compress.harmony.unpack200.AttributeLayout

All Implemented Interfaces:
  `IMatcher`

public class AttributeLayout extends Object implements IMatcher
AttributeLayout defines a layout that describes how an attribute will be transmitted.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `ACC_ABSTRACT`
  `static final String`
  `ACC_ANNOTATION`
  `static final String`
  `ACC_ENUM`
  `static final String`
  `ACC_FINAL`
  `static final String`
  `ACC_INTERFACE`
  `static final String`
  `ACC_NATIVE`
  `static final String`
  `ACC_PRIVATE`
  `static final String`
  `ACC_PROTECTED`
  `static final String`
  `ACC_PUBLIC`
  `static final String`
  `ACC_STATIC`
  `static final String`
  `ACC_STRICT`
  `static final String`
  `ACC_SYNCHRONIZED`
  `static final String`
  `ACC_SYNTHETIC`
  `static final String`
  `ACC_TRANSIENT`
  `static final String`
  `ACC_VOLATILE`
  `static final String`
  `ATTRIBUTE_ANNOTATION_DEFAULT`
  `static final String`
  `ATTRIBUTE_CLASS_FILE_VERSION`
  `static final String`
  `ATTRIBUTE_CODE`
  `static final String`
  `ATTRIBUTE_CONSTANT_VALUE`
  `static final String`
  `ATTRIBUTE_DEPRECATED`
  `static final String`
  `ATTRIBUTE_ENCLOSING_METHOD`
  `static final String`
  `ATTRIBUTE_EXCEPTIONS`
  `static final String`
  `ATTRIBUTE_INNER_CLASSES`
  `static final String`
  `ATTRIBUTE_LINE_NUMBER_TABLE`
  `static final String`
  `ATTRIBUTE_LOCAL_VARIABLE_TABLE`
  `static final String`
  `ATTRIBUTE_LOCAL_VARIABLE_TYPE_TABLE`
  `static final String`
  `ATTRIBUTE_RUNTIME_INVISIBLE_ANNOTATIONS`
  `static final String`
  `ATTRIBUTE_RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS`
  `static final String`
  `ATTRIBUTE_RUNTIME_VISIBLE_ANNOTATIONS`
  `static final String`
  `ATTRIBUTE_RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS`
  `static final String`
  `ATTRIBUTE_SIGNATURE`
  `static final String`
  `ATTRIBUTE_SOURCE_FILE`
  `static final int`
  `CONTEXT_CLASS`
  `static final int`
  `CONTEXT_CODE`
  `static final int`
  `CONTEXT_FIELD`
  `static final int`
  `CONTEXT_METHOD`
  `static final String[]`
  `contextNames`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AttributeLayout(String name, int context, String layout, int index)`
  Construct a default AttributeLayout (equivalent to `new AttributeLayout(name, context, layout, index, true);`)
  `AttributeLayout(String name, int context, String layout, int index, boolean isDefault)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Codec`
  `getCodec()`
  `int`
  `getContext()`
  `int`
  `getIndex()`
  `String`
  `getLayout()`
  `String`
  `getName()`
  `ClassFileEntry`
  `getValue(long value, String type, SegmentConstantPool pool)`
  `ClassFileEntry`
  `getValue(long value, SegmentConstantPool pool)`
  `int`
  `hashCode()`
  `boolean`
  `isDefaultLayout()`
  `boolean`
  `matches(long value)`
  `int`
  `numBackwardsCallables()`
  `void`
  `setBackwardsCallCount(int backwardsCallCount)`
  `String`
  `toString()`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### ACC_ABSTRACT

    public static final String ACC_ABSTRACT
    See Also:
      - Constant Field Values

  - ### ACC_ANNOTATION

    public static final String ACC_ANNOTATION
    See Also:
      - Constant Field Values

  - ### ACC_ENUM

    public static final String ACC_ENUM
    See Also:
      - Constant Field Values

  - ### ACC_FINAL

    public static final String ACC_FINAL
    See Also:
      - Constant Field Values

  - ### ACC_INTERFACE

    public static final String ACC_INTERFACE
    See Also:
      - Constant Field Values

  - ### ACC_NATIVE

    public static final String ACC_NATIVE
    See Also:
      - Constant Field Values

  - ### ACC_PRIVATE

    public static final String ACC_PRIVATE
    See Also:
      - Constant Field Values

  - ### ACC_PROTECTED

    public static final String ACC_PROTECTED
    See Also:
      - Constant Field Values

  - ### ACC_PUBLIC

    public static final String ACC_PUBLIC
    See Also:
      - Constant Field Values

  - ### ACC_STATIC

    public static final String ACC_STATIC
    See Also:
      - Constant Field Values

  - ### ACC_STRICT

    public static final String ACC_STRICT
    See Also:
      - Constant Field Values

  - ### ACC_SYNCHRONIZED

    public static final String ACC_SYNCHRONIZED
    See Also:
      - Constant Field Values

  - ### ACC_SYNTHETIC

    public static final String ACC_SYNTHETIC
    See Also:
      - Constant Field Values

  - ### ACC_TRANSIENT

    public static final String ACC_TRANSIENT
    See Also:
      - Constant Field Values

  - ### ACC_VOLATILE

    public static final String ACC_VOLATILE
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_ANNOTATION_DEFAULT

    public static final String ATTRIBUTE_ANNOTATION_DEFAULT
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_CLASS_FILE_VERSION

    public static final String ATTRIBUTE_CLASS_FILE_VERSION
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_CODE

    public static final String ATTRIBUTE_CODE
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_CONSTANT_VALUE

    public static final String ATTRIBUTE_CONSTANT_VALUE
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_DEPRECATED

    public static final String ATTRIBUTE_DEPRECATED
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_ENCLOSING_METHOD

    public static final String ATTRIBUTE_ENCLOSING_METHOD
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_EXCEPTIONS

    public static final String ATTRIBUTE_EXCEPTIONS
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_INNER_CLASSES

    public static final String ATTRIBUTE_INNER_CLASSES
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_LINE_NUMBER_TABLE

    public static final String ATTRIBUTE_LINE_NUMBER_TABLE
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_LOCAL_VARIABLE_TABLE

    public static final String ATTRIBUTE_LOCAL_VARIABLE_TABLE
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_LOCAL_VARIABLE_TYPE_TABLE

    public static final String ATTRIBUTE_LOCAL_VARIABLE_TYPE_TABLE
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_RUNTIME_INVISIBLE_ANNOTATIONS

    public static final String ATTRIBUTE_RUNTIME_INVISIBLE_ANNOTATIONS
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS

    public static final String ATTRIBUTE_RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_RUNTIME_VISIBLE_ANNOTATIONS

    public static final String ATTRIBUTE_RUNTIME_VISIBLE_ANNOTATIONS
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS

    public static final String ATTRIBUTE_RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_SIGNATURE

    public static final String ATTRIBUTE_SIGNATURE
    See Also:
      - Constant Field Values

  - ### ATTRIBUTE_SOURCE_FILE

    public static final String ATTRIBUTE_SOURCE_FILE
    See Also:
      - Constant Field Values

  - ### CONTEXT_CLASS

    public static final int CONTEXT_CLASS
    See Also:
      - Constant Field Values

  - ### CONTEXT_CODE

    public static final int CONTEXT_CODE
    See Also:
      - Constant Field Values

  - ### CONTEXT_FIELD

    public static final int CONTEXT_FIELD
    See Also:
      - Constant Field Values

  - ### CONTEXT_METHOD

    public static final int CONTEXT_METHOD
    See Also:
      - Constant Field Values

  - ### contextNames

    public static final String[] contextNames

- ## Constructor Details

  - ### AttributeLayout

    public AttributeLayout(String name, int context, String layout, int index) throws Pack200Exception
    Construct a default AttributeLayout (equivalent to `new AttributeLayout(name, context, layout, index, true);`)
    Parameters:
      `name` - TODO
      `context` - TODO
      `layout` - TODO
      `index` - TODO
    Throws:
      `Pack200Exception` - Attribute context out of range.
      `Pack200Exception` - Cannot have a null layout.
      `Pack200Exception` - Cannot have an unnamed layout.

  - ### AttributeLayout

    public AttributeLayout(String name, int context, String layout, int index, boolean isDefault) throws Pack200Exception
    Throws:
      `Pack200Exception`

- ## Method Details

  - ### getCodec

    public Codec getCodec()

  - ### getContext

    public int getContext()

  - ### getIndex

    public int getIndex()

  - ### getLayout

    public String getLayout()

  - ### getName

    public String getName()

  - ### getValue

    public ClassFileEntry getValue(long value, SegmentConstantPool pool) throws Pack200Exception
    Throws:
      `Pack200Exception`

  - ### getValue

    public ClassFileEntry getValue(long value, String type, SegmentConstantPool pool) throws Pack200Exception
    Throws:
      `Pack200Exception`

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `Object`

  - ### isDefaultLayout

    public boolean isDefaultLayout()

  - ### matches

    public boolean matches(long value)
    Specified by:
      `matches` in interface `IMatcher`

  - ### numBackwardsCallables

    public int numBackwardsCallables()

  - ### setBackwardsCallCount

    public void setBackwardsCallCount(int backwardsCallCount)

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`