summaryrefslogtreecommitdiff
path: root/src/mailman/rest/adapters.py
diff options
context:
space:
mode:
authorBarry Warsaw2009-06-29 21:30:04 -0400
committerBarry Warsaw2009-06-29 21:30:04 -0400
commit853060fa5fd453b745b09d991b8053c2024cb079 (patch)
tree727e04460a2b2314d3d2d64048a7a9bf29131d25 /src/mailman/rest/adapters.py
parentcdc95447d97c43f93e8c4b282f150228a5620703 (diff)
downloadmailman-853060fa5fd453b745b09d991b8053c2024cb079.tar.gz
mailman-853060fa5fd453b745b09d991b8053c2024cb079.tar.zst
mailman-853060fa5fd453b745b09d991b8053c2024cb079.zip
More REST server updates.
* Get rid of in-Python adapter registration in favor of ZCML. Eventually, I'd like to get rid of the ZCML. * Set the view_permission to None, but it's still not right. * Add IDomainSet and an adapter from Configuration to IDomainSet.
Diffstat (limited to '')
-rw-r--r--src/mailman/rest/adapters.py47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/mailman/rest/adapters.py b/src/mailman/rest/adapters.py
new file mode 100644
index 000000000..611e1f976
--- /dev/null
+++ b/src/mailman/rest/adapters.py
@@ -0,0 +1,47 @@
+# Copyright (C) 2009 by the Free Software Foundation, Inc.
+#
+# This file is part of GNU Mailman.
+#
+# GNU Mailman is free software: you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free
+# Software Foundation, either version 3 of the License, or (at your option)
+# any later version.
+#
+# GNU Mailman is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# GNU Mailman. If not, see <http://www.gnu.org/licenses/>.
+
+"""Module stuff."""
+
+from __future__ import absolute_import, unicode_literals
+
+__metaclass__ = type
+__all__ = [
+ 'DomainSet',
+ ]
+
+
+from zope.interface import implements
+
+from mailman.interfaces.domain import IDomainSet
+
+
+
+class DomainSet:
+ """Sets of known domains."""
+
+ implements(IDomainSet)
+
+ __name__ = 'domains'
+
+ def __init__(self, config):
+ self._config = config
+
+ def __iter__(self):
+ """See `IDomainSet`."""
+ domains = self._config.domains
+ return [domains[domain] for domain in sorted(domains)]