FileDocCategorySizeDatePackage
BlankRecord.javaAPI DocApache Poi 3.0.17995Mon Jan 01 12:39:40 GMT 2007org.apache.poi.hssf.record

BlankRecord

public class BlankRecord extends Record implements Comparable, CellValueRecordInterface
Title: Blank cell record

Description: Represents a column in a row with no value but with styling.

REFERENCE: PG 287 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)

author
Andrew C. Oliver (acoliver at apache dot org)
author
Jason Height (jheight at chariot dot net dot au)
version
2.0-pre

Fields Summary
public static final short
sid
private int
field_1_row
private short
field_2_col
private short
field_3_xf
Constructors Summary
public BlankRecord()
Creates a new instance of BlankRecord


           

     
    
    
public BlankRecord(RecordInputStream in)
Constructs a BlankRecord and sets its fields appropriately

param
id id must be 0x201 or an exception will be throw upon validation
param
size the size of the data area of the record
param
data data of the record (should not contain sid/len)

        super(in);
    
Methods Summary
public java.lang.Objectclone()

      BlankRecord rec = new BlankRecord();
      rec.field_1_row = field_1_row;
      rec.field_2_col = field_2_col;
      rec.field_3_xf = field_3_xf;
      return rec;
    
public intcompareTo(java.lang.Object obj)

        CellValueRecordInterface loc = ( CellValueRecordInterface ) obj;

        if ((this.getRow() == loc.getRow())
                && (this.getColumn() == loc.getColumn()))
        {
            return 0;
        }
        if (this.getRow() < loc.getRow())
        {
            return -1;
        }
        if (this.getRow() > loc.getRow())
        {
            return 1;
        }
        if (this.getColumn() < loc.getColumn())
        {
            return -1;
        }
        if (this.getColumn() > loc.getColumn())
        {
            return 1;
        }
        return -1;
    
public booleanequals(java.lang.Object obj)

        if (!(obj instanceof CellValueRecordInterface))
        {
            return false;
        }
        CellValueRecordInterface loc = ( CellValueRecordInterface ) obj;

        if ((this.getRow() == loc.getRow())
                && (this.getColumn() == loc.getColumn()))
        {
            return true;
        }
        return false;
    
protected voidfillFields(org.apache.poi.hssf.record.RecordInputStream in)

        //field_1_row = LittleEndian.getShort(data, 0 + offset);
        field_1_row = in.readUShort();
        field_2_col = in.readShort();
        field_3_xf  = in.readShort();
    
public shortgetColumn()
get the column this cell defines within the row

return
the column

        return field_2_col;
    
public intgetRecordSize()

        return 10;
    
public intgetRow()
get the row this cell occurs on

return
the row

        return field_1_row;
    
public shortgetSid()
return the non static version of the id for this record.

        return sid;
    
public shortgetXFIndex()
get the index of the extended format record to style this cell with

return
extended format index

        return field_3_xf;
    
public booleanisAfter(org.apache.poi.hssf.record.CellValueRecordInterface i)

        if (this.getRow() < i.getRow())
        {
            return false;
        }
        if ((this.getRow() == i.getRow())
                && (this.getColumn() < i.getColumn()))
        {
            return false;
        }
        if ((this.getRow() == i.getRow())
                && (this.getColumn() == i.getColumn()))
        {
            return false;
        }
        return true;
    
public booleanisBefore(org.apache.poi.hssf.record.CellValueRecordInterface i)

        if (this.getRow() > i.getRow())
        {
            return false;
        }
        if ((this.getRow() == i.getRow())
                && (this.getColumn() > i.getColumn()))
        {
            return false;
        }
        if ((this.getRow() == i.getRow())
                && (this.getColumn() == i.getColumn()))
        {
            return false;
        }
        return true;
    
public booleanisEqual(org.apache.poi.hssf.record.CellValueRecordInterface i)

        return ((this.getRow() == i.getRow())
                && (this.getColumn() == i.getColumn()));
    
public booleanisInValueSection()

        return true;
    
public booleanisValue()

        return true;
    
public intserialize(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.

return
byte array containing instance data

        LittleEndian.putShort(data, 0 + offset, sid);
        LittleEndian.putShort(data, 2 + offset, ( short ) 6);
        //LittleEndian.putShort(data, 4 + offset, getRow());
        LittleEndian.putShort(data, 4 + offset, ( short ) getRow());
        LittleEndian.putShort(data, 6 + offset, getColumn());
        LittleEndian.putShort(data, 8 + offset, getXFIndex());
        return getRecordSize();
    
public voidsetColumn(short col)
set the column this cell defines within the row

param
col the column this cell defines

        field_2_col = col;
    
public voidsetRow(int row)
set the row this cell occurs on

param
row the row this cell occurs within

        field_1_row = row;
    
public voidsetXFIndex(short xf)
set the index of the extended format record to style this cell with

param
xf - the 0-based index of the extended format
see
org.apache.poi.hssf.record.ExtendedFormatRecord

        field_3_xf = xf;
    
public java.lang.StringtoString()

        StringBuffer buffer = new StringBuffer();

        buffer.append("[BLANK]\n");
        buffer.append("row       = ").append(Integer.toHexString(getRow()))
            .append("\n");
        buffer.append("col       = ").append(Integer.toHexString(getColumn()))
            .append("\n");
        buffer.append("xf        = ")
            .append(Integer.toHexString(getXFIndex())).append("\n");
        buffer.append("[/BLANK]\n");
        return buffer.toString();
    
protected voidvalidateSid(short id)
called by constructor, should throw runtime exception in the event of a record passed with a differing ID.

param
id alleged id for this record

        if (id != sid)
        {
            throw new RecordFormatException("NOT A BLANKRECORD!");
        }