[Zope3-checkins] CVS: Zope3/src/zope/app/interfaces/services - interfaces.py:1.14.2.2
Guido van Rossum
guido@python.org
Mon, 3 Mar 2003 13:29:00 -0500
Update of /cvs-repository/Zope3/src/zope/app/interfaces/services
In directory cvs.zope.org:/tmp/cvs-serv22756/src/zope/app/interfaces/services
Modified Files:
Tag: use-config-branch
interfaces.py
Log Message:
Get rid of IService. Instead, add ILocalService, which only applies
(as the name implies) to local services. Fewer files touched.
=== Zope3/src/zope/app/interfaces/services/interfaces.py 1.14.2.1 => 1.14.2.2 ===
--- Zope3/src/zope/app/interfaces/services/interfaces.py:1.14.2.1 Wed Feb 26 16:19:31 2003
+++ Zope3/src/zope/app/interfaces/services/interfaces.py Mon Mar 3 13:28:27 2003
@@ -22,13 +22,28 @@
from zope.schema import BytesLine, TextLine, Text
from zope.interface import Interface
from zope.app.services.field import ComponentPath
-from zope.component.interfaces import IPresentation, IService
+from zope.component.interfaces import IPresentation
from zope.app.interfaces.container import IDeleteNotifiable
-from zope.app.interfaces.services.configuration import IAttributeUseConfigurable
+from zope.app.interfaces.services.configuration \
+ import IUseConfigurable, IAttributeUseConfigurable
-class ISimpleService(IService, IAttributeUseConfigurable):
- """Most services should implement this."""
+class ILocalService(IUseConfigurable):
+ """A local service isn't a local service if it doesn't implement this.
+
+ The contract of a local service includes collaboration with
+ services above it. A local service should also implement
+ IUseConfigurable (which implies that it is adaptable to
+ IUseConfiguration). Implementing ILocalService implies this.
+ """
+
+
+class ISimpleService(ILocalService, IAttributeUseConfigurable):
+ """Most local services should implement this instead of ILocalService.
+
+ It implies a specific way of implementing IUseConfigurable,
+ by subclassing IAttributeUseConfigurable.
+ """
class IAdapterConfigurationInfo(Interface):