summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTres Seaver <tseaver@palladion.com>2016-12-06 07:47:46 -0500
committerGitHub <noreply@github.com>2016-12-06 07:47:46 -0500
commit310b71c551e34aed7f2fd83c13c9feb531ad5701 (patch)
tree8b5a442e53a3e9c2bc5274a578d171f39e23d7e6
parentbad08b82b9758e8b5092a57c9de3b678c5634631 (diff)
parent12371b90a6005a3a7874e13e40e3d2f820ee468c (diff)
downloadzope-interface-310b71c551e34aed7f2fd83c13c9feb531ad5701.tar.gz
Merge pull request #66 from zopefoundation/41-document-adapter-registry-api
Document API for adapter registry.
-rw-r--r--docs/adapter.rst2
-rw-r--r--docs/api.rst19
-rw-r--r--src/zope/interface/adapter.py4
3 files changed, 25 insertions, 0 deletions
diff --git a/docs/adapter.rst b/docs/adapter.rst
index c5c65e5..b1caee3 100644
--- a/docs/adapter.rst
+++ b/docs/adapter.rst
@@ -1,3 +1,5 @@
+.. _adapter-registry:
+
================
Adapter Registry
================
diff --git a/docs/api.rst b/docs/api.rst
index c51624f..2ff65a1 100644
--- a/docs/api.rst
+++ b/docs/api.rst
@@ -1059,3 +1059,22 @@ For example:
When registering an adapter or utility component, the registry looks for the
``__component_name__`` attribute and uses it, if no name was explicitly
provided.
+
+
+:class:`zope.interface.adapter.AdapterRegistry`
+-----------------------------------------------
+
+API
++++
+
+The adapter registry's API is defined by
+:class:`zope.interface.interfaces.IAdapterRegistry`:
+
+.. autointerface:: zope.interface.adapter.IAdapterRegistry
+ :members:
+ :member-order: bysource
+
+Usage
++++++
+
+See :ref:`adapter-registry`.
diff --git a/src/zope/interface/adapter.py b/src/zope/interface/adapter.py
index db2a49b..f8fdb00 100644
--- a/src/zope/interface/adapter.py
+++ b/src/zope/interface/adapter.py
@@ -15,9 +15,11 @@
"""
import weakref
+from zope.interface import implementer
from zope.interface import providedBy
from zope.interface import Interface
from zope.interface import ro
+from zope.interface.interfaces import IAdapterRegistry
from zope.interface._compat import _normalize_name
@@ -605,6 +607,7 @@ class AdapterLookupBase(object):
class AdapterLookup(AdapterLookupBase, LookupBase):
pass
+@implementer(IAdapterRegistry)
class AdapterRegistry(BaseAdapterRegistry):
LookupClass = AdapterLookup
@@ -644,6 +647,7 @@ class AdapterRegistry(BaseAdapterRegistry):
class VerifyingAdapterLookup(AdapterLookupBase, VerifyingBase):
pass
+@implementer(IAdapterRegistry)
class VerifyingAdapterRegistry(BaseAdapterRegistry):
LookupClass = VerifyingAdapterLookup