diff options
Diffstat (limited to 'mailman/interfaces/archiver.py')
| -rw-r--r-- | mailman/interfaces/archiver.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/mailman/interfaces/archiver.py b/mailman/interfaces/archiver.py index 40b05b76c..ac6efcb93 100644 --- a/mailman/interfaces/archiver.py +++ b/mailman/interfaces/archiver.py @@ -17,13 +17,24 @@ """Interface for archiving schemes.""" +__metaclass__ = type +__all__ = [ + 'IArchiver', + 'IPipermailMailingList', + ] + from zope.interface import Interface, Attribute +from mailman.interfaces.mailinglist import IMailingList class IArchiver(Interface): """An interface to the archiver.""" + name = Attribute('The name of this archiver') + + is_enabled = Attribute('True if this archiver is enabled.') + def list_url(mlist): """Return the url to the top of the list's archive. @@ -53,3 +64,14 @@ class IArchiver(Interface): """ # XXX How to handle attachments? + + + +class IPipermailMailingList(IMailingList): + """An interface that adapts IMailingList as needed for Pipermail.""" + + def archive_dir(): + """The directory for storing Pipermail artifacts. + + Pipermail expects this to be a function, not a property. + """ |
