summaryrefslogtreecommitdiff
path: root/src/mailman/interfaces/member.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/interfaces/member.py')
-rw-r--r--src/mailman/interfaces/member.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mailman/interfaces/member.py b/src/mailman/interfaces/member.py
index fc635f21c..0676bfe78 100644
--- a/src/mailman/interfaces/member.py
+++ b/src/mailman/interfaces/member.py
@@ -28,6 +28,7 @@ __all__ = [
'MemberRole',
'MembershipError',
'MembershipIsBannedError',
+ 'MissingPreferredAddressError',
'NotAMemberError',
]
@@ -104,6 +105,17 @@ class MembershipIsBannedError(MembershipError):
self._address, self._mlist)
+class MissingPreferredAddressError(MembershipError):
+ """A user without a preferred address attempted to subscribe."""
+
+ def __init__(self, user):
+ super(MissingPreferredAddressError, self).__init__()
+ self._user = user
+
+ def __str__(self):
+ return 'User must have a preferred address: {0}'.format(self._user)
+
+
class NotAMemberError(MembershipError):
"""The address is not a member of the mailing list."""