summaryrefslogtreecommitdiff
path: root/src/mailman/rest/urls.py
diff options
context:
space:
mode:
authorBarry Warsaw2009-12-27 13:43:35 -0500
committerBarry Warsaw2009-12-27 13:43:35 -0500
commitf759cae372f4a9a48cf1c6851992f3ad1366fd04 (patch)
treea11b606b88153c4475c8289f024aba3cb5dc0860 /src/mailman/rest/urls.py
parent16bf4d15972351c3f8dacc7f28c4cdb24a717e59 (diff)
downloadmailman-f759cae372f4a9a48cf1c6851992f3ad1366fd04.tar.gz
mailman-f759cae372f4a9a48cf1c6851992f3ad1366fd04.tar.zst
mailman-f759cae372f4a9a48cf1c6851992f3ad1366fd04.zip
Diffstat (limited to 'src/mailman/rest/urls.py')
-rw-r--r--src/mailman/rest/urls.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/mailman/rest/urls.py b/src/mailman/rest/urls.py
index 8f0409eb0..5a3b07500 100644
--- a/src/mailman/rest/urls.py
+++ b/src/mailman/rest/urls.py
@@ -117,3 +117,17 @@ class MailingListURLMapper(TopLevelURLMapper):
format_string = (
'{0.schema}://{0.hostname}:{0.port}/{0.version}/'
'lists/{0.context.fqdn_listname}')
+
+
+class MemberURLMapper(TopLevelURLMapper):
+ """Mapper of `IMember` to `IAbsoluteURL`."""
+
+ def __init__(self, context, request):
+ super(MemberURLMapper, self).__init__(context, request)
+ # Use a shorted version of the MemberRole string.
+ enum, dot, self.role = str(self.context.role).partition('.')
+
+ format_string = (
+ '{0.schema}://{0.hostname}:{0.port}/{0.version}/'
+ 'members/{0.context.mailing_list}/'
+ '{0.role}/{0.context.address.address}')