summaryrefslogtreecommitdiff
path: root/Mailman/pipeline/scrubber.py
diff options
context:
space:
mode:
authorBarry Warsaw2008-02-17 17:34:21 -0500
committerBarry Warsaw2008-02-17 17:34:21 -0500
commit69d158b13ae9cfa37040c2e7a664ca266b42050b (patch)
tree07f48ee990b6bab514f86199eaa250a04280120c /Mailman/pipeline/scrubber.py
parentb36de8a6a5b84021c003b728274f7e9e95861c9d (diff)
downloadmailman-69d158b13ae9cfa37040c2e7a664ca266b42050b.tar.gz
mailman-69d158b13ae9cfa37040c2e7a664ca266b42050b.tar.zst
mailman-69d158b13ae9cfa37040c2e7a664ca266b42050b.zip
Diffstat (limited to 'Mailman/pipeline/scrubber.py')
-rw-r--r--Mailman/pipeline/scrubber.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/Mailman/pipeline/scrubber.py b/Mailman/pipeline/scrubber.py
index fb1b6e602..5552a60fc 100644
--- a/Mailman/pipeline/scrubber.py
+++ b/Mailman/pipeline/scrubber.py
@@ -19,6 +19,10 @@
from __future__ import with_statement
+__metaclass__ = type
+__all__ = ['Scrubber']
+
+
import os
import re
import sha
@@ -32,12 +36,14 @@ from email.generator import Generator
from email.utils import make_msgid, parsedate
from locknix.lockfile import Lock
from mimetypes import guess_all_extensions
+from zope.interface import implements
from Mailman import Utils
from Mailman.Errors import DiscardMessage
from Mailman.app.archiving import get_archiver
from Mailman.configuration import config
from Mailman.i18n import _
+from Mailman.interfaces import IHandler
# Path characters for common platforms
pre = re.compile(r'[/\\:]')
@@ -498,3 +504,17 @@ def save_attachment(mlist, msg, dir, filter_html=True):
# Bracket the URL instead.
url = '<' + baseurl + '%s/%s%s%s>' % (dir, filebase, extra, ext)
return url
+
+
+
+class Scrubber:
+ """Cleanse a message for archiving."""
+
+ implements(IHandler)
+
+ name = 'scrubber'
+ description = _('Cleanse a message for archiving.')
+
+ def process(self, mlist, msg, msgdata):
+ """See `IHandler`."""
+ process(mlist, msg, msgdata)