aboutsummaryrefslogtreecommitdiffstats
path: root/TODO
diff options
context:
space:
mode:
authorNikolaus Schulz <microschulz@web.de>2009-12-28 23:13:19 +0100
committerNikolaus Schulz <microschulz@web.de>2010-07-19 01:40:24 +0200
commit1db28f2b0460f0a063497febfb0897a3dc74dd2a (patch)
tree950f67c3f7ab7efc9c58082f30d2606a161d2d69 /TODO
parent40f9a4c04915cf5d88d4faf80d084b827ab65cf2 (diff)
downloadarchivemail-1db28f2b0460f0a063497febfb0897a3dc74dd2a.tar.gz
archivemail-1db28f2b0460f0a063497febfb0897a3dc74dd2a.tar.bz2
archivemail-1db28f2b0460f0a063497febfb0897a3dc74dd2a.zip
Refactoring of the mbox classes
The RetainMbox and ArchiveMbox classes are now gone, mainly because their finalise() methods were messing with the archived mbox and the archive, respectively, which was not good OO design. The core functionality of the finalise() methods of both removed classes is moved to the objects that are manipulated: the Mbox class representing the mbox that is being archived gains a new method overwrite_with(), and there is a new class ArchiveMbox that represents the actual archive, which has an append() method (yes, unfortunately the new class has the same name like the removed class). The RetainMbox instance is replaced with a TempMbox, and the ArchiveMbox instance either with a TempMbox, or a CompressedTempMbox if archive compression is enabled. Finally, a compressed TempMbox is now a implemented as a subclass of TempMbox, named CompressedMbox. Cooperation with the StaleFiles class moves into the TempMbox class. This means slightly less detailed verbose cleanup reporting, oh well.
Diffstat (limited to 'TODO')
0 files changed, 0 insertions, 0 deletions