Class StringRecord


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

      Fields 
      Modifier and Type Field Description
      static short sid  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object clone()  
      protected void fillFields​(RecordInputStream in)
      called by the constructor, should set class level fields.
      int getRecordSize()
      gives the current serialized size of the record.
      short getSid()
      return the non static version of the id for this record.
      java.lang.String getString()  
      boolean isInValueSection()
      DBCELL, ROW, VALUES all say yes
      boolean isUnCompressedUnicode()
      is this uncompressed unicode (16bit)? Or just 8-bit compressed?
      int serialize​(int offset, byte[] data)
      called by the class that is responsible for writing this sucker.
      void setCompressedFlag​(byte unicode_flag)
      Sets whether the string is compressed or not
      void setString​(java.lang.String string)
      Sets the string represented by this record.
      java.lang.String toString()
      get a string representation of the record (for biffview/debugging)
      protected void validateSid​(short id)
      Throw a runtime exception in the event of a record passed with a differing ID.
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • 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 java.lang.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​(java.lang.String string)
        Sets the string represented by this record.
      • toString

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

        public java.lang.Object clone()
        Overrides:
        clone in class Record