Class MetadataBandGroup

java.lang.Object
kala.compress.harmony.pack200.BandSet
kala.compress.harmony.pack200.MetadataBandGroup

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

  • 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()
    • nextString

      private String nextString(Iterator<Object> valuesIterator)
    • 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
    • removeOnePair

      private void removeOnePair()
    • tagListToArray

      private int[] tagListToArray(List<String> list)