Class DBCellRecord


  • public class DBCellRecord
    extends Record
    Title: DBCell Record Description: Used by Excel and other MS apps to quickly find rows in the sheets.

    REFERENCE: PG 299/440 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
    • Field Summary

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

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addCellOffset​(short offset)  
      protected void fillFields​(RecordInputStream in)
      called by the constructor, should set class level fields.
      short getCellOffsetAt​(int index)
      return the cell offset in the array
      int getNumCellOffsets()
      get the number of cell offsets in the celloffset array
      int getRecordSize()
      gives the current serialized size of the record.
      static int getRecordSizeForRows​(int rows)
      Returns the size of a DBCellRecord when it needs to reference a certain number of rows
      int getRowOffset()
      gets offset from the start of this DBCellRecord to the start of the first cell in the next DBCell block.
      short getSid()
      return the non static version of the id for this record.
      boolean isInValueSection()
      DBCELL, ROW, VALUES all say yes
      int serialize​(int offset, byte[] data)
      called by the class that is responsible for writing this sucker.
      void setRowOffset​(int offset)
      sets offset from the start of this DBCellRecord to the start of the first cell in the next DBCell block.
      java.lang.String toString()
      get a string representation of the record (for biffview/debugging)
      protected void validateSid​(short id)
      called by constructor, should throw 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

      • DBCellRecord

        public DBCellRecord()
      • DBCellRecord

        public DBCellRecord​(RecordInputStream in)
        Constructs a DBCellRecord 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
      • setRowOffset

        public void setRowOffset​(int offset)
        sets offset from the start of this DBCellRecord to the start of the first cell in the next DBCell block.
        Parameters:
        offset - offset to the start of the first cell in the next DBCell block
      • addCellOffset

        public void addCellOffset​(short offset)
      • getRowOffset

        public int getRowOffset()
        gets offset from the start of this DBCellRecord to the start of the first cell in the next DBCell block.
        Returns:
        rowoffset to the start of the first cell in the next DBCell block
      • getCellOffsetAt

        public short getCellOffsetAt​(int index)
        return the cell offset in the array
        Parameters:
        index - of the cell offset to retrieve
        Returns:
        celloffset from the celloffset array
      • getNumCellOffsets

        public int getNumCellOffsets()
        get the number of cell offsets in the celloffset array
        Returns:
        number of cell offsets
      • 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
      • 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()
        Description copied from class: Record
        gives the current serialized size of the record. Should include the sid and reclength (4 bytes).
        Overrides:
        getRecordSize in class Record
      • getRecordSizeForRows

        public static int getRecordSizeForRows​(int rows)
        Returns the size of a DBCellRecord when it needs to reference a certain number of rows
      • 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
      • isInValueSection

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