public void writeExternal(ObjectOutputStream out, TransactionChangesLog changesLog, FileCleaner fileCleaner)
throws IOException
{
PendingChangesLog pendingChangesLog = new PendingChangesLog(changesLog, fileCleaner);
synchronized (out)
{
if (pendingChangesLog.getConteinerType() == PendingChangesLog.Type.CHANGESLOG_WITH_STREAM)
{
out.writeInt(PendingChangesLog.Type.CHANGESLOG_WITH_STREAM);
out.writeObject(changesLog);
// Write FixupStream
List<FixupStream> listfs = pendingChangesLog.getFixupStreams();
out.writeInt(listfs.size());
for (int i = 0; i < listfs.size(); i++)
{
listfs.get(i).writeExternal(out);
}
// write stream data
List<InputStream> listInputList = pendingChangesLog.getInputStreams();
// write file count
out.writeInt(listInputList.size());
for (int i = 0; i < listInputList.size(); i++)