summaryrefslogtreecommitdiff
path: root/src/mailman/interfaces
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/interfaces')
-rw-r--r--src/mailman/interfaces/member.py3
-rw-r--r--src/mailman/interfaces/membership.py9
-rw-r--r--src/mailman/interfaces/user.py2
3 files changed, 13 insertions, 1 deletions
diff --git a/src/mailman/interfaces/member.py b/src/mailman/interfaces/member.py
index a5e693411..fc635f21c 100644
--- a/src/mailman/interfaces/member.py
+++ b/src/mailman/interfaces/member.py
@@ -121,6 +121,9 @@ class NotAMemberError(MembershipError):
class IMember(Interface):
"""A member of a mailing list."""
+ member_id = Attribute(
+ """The member's unique, random identifier (sha1 hex digest).""")
+
mailing_list = Attribute(
"""The mailing list subscribed to.""")
diff --git a/src/mailman/interfaces/membership.py b/src/mailman/interfaces/membership.py
index fb3e0c6a2..ec5f9ea69 100644
--- a/src/mailman/interfaces/membership.py
+++ b/src/mailman/interfaces/membership.py
@@ -45,6 +45,15 @@ class ISubscriptionService(Interface):
:rtype: list of `IMember`
"""
+ def get_member(member_id):
+ """Return a member record matching the member id.
+
+ :param member_id: A member id.
+ :type member_id: unicode
+ :return: The matching member, or None if no matching member is found.
+ :rtype: `IMember`
+ """
+
def __iter__():
"""See `get_members()`."""
diff --git a/src/mailman/interfaces/user.py b/src/mailman/interfaces/user.py
index ceffec57f..46dd3ed63 100644
--- a/src/mailman/interfaces/user.py
+++ b/src/mailman/interfaces/user.py
@@ -54,7 +54,7 @@ class IUser(Interface):
"""This user's password information.""")
user_id = Attribute(
- """The user's unique, random, identifier (sha1 hex digest).""")
+ """The user's unique, random identifier (sha1 hex digest).""")
created_on = Attribute(
"""The date and time at which this user was created.""")