summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mailman/rest/configuration.py2
-rw-r--r--src/mailman/rest/configure.zcml6
-rw-r--r--src/mailman/rest/initialize.py3
-rw-r--r--src/mailman/rest/publication.py5
-rw-r--r--src/mailman/rest/traverse.py2
5 files changed, 14 insertions, 4 deletions
diff --git a/src/mailman/rest/configuration.py b/src/mailman/rest/configuration.py
index 36a7449a1..9716f8503 100644
--- a/src/mailman/rest/configuration.py
+++ b/src/mailman/rest/configuration.py
@@ -66,7 +66,7 @@ class AdminWebServiceConfiguration:
"""See `IWebServiceConfiguration`."""
request = AdminWebServiceRequest(body_instream, environ)
request.setPublication(
- AdminWebServicePublication(AdminWebServiceRootResource())
+ AdminWebServicePublication(AdminWebServiceRootResource()))
return request
def get_request_user(self):
diff --git a/src/mailman/rest/configure.zcml b/src/mailman/rest/configure.zcml
index 236365a5c..24712b340 100644
--- a/src/mailman/rest/configure.zcml
+++ b/src/mailman/rest/configure.zcml
@@ -3,9 +3,13 @@
xmlns="http://namespaces.zope.org/zope"
xmlns:webservice="http://namespaces.canonical.com/webservice">
+ <include package="zope.component" file="meta.zcml"/>
+ <include package="zope.security" file="meta.zcml"/>
+ <include package="lazr.restful" file="meta.zcml"/>
+
<webservice:register module="mailman.interfaces.rest" />
- <adapter factory="mailman.rest.traversal.Traverse" />
+ <adapter factory="mailman.rest.traverse.Traverse" />
<adapter factory="mailman.rest.root.AdminWebServiceRootAbsoluteURL" />
diff --git a/src/mailman/rest/initialize.py b/src/mailman/rest/initialize.py
index daa0af430..ec563f17e 100644
--- a/src/mailman/rest/initialize.py
+++ b/src/mailman/rest/initialize.py
@@ -31,4 +31,5 @@ from zope.configuration import xmlconfig
def initialize():
"""Initialize the admin web service and the Zope Component Architecture."""
- xmlconfig.file('mailman', 'mailman.rest')
+ import mailman.rest
+ xmlconfig.file('configure.zcml', mailman.rest)
diff --git a/src/mailman/rest/publication.py b/src/mailman/rest/publication.py
index 54fedab76..b1f960b62 100644
--- a/src/mailman/rest/publication.py
+++ b/src/mailman/rest/publication.py
@@ -24,6 +24,9 @@ __all__ = [
]
+from lazr.restful.publisher import WebServicePublicationMixin
+
+
-class WebServiceTestPublication(WebServicePublicationMixin, TestPublication):
+class AdminWebServiceTestPublication(WebServicePublicationMixin, TestPublication):
"""Test publication that mixes in the necessary web service stuff."""
diff --git a/src/mailman/rest/traverse.py b/src/mailman/rest/traverse.py
index df0dc288c..34d747c32 100644
--- a/src/mailman/rest/traverse.py
+++ b/src/mailman/rest/traverse.py
@@ -32,6 +32,8 @@ from zope.interface import implements
from zope.publisher.interfaces import IPublishTraverse, NotFound
from zope.publisher.interfaces.browser import IDefaultBrowserLayer
+from mailman.interfaces.rest import IHasGet
+
class Traverse: