Class MboxMailboxFactory

java.lang.Object
org.bluezoo.gumdrop.mailbox.mbox.MboxMailboxFactory
All Implemented Interfaces:
MailboxFactory

public class MboxMailboxFactory extends Object implements MailboxFactory
Factory for creating mbox-format mail store instances.

This factory creates mail stores that access mbox-format mailbox files. Both POP3 and IMAP use the store to access mailboxes.

The factory can be configured with a file extension for mbox files (default: ".mbox"). Only files with this extension are treated as mailboxes.

Author:
Chris Burdess
See Also:
  • Constructor Details

    • MboxMailboxFactory

      public MboxMailboxFactory()
      Creates a new mbox mailbox factory. The base directory must be set via setBaseDirectory(String) before use.
    • MboxMailboxFactory

      public MboxMailboxFactory(File basedir)
      Creates a new mbox mailbox factory with default extension (.mbox).
      Parameters:
      basedir - the base directory containing all user mailboxes
    • MboxMailboxFactory

      public MboxMailboxFactory(Path basedir)
      Creates a new mbox mailbox factory with default extension (.mbox).
      Parameters:
      basedir - the base directory containing all user mailboxes
    • MboxMailboxFactory

      public MboxMailboxFactory(Path basedir, String extension)
      Creates a new mbox mailbox factory with custom extension.
      Parameters:
      basedir - the base directory containing all user mailboxes
      extension - the file extension for mbox files (e.g., ".mbox")
  • Method Details

    • setBaseDirectory

      public void setBaseDirectory(String baseDirectory)
      Sets the base directory for all mailboxes.
      Parameters:
      baseDirectory - the base directory path as a string
    • setBaseDirectory

      public void setBaseDirectory(Path baseDirectory)
      Sets the base directory for all mailboxes.
      Parameters:
      baseDirectory - the base directory path
    • getBaseDirectory

      public Path getBaseDirectory()
      Returns the base directory for all mailboxes.
      Returns:
      the base directory path
    • setExtension

      public void setExtension(String extension)
      Sets the file extension for mbox files.
      Parameters:
      extension - the extension (e.g., ".mbox")
    • getExtension

      public String getExtension()
      Returns the file extension used for mbox files.
      Returns:
      the extension (including leading dot)
    • createStore

      public MailboxStore createStore()
      Description copied from interface: MailboxFactory
      Creates a new mail store instance. Each session should get its own store instance to ensure thread safety and proper session isolation.
      Specified by:
      createStore in interface MailboxFactory
      Returns:
      a new mail store instance