Class StringRecord


  • public class StringRecord
    extends Record
    Supports the STRING record structure.
    Author:
    Glen Stampoultzis (glens at apache.org)
    • Constructor Detail

      • StringRecord

        public StringRecord()
      • StringRecord

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

      • validateSid

        protected void validateSid​(short id)
        Throw a 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
      • isInValueSection

        public boolean isInValueSection()
        Description copied from class: Record
        DBCELL, ROW, VALUES all say yes
        Overrides:
        isInValueSection in class Record
      • getRecordSize

        public int getRecordSize()
        gives the current serialized size of the record. Should include the sid and reclength (4 bytes).
        Overrides:
        getRecordSize in class Record
      • isUnCompressedUnicode

        public boolean isUnCompressedUnicode()
        is this uncompressed unicode (16bit)? Or just 8-bit compressed?
        Returns:
        isUnicode - True for 16bit- false for 8bit
      • serialize

        public int serialize​(int offset,
                             byte[] data)
        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
      • getSid

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

        public String getString()
        Returns:
        The string represented by this record.
      • setCompressedFlag

        public void setCompressedFlag​(byte unicode_flag)
        Sets whether the string is compressed or not
        Parameters:
        unicode_flag - 1 = uncompressed, 0 = compressed
      • setString

        public void setString​(String string)
        Sets the string represented by this record.
      • toString

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