Lots of documentation updates, to make it clearer how the code actually works

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@617156 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Nick Burch 2008-01-31 16:41:53 +00:00
parent d89b749d58
commit ab75551e14
1 changed files with 23 additions and 19 deletions

View File

@ -161,31 +161,37 @@ public class HSSFEventFactory
break;
// If we had a last record, and this one
// isn't a continue record, then pass
// it on to the listener
if ((rec != null) && (sid != ContinueRecord.sid))
{
userCode = req.processRecord(rec);
if (userCode != 0) break process;
}
// If this record isn't a continue record,
// then build it up
if (sid != ContinueRecord.sid)
{
//System.out.println("creating "+sid);
//System.out.println("creating "+sid);
Record[] recs = RecordFactory.createRecord(in);
if (recs.length > 1)
{ // we know that the multiple
for (int k = 0; k < (recs.length - 1); k++)
{ // record situations do not
// We know that the multiple record situations
// don't contain continue records, so just
// pass those on to the listener now
if (recs.length > 1) {
for (int k = 0; k < (recs.length - 1); k++) {
userCode = req.processRecord(
recs[ k ]); // contain continue records
recs[ k ]);
if (userCode != 0) break process;
}
}
rec = recs[ recs.length - 1 ]; // regardless we'll process
// the last record as though
// it might be continued
// if there is only one
// records, it will go here too.
// Regardless of the number we created, always hold
// onto the last record to be processed on the next
// loop, in case it has any continue records
rec = recs[ recs.length - 1 ];
}
else {
// Normally, ContinueRecords are handled internally
@ -220,18 +226,16 @@ public class HSSFEventFactory
if(rec instanceof DrawingRecord) {
lastDrawingRecord = (DrawingRecord)rec;
}
}
if (rec != null)
{
} // main while loop
// Process the last record in the stream, if
// it's still outstanding
if (rec != null) {
userCode = req.processRecord(rec);
if (userCode != 0) break process;
}
}
return userCode;
// Record[] retval = new Record[ records.size() ];
// retval = ( Record [] ) records.toArray(retval);
// return null;
}
}