org.apache.poi.hssf.record
Class ExtSSTRecord

java.lang.Object
  extended by org.apache.poi.hssf.record.RecordBase
      extended by org.apache.poi.hssf.record.Record
          extended by org.apache.poi.hssf.record.cont.ContinuableRecord
              extended by org.apache.poi.hssf.record.ExtSSTRecord

public final class ExtSSTRecord
extends ContinuableRecord

Title: Extended Static String Table (0x00FF)

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)


Nested Class Summary
static class ExtSSTRecord.InfoSubRecord
           
 
Field Summary
static int DEFAULT_BUCKET_SIZE
           
static int MAX_BUCKETS
           
static short sid
           
 
Constructor Summary
ExtSSTRecord()
           
ExtSSTRecord(RecordInputStream in)
           
 
Method Summary
protected  int getDataSize()
           
protected  ExtSSTRecord.InfoSubRecord[] getInfoSubRecords()
           
static int getNumberOfInfoRecsForStrings(int numStrings)
           
static int getRecordSizeForStrings(int numStrings)
          Given a number of strings (in the sst), returns the size of the extsst record
 short getSid()
          return the non static version of the id for this record.
 void serialize(ContinuableRecordOutput out)
          Serializes this record's content to the supplied data output.
 void setBucketOffsets(int[] bucketAbsoluteOffsets, int[] bucketRelativeOffsets)
           
 void setNumStringsPerBucket(short numStrings)
           
 java.lang.String toString()
          get a string representation of the record (for biffview/debugging)
 
Methods inherited from class org.apache.poi.hssf.record.cont.ContinuableRecord
getRecordSize, serialize
 
Methods inherited from class org.apache.poi.hssf.record.Record
clone, cloneViaReserialise, serialize
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

sid

public static final short sid
See Also:
Constant Field Values

DEFAULT_BUCKET_SIZE

public static final int DEFAULT_BUCKET_SIZE
See Also:
Constant Field Values

MAX_BUCKETS

public static final int MAX_BUCKETS
See Also:
Constant Field Values
Constructor Detail

ExtSSTRecord

public ExtSSTRecord()

ExtSSTRecord

public ExtSSTRecord(RecordInputStream in)
Method Detail

setNumStringsPerBucket

public void setNumStringsPerBucket(short numStrings)

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 void serialize(ContinuableRecordOutput out)
Description copied from class: ContinuableRecord
Serializes this record's content to the supplied data output.

The standard BIFF header (ushort sid, ushort size) has been handled by the superclass, so only BIFF data should be written by this method. Simple data types can be written with the standard LittleEndianOutput methods. Methods from ContinuableRecordOutput can be used to serialize strings (with ContinueRecords being written as required). If necessary, implementors can explicitly start ContinueRecords (regardless of the amount of remaining space).

Specified by:
serialize in class ContinuableRecord
Parameters:
out - a data output stream

getDataSize

protected int getDataSize()

getInfoSubRecords

protected ExtSSTRecord.InfoSubRecord[] getInfoSubRecords()

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

Parameters:
numStrings - the number of strings
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
Returns:
he id for this record

setBucketOffsets

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