diff options
| author | Barry Warsaw | 2014-08-12 19:00:44 -0400 |
|---|---|---|
| committer | Barry Warsaw | 2014-08-12 19:00:44 -0400 |
| commit | 61ad6fde0a9cff213a347838f19878a7b52f5466 (patch) | |
| tree | daa43402eed6d9adf8e40c4d077249c46129d962 /src/mailman/rest/root.py | |
| parent | 826261effa9d74b8ecdf1247e9ebba75fa3b2baa (diff) | |
| download | mailman-61ad6fde0a9cff213a347838f19878a7b52f5466.tar.gz mailman-61ad6fde0a9cff213a347838f19878a7b52f5466.tar.zst mailman-61ad6fde0a9cff213a347838f19878a7b52f5466.zip | |
Diffstat (limited to 'src/mailman/rest/root.py')
| -rw-r--r-- | src/mailman/rest/root.py | 27 |
1 files changed, 5 insertions, 22 deletions
diff --git a/src/mailman/rest/root.py b/src/mailman/rest/root.py index 6b13d8246..9e9f5bfa5 100644 --- a/src/mailman/rest/root.py +++ b/src/mailman/rest/root.py @@ -38,7 +38,7 @@ from mailman.interfaces.listmanager import IListManager from mailman.interfaces.styles import IStyleManager from mailman.rest.addresses import AllAddresses, AnAddress from mailman.rest.domains import ADomain, AllDomains -from mailman.rest.helpers import etag, path_to +from mailman.rest.helpers import BadRequest, NotFound, child, etag, path_to from mailman.rest.lists import AList, AllLists from mailman.rest.members import AMember, AllMembers, FindMembers from mailman.rest.preferences import ReadOnlyPreferences @@ -46,23 +46,6 @@ from mailman.rest.templates import TemplateFinder from mailman.rest.users import AUser, AllUsers -def child(matcher=None): - def decorator(func): - if matcher is None: - func.__matcher__ = func.__name__ - else: - func.__matcher__ = matcher - return func - return decorator - - -class BadRequest: - def on_get(self, request, response): - raise falcon.HTTPError(falcon.HTTP_400, None) - -STOP = [] - - class Root: """The RESTful root resource. @@ -117,13 +100,13 @@ class TopLevel: def system(self, request, segments): """/<api>/system""" if len(segments) == 0: - return System(), STOP + return System() elif len(segments) > 1: - return BadRequest(), STOP + return BadRequest(), [] elif segments[0] == 'preferences': - return ReadOnlyPreferences(system_preferences, 'system'), STOP + return ReadOnlyPreferences(system_preferences, 'system'), [] else: - return BadRequest(), STOP + return NotFound(), [] @child() def addresses(self, request, segments): |
