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 and 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 int` | `CONTEXT_CLASS`
    `static int` | `CONTEXT_FIELD`
    `static 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 and Description
    `MetadataBandGroup(String type, int context, CpBands cpBands, SegmentHeader segmentHeader, int effort)` Constructs a new MetadataBandGroup

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and 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 Detail

    - #### 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 Detail

    - #### 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 Detail

    - #### 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

Copyright © 2002–2022 The Apache Software Foundation. All rights reserved.