OpenOffice.org
XMerge API

org.openoffice.xmerge.converter.palm
Class PdbDecoder

java.lang.Object
  |
  +--org.openoffice.xmerge.converter.palm.PdbDecoder

public final class PdbDecoder
extends java.lang.Object

Provides functionality to decode a PDB formatted file into a PalmDB object given an InputStream. This class is only used by the PalmDB object.

Sample usage:


     PdbDecoder decoder = new PdbDecoder("sample.pdb");
     PalmDB palmDB = decoder.parse();
  

This decoder has the following assumptions on the PDB file:

  1. There is only one RecordList section in the PDB.
  2. The Record indices in the RecordList are sorted in order, i.e. the first Record index refers to Record 0, and so forth.
  3. The raw Record in the Record section are sorted as well in order, i.e. first Record comes ahead of second Record, etc.

Other decoders assume these as well.

See Also:
PalmDB, Record

Constructor Summary
PdbDecoder()
           
 
Method Summary
 PalmDB parse(byte[] b)
          This method decodes a PDB file into a PalmDB object.
 PalmDB parse(java.lang.String fileName)
          This method decodes a PDB file into a PalmDB object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PdbDecoder

public PdbDecoder()
Method Detail

parse

public PalmDB parse(byte[] b)
             throws java.io.IOException

This method decodes a PDB file into a PalmDB object.

First, the header data is read using the PdbHeader read method. Next, the RecordList section is read and the Record offsets are stored for use when parsing the Records. Based on these offsets, the bytes corresponding to each Record are read and each is stored in a Record object. Lastly, the data is used to create a PalmDB object.

Parameters:
b - byte[] containing PDB.
Throws:
java.io.IOException - If I/O error occurs.

parse

public PalmDB parse(java.lang.String fileName)
             throws java.io.IOException

This method decodes a PDB file into a PalmDB object.

First, the header data is read using the PdbHeader read method. Next, the RecordList section is read and the Record offsets are stored for use when parsing the Records. Based on these offsets, the bytes corresponding to each Record are read and each is stored in a Record object. Lastly, the data is used to create a PalmDB object.

Parameters:
fileName - PDB file name.
Throws:
java.io.IOException - If I/O error occurs.

OpenOffice.org
XMerge API

Copyright © 2002 OpenOffice.org