org.columba.mail.folder |
Provides all abstract classes for a folder-orentiented datastorage.
Every folder class subclasses {@link FolderTreeNode}, which is basically only
a mutable treenode, which uses the tree.xml configuration file as {@link TreeModel}.
Unlike {@link FolderTreeNode} which doesn't contain messages, {@link Folder} should
be subclasses by every mailbox.
{@link LocalFolder} is used by all local folders and builds a plugin-like approach
to make it easy to add new mailbox formats in the futue.
{@link FolderFactory} follows the factory pattern in providing methods to create
new folders.
|
Java Source File Name | Type | Comment |
AbstractFolder.java | Class | Represents a treenode and is the abstract class every folder extends. |
AbstractFolderTst.java | Class | Abstract testcase creates a folder in setUp and removes it in tearDown. |
AbstractLocalFolder.java | Class | AbstractLocalFolder is a near-to working folder, which only needs a specific
IDataStorage ,
DefaultSearchEngine and
IHeaderListStorage "plugged in" to make it work.
This class is abstract becaused, instead use
MHCachedFolder a
complete implementation.
AbstractLocalFolder uses an internal
ColumbaMessage object as cache.
This allows parsing of a message only once, while accessing the data of the
message multiple times.
Attribute nextMessageUid handles the next unique message ID.
When adding a new message to this folder, it gets this ID assigned for later
reference. |
AbstractMessageFolder.java | Class | Abstract Basic AbstractMessageFolder class. |
AbstractRemoteFolder.java | Class | Top-level folder of every IMAP account. |
AddMessageFolderTest.java | Class | Add message to folder testcase. |
AllTests.java | Class | |
AttributeTest.java | Class | Tests for
Attribute methods. |
ColumbaMailboxInfo.java | Class | |
CopyMessageFolderTest.java | Class | |
ExpungeFolderTest.java | Class | |
FolderChildrenIterator.java | Class | Iterate through all children using depth-first search. |
FolderCreationException.java | Class | |
FolderFactory.java | Class | Factory for creating subfolders. |
FolderInconsistentException.java | Class | Folders throw this exception if they find themselves in
a non-consistent state.
Goal is to make it possible to start an automatic recreation
of the header cache, etc. |
FolderTstHelper.java | Class | Convenience methods for folder testcases. |
GetHeaderFieldsTest.java | Class | |
GetMessageSourceStreamTest.java | Class | |
GetMimePartSourceStreamTest.java | Class | |
IDataStorage.java | Interface | Interface for local folders. |
IHeaderListCorruptedListener.java | Interface | |
IMailbox.java | Interface | Every mailbox which actually containss message should implement this
interface. |
IMailboxInfo.java | Interface | |
IMailFolder.java | Interface | |
IMAPTstFactory.java | Class | |
LocalRootFolder.java | Class | Top-level folder of all local folders. |
MailboxInfoInvalidException.java | Class | |
MailboxTstFactory.java | Interface | |
MBOXFolderTstFactory.java | Class | |
MHFolderFactory.java | Class | |
Root.java | Class | Root treenode, is actually not visible and only needed by
the inner structure of Columba. |
RootFolder.java | Interface | Root folders like
LocalRootFolder and
IMAPRootFolder should
implement this interface. |
TempFolderFactory.java | Class | |