Package org.apache.commons.compress.harmony.pack200

# Class MetadataBandGroup

java.lang.Object
org.apache.commons.compress.harmony.pack200.BandSet
org.apache.commons.compress.harmony.pack200.MetadataBandGroup

public class MetadataBandGroup extends BandSet
A group of metadata (annotation) bands, such as class_RVA_bands, method_AD_bands etc.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class org.apache.commons.compress.harmony.pack200.BandSet

  `BandSet.BandAnalysisResults, BandSet.BandData`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `IntList`
  `anno_N`
  `IntList`
  `casearray_N`
  `List<CPSignature>`
  `casec_RS`
  `List<CPConstant<?>>`
  `caseD_KD`
  `List<CPUTF8>`
  `caseec_RU`
  `List<CPSignature>`
  `caseet_RS`
  `List<CPConstant<?>>`
  `caseF_KF`
  `List<CPConstant<?>>`
  `caseI_KI`
  `List<CPConstant<?>>`
  `caseJ_KJ`
  `List<CPUTF8>`
  `cases_RU`
  `static final int`
  `CONTEXT_CLASS`
  `static final int`
  `CONTEXT_FIELD`
  `static final int`
  `CONTEXT_METHOD`
  `List<CPUTF8>`
  `name_RU`
  `List<CPUTF8>`
  `nestname_RU`
  `IntList`
  `nestpair_N`
  `List<CPSignature>`
  `nesttype_RS`
  `IntList`
  `pair_N`
  `IntList`
  `param_NB`
  `List<String>`
  `T`
  `List<CPSignature>`
  `type_RS`

  ### Fields inherited from class org.apache.commons.compress.harmony.pack200.BandSet

  `segmentHeader`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MetadataBandGroup(String type, int context, CpBands cpBands, SegmentHeader segmentHeader, int effort)`
  Constructs a new MetadataBandGroup

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addAnnotation(String desc, List<String> nameRU, List<String> tags, List<Object> values, List<Integer> caseArrayN, List<String> nestTypeRS, List<String> nestNameRU, List<Integer> nestPairN)`
  Add an annotation to this set of bands
  `void`
  `addParameterAnnotation(int numParams, int[] annoN, IntList pairN, List<String> typeRS, List<String> nameRU, List<String> tags, List<Object> values, List<Integer> caseArrayN, List<String> nestTypeRS, List<String> nestNameRU, List<Integer> nestPairN)`
  Add an annotation to this set of bands.
  `boolean`
  `hasContent()`
  Returns true if any annotations have been added to this set of bands.
  `void`
  `incrementAnnoN()`
  `void`
  `newEntryInAnnoN()`
  `int`
  `numBackwardsCalls()`
  `void`
  `pack(OutputStream out)`
  Write the packed set of bands to the given output stream
  `void`
  `removeLatest()`
  Remove the latest annotation that was added to this group

  ### Methods inherited from class org.apache.commons.compress.harmony.pack200.BandSet

  `cpEntryListToArray, cpEntryOrNullListToArray, encodeBandInt, encodeFlags, encodeFlags, encodeScalar, encodeScalar, integerListToArray, longListToArray`

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

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

- ## Field Details

  - ### CONTEXT_CLASS

    public static final int CONTEXT_CLASS
    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

  - ### param_NB

    public IntList param_NB

  - ### anno_N

    public IntList anno_N

  - ### type_RS

    public List<CPSignature> type_RS

  - ### pair_N

    public IntList pair_N

  - ### name_RU

    public List<CPUTF8> name_RU

  - ### T

    public List<String> T

  - ### caseI_KI

    public List<CPConstant<?>> caseI_KI

  - ### caseD_KD

    public List<CPConstant<?>> caseD_KD

  - ### caseF_KF

    public List<CPConstant<?>> caseF_KF

  - ### caseJ_KJ

    public List<CPConstant<?>> caseJ_KJ

  - ### casec_RS

    public List<CPSignature> casec_RS

  - ### caseet_RS

    public List<CPSignature> caseet_RS

  - ### caseec_RU

    public List<CPUTF8> caseec_RU

  - ### cases_RU

    public List<CPUTF8> cases_RU

  - ### casearray_N

    public IntList casearray_N

  - ### nesttype_RS

    public List<CPSignature> nesttype_RS

  - ### nestpair_N

    public IntList nestpair_N

  - ### nestname_RU

    public List<CPUTF8> nestname_RU

- ## Constructor Details

  - ### MetadataBandGroup

    public MetadataBandGroup(String type, int context, CpBands cpBands, SegmentHeader segmentHeader, int effort)
    Constructs a new MetadataBandGroup
    Parameters:
      `type` - must be either AD, RVA, RIA, RVPA or RIPA.
      `context` - `CONTEXT_CLASS`, `CONTEXT_METHOD` or `CONTEXT_FIELD`
      `cpBands` - constant pool bands
      `segmentHeader` - segment header
      `effort` - packing effort

- ## Method Details

  - ### addAnnotation

    public void addAnnotation(String desc, List<String> nameRU, List<String> tags, List<Object> values, List<Integer> caseArrayN, List<String> nestTypeRS, List<String> nestNameRU, List<Integer> nestPairN)
    Add an annotation to this set of bands
    Parameters:
      `desc` - TODO
      `nameRU` - TODO
      `tags` - TODO
      `values` - TODO
      `caseArrayN` - TODO
      `nestTypeRS` - TODO
      `nestNameRU` - TODO
      `nestPairN` - TODO

  - ### addParameterAnnotation

    public void addParameterAnnotation(int numParams, int[] annoN, IntList pairN, List<String> typeRS, List<String> nameRU, List<String> tags, List<Object> values, List<Integer> caseArrayN, List<String> nestTypeRS, List<String> nestNameRU, List<Integer> nestPairN)
    Add an annotation to this set of bands.
    Parameters:
      `numParams` - TODO
      `annoN` - TODO
      `pairN` - TODO
      `typeRS` - TODO
      `nameRU` - TODO
      `tags` - TODO
      `values` - TODO
      `caseArrayN` - TODO
      `nestTypeRS` - TODO
      `nestNameRU` - TODO
      `nestPairN` - TODO

  - ### hasContent

    public boolean hasContent()
    Returns true if any annotations have been added to this set of bands.
    Returns:
      true if any annotations have been added to this set of bands.

  - ### incrementAnnoN

    public void incrementAnnoN()

  - ### newEntryInAnnoN

    public void newEntryInAnnoN()

  - ### numBackwardsCalls

    public int numBackwardsCalls()

  - ### pack

    public void pack(OutputStream out) throws IOException, Pack200Exception
    Description copied from class: `BandSet`
    Write the packed set of bands to the given output stream
    Specified by:
      `pack` in class `BandSet`
    Parameters:
      `out` - TODO
    Throws:
      `IOException` - If an I/O error occurs.
      `Pack200Exception` - TODO

  - ### removeLatest

    public void removeLatest()
    Remove the latest annotation that was added to this group