Class ExtSSTRecord


  • public class ExtSSTRecord
    extends Record
    Title: Extended Static String Table

    Description: This record is used for a quick lookup into the SST record. This record breaks the SST table into a set of buckets. The offsets to these buckets within the SST record are kept as well as the position relative to the start of the SST record. REFERENCE: PG 313 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)

    Version:
    2.0-pre
    Author:
    Andrew C. Oliver (acoliver at apache dot org), Jason Height (jheight at apache dot org)
    See Also:
    ExtSSTInfoSubRecord
    • Constructor Detail

      • ExtSSTRecord

        public ExtSSTRecord()
      • ExtSSTRecord

        public ExtSSTRecord​(RecordInputStream in)
        Constructs a EOFRecord record and sets its fields appropriately.
        Parameters:
        in - the RecordInputstream to read the record from
    • Method Detail

      • validateSid

        protected void validateSid​(short id)
        Description copied from class: Record
        called by constructor, should throw runtime exception in the event of a record passed with a differing ID.
        Specified by:
        validateSid in class Record
        Parameters:
        id - alleged id for this record
      • fillFields

        protected void fillFields​(RecordInputStream in)
        Description copied from class: Record
        called by the constructor, should set class level fields. Should throw runtime exception for bad/icomplete data.
        Specified by:
        fillFields in class Record
        Parameters:
        in - the RecordInputstream to read the record from
      • setNumStringsPerBucket

        public void setNumStringsPerBucket​(short numStrings)
      • getNumStringsPerBucket

        public short getNumStringsPerBucket()
      • getNumInfoRecords

        public int getNumInfoRecords()
      • toString

        public String toString()
        Description copied from class: Record
        get a string representation of the record (for biffview/debugging)
        Overrides:
        toString in class Record
      • serialize

        public int serialize​(int offset,
                             byte[] data)
        Description copied from class: Record
        called by the class that is responsible for writing this sucker. Subclasses should implement this so that their data is passed back in a byte array.
        Specified by:
        serialize in class Record
        Parameters:
        offset - to begin writing at
        data - byte array containing instance data
        Returns:
        number of bytes written
      • getRecordSize

        public int getRecordSize()
        Returns the size of this record
        Overrides:
        getRecordSize in class Record
      • getNumberOfInfoRecsForStrings

        public static final int getNumberOfInfoRecsForStrings​(int numStrings)
      • getRecordSizeForStrings

        public static final int getRecordSizeForStrings​(int numStrings)
        Given a number of strings (in the sst), returns the size of the extsst record
      • getSid

        public short getSid()
        Description copied from class: Record
        return the non static version of the id for this record.
        Specified by:
        getSid in class Record
      • setBucketOffsets

        public void setBucketOffsets​(int[] bucketAbsoluteOffsets,
                                     int[] bucketRelativeOffsets)