[Zope-Checkins] CVS: Zope3/lib/python/Zope/App/OFS/ServiceManager/Views/Browser - Adder.py:1.1.2.3 Bindings.py:1.1.2.5
Gary Poster
garyposter@earthlink.net
Mon, 22 Apr 2002 15:03:52 -0400
Update of /cvs-repository/Zope3/lib/python/Zope/App/OFS/ServiceManager/Views/Browser
In directory cvs.zope.org:/tmp/cvs-serv31509/App/OFS/ServiceManager/Views/Browser
Modified Files:
Tag: Zope-3x-branch
Adder.py Bindings.py
Log Message:
1. As per ZopeTop discussion, moved Addable out of ZMI into the Services folder, and turned it into a true service (this involved a lot of small changes, particularly in the folders and a number of tests) and gave it some hooks
2. used SteveA's ContextWrapper.ContextMethod to make the ServiceManager and Services placefully look up to parent placeful equivalents
3. Made Event into a more standard service, and gave it some hooks
4. Built the beginning of a placeful EventService (will need tests, and views, and EventChannels, and more meat; just wanted to check this in for now)
5. made it so you can't add an item to a folder with a blank string id, and updated the folder interface
6. some typos fixed here and there
7. a few more tests here and there
I'm checking this in then checking it out again to check my work; also tagged previous version as gary-service_update.
=== Zope3/lib/python/Zope/App/OFS/ServiceManager/Views/Browser/Adder.py 1.1.2.2 => 1.1.2.3 ===
from Zope.App.OFS.Container.Views.Browser.Adder import ContainerAdder
-from Zope.App.ZMI.Addable import ServiceAddables
+from Zope.App.OFS.Services.AddableService import getAddableServices
class Adder(ContainerAdder):
"""Specialize addable list for service implemenations.
"""
def _listAddables(self):
# Override to look up from the service class registry.
- return ServiceAddables.getAddables( self.getContext() )
+ return getAddableServices(self.getContext())
=== Zope3/lib/python/Zope/App/OFS/ServiceManager/Views/Browser/Bindings.py 1.1.2.4 => 1.1.2.5 ===
from Zope.Publisher.Browser.AttributePublisher import AttributePublisher
from Zope.ComponentArchitecture.ContextDependent import ContextDependent
+from Zope.ComponentArchitecture.Exceptions import ComponentLookupError
class Bindings(AttributePublisher, ContextDependent):
@@ -39,9 +40,11 @@
bound = context.getBoundService(serviceName)
if bound is None:
- acquired = context.getService(serviceName)
- if acquired:
+ try:
+ acquired = context.getService(serviceName)
acquiredOrNone = 'Acquired'
+ except ComponentLookupError:
+ pass
bound = acquiredOrNone
availableServices.append(acquiredOrNone)