[Zope3-checkins] SVN: Zope3/branches/srichter-blow-services/src/zope/app/ Fixed a couple functional tests.

Stephan Richter srichter at cosmos.phy.tufts.edu
Wed Jan 12 17:10:51 EST 2005


Log message for revision 28818:
  Fixed a couple functional tests.
  
  Tried to remove the service terminology from the code as much as 
  possible.
  

Changed:
  U   Zope3/branches/srichter-blow-services/src/zope/app/apidoc/ifacemodule/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/apidoc/ifacemodule/menu.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/apidoc/utilitymodule/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/apidoc/viewmodule/browser.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/apidoc/zcmlmodule/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/appsetup/bootstrap.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/cache/browser/cacheable.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/component/bbb/site/browser/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/component/browser/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/component/browser/tools.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/component/browser/utility.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/component/browser/xxx_tests/test_directives.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/component/fields.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/component/interfaces/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/component/site.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/component/testing.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/container/browser/find.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/dav/tests/test_adapter.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/error/browser/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/event/tests/placelesssetup.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/exception/browser/tests/test_unauthorized.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/externaleditor/interfaces.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/folder/folder.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/form/browser/editwizard.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/fssync/fsbundle.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/sampleclass.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/test_fsbundle.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/test_fsdirective.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/http/options.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/i18n/browser/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/i18n/browser/synchronize.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/i18n/metadirectives.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/i18n/tests/test_translationdomain.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/i18n/translationdomain.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/interface/tests/test_interface.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/introspector/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/mail/interfaces.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/mail/metadirectives.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/mail/tests/test_delivery.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/mail/tests/test_event.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/module/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/onlinehelp/browser/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/pagelet/collector.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/pau/browser/tests.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/pau/principalfolder.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/pau/tests.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/presentation/browser/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/presentation/pagefolder.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/presentation/presentation.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/presentation/xxx_Tests/test_pagefolder.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/presentation/xxx_Tests/test_presentation.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/principalannotation/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/principalannotation/interfaces.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publication/ftp.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_browserpublication.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_httpfactory.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_xmlrpcpublication.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_zopepublication.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publication/zopepublication.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/fields.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/metadirectives.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/tests/support.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/publisher/xmlrpc/metaconfigure.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/pythonpage/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/pythonpage/tests.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/rdb/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/rdb/interfaces.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/rdb/metaconfigure.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/renderer/metaconfigure.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/renderer/tests/test_vocabulary.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/rotterdam/xmlobject.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/schema/browser/traversal.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/schema/metadirectives.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/schema/schema.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/schema/tests/test_interfaceutility.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/schema/vocabulary.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/schemacontent/browser/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/schemacontent/interfaces.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/security/interfaces.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/security/vocabulary.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/securitypolicy/browser/ftests.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/securitypolicy/tests/test_principalpermissionmanager.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/session/bootstrap.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/session/http.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/session/interfaces.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/testing/functional.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/testing/ztapi.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/traversing/tests/test_conveniencefunctions.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/traversing/tests/test_etc.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/workflow/definition.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/workflow/interfaces/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/browser/contentworkflow.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/browser/instance.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/instance.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/zapi/__init__.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/zapi/interfaces.py
  U   Zope3/branches/srichter-blow-services/src/zope/app/zopeappgenerations/evolve1.py

-=-
Modified: Zope3/branches/srichter-blow-services/src/zope/app/apidoc/ifacemodule/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/apidoc/ifacemodule/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/apidoc/ifacemodule/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -14,7 +14,7 @@
 """Interface Documentation Module
 
 The interface documentation module retrieves its information from the
-interface service. Therefore, currently there are no unregsitered interfaces
+site manager. Therefore, currently there are no unregsitered interfaces
 listed in the documentation. This might be good, since unregistered interfaces
 are usually private and not of interest to a general developer.
 
@@ -43,7 +43,7 @@
 
     This documentation is implemented using a simple `IReadContainer`. The
     items of the container are all the interfaces listed in the closest
-    interface service and above.
+    site manager and above.
 
     Demonstration::
 
@@ -58,8 +58,7 @@
       >>> module.get(id).getName()
       'IDocumentationModule'
 
-      Here we find an interface that is not in the interface service, but
-      exists.
+      Here we find an interface that is not in the site manager, but exists.
 
       >>> module.get('zope.app.content.interfaces.IContentType').getName()
       'IContentType'
@@ -76,14 +75,14 @@
 
     # See zope.app.apidoc.interfaces.IDocumentationModule
     description = _("""
-    All used and important interfaces are registered through the interface
-    service. While it would be possible to just list all attributes, it is
+    All used and important interfaces are registered through the site
+    manager. While it would be possible to just list all attributes, it is
     hard on the user to read such an overfull list. Therefore, interfaces that
     have partial common module paths are bound together.
 
     The documentation of an interface also provides a wide variety of
     information, including of course the declared attributes/fields and
-    methods, but also available adapters, services and utilities that provide
+    methods, but also available adapters, and utilities that provide
     this interface.
     """)
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/apidoc/ifacemodule/menu.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/apidoc/ifacemodule/menu.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/apidoc/ifacemodule/menu.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -13,7 +13,7 @@
 ##############################################################################
 """Interface Module Browser Menu (Tree)
 
-A list of interfaces from the Interface Service is pretty much unmanagable and
+A list of interfaces from the global site manager is pretty much unmanagable and
 is very confusing. Therefore it is nice to split the path of the interface, so
 that we get a deeper tree with nodes having shorter, manageable names.
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/apidoc/utilitymodule/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/apidoc/utilitymodule/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/apidoc/utilitymodule/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -108,7 +108,7 @@
 
     This documentation is implemented using a simple `IReadContainer`. The
     items of the container are all factories listed in the closest
-    factory service and above.
+    site manager and above.
 
     Demonstration::
 
@@ -131,14 +131,14 @@
 
     # See zope.app.apidoc.interfaces.IDocumentationModule
     description = _("""
-    Utilities are also nicely registered in a service, so that it is easy to
-    create a listing of available utilities. A utility is identified by the
+    Utilities are also nicely registered in a site manager, so that it is easy
+    to create a listing of available utilities. A utility is identified by the
     providing interface and a name, which can be empty. The menu provides you
     with a list of interfaces that utilities provide and as sub-items the
     names of the various implementations.
 
     Again, the documentation of a utility lists all the attributes/fields and
-    methods the utility provides and provides a link to the implementation. 
+    methods the utility provides and provides a link to the implementation.
     """)
 
     def get(self, key, default=None):

Modified: Zope3/branches/srichter-blow-services/src/zope/app/apidoc/viewmodule/browser.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/apidoc/viewmodule/browser.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/apidoc/viewmodule/browser.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -67,7 +67,7 @@
 
     def getInterfaceIds(self):
         """Get a list of the ids of all interfaces registered with the
-        interface service.
+        site manager.
 
         Example::
 
@@ -244,7 +244,7 @@
         self.show_all = request.has_key('all')
 
         sm = zapi.getSiteManager()
-        # This is okay here, since we only read from the service. Once
+        # This is okay here, since we only read from the site manager. Once
         # registration objects have sensible security declarations, we can
         # remove that call. 
         from zope.proxy import removeAllProxies

Modified: Zope3/branches/srichter-blow-services/src/zope/app/apidoc/zcmlmodule/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/apidoc/zcmlmodule/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/apidoc/zcmlmodule/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -158,7 +158,7 @@
 
     This documentation is implemented using a simple `IReadContainer`. The
     items of the container are all the interfaces listed in the closest
-    interface service and above.
+    site manager and above.
 
     Demonstration::
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/appsetup/bootstrap.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/appsetup/bootstrap.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/appsetup/bootstrap.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -29,7 +29,7 @@
 from zope.app.traversing.api import traverse
 
 def ensureObject(root_folder, object_name, object_type, object_factory):
-    """Check that there's a basic object in the service
+    """Check that there's a basic object in the site
     manager. If not, add one.
 
     Return the name abdded, if we added an object, otherwise None.
@@ -47,7 +47,7 @@
 
 def ensureUtility(root_folder, interface, utility_type,
                   utility_factory, name='', **kw):
-    """Add a utility to the top Utility Service
+    """Add a utility to the top site manager
 
     Returns the name added or ``None`` if nothing was added.
     """
@@ -64,16 +64,15 @@
 
 def addConfigureUtility(
         root_folder, interface, utility_type, utility_factory, name='', **kw):
-    """Add and configure a service to the root folder."""
+    """Add and configure a utility to the root folder."""
     utility_name = addUtility(root_folder, utility_type, utility_factory, **kw)
     configureUtility(root_folder, interface, utility_type, name, utility_name)
     return name
 
 def addUtility(root_folder, utility_type, utility_factory, **kw):
-    """ Add a Utility to the root folder's Utility Service.
+    """ Add a Utility to the root folder's site manager.
 
     The utility is added to the default package and activated.
-    This assumes that the root folder already has a Utility Service.
     """
     package = getSiteManagerDefault(root_folder)
     chooser = INameChooser(package)

Modified: Zope3/branches/srichter-blow-services/src/zope/app/cache/browser/cacheable.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/cache/browser/cacheable.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/cache/browser/cacheable.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -45,7 +45,8 @@
     def current_cache_url(self):
         "Returns the current cache provider's URL."
         cache = getCacheForObject(self.context)
-        absolute_url = zapi.getView(cache, 'absolute_url', self.request)
+        absolute_url = zapi.getMultiView((cache, self.request),
+                                         name='absolute_url')
         try:
             return absolute_url()
         except TypeError:

Modified: Zope3/branches/srichter-blow-services/src/zope/app/component/bbb/site/browser/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/component/bbb/site/browser/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/component/bbb/site/browser/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -54,8 +54,7 @@
         v = zapi.queryView(
             self.added_object, "registration.html", self.request)
         if v is not None:
-            url = str(
-                zapi.getView(self.added_object, 'absolute_url', self.request))
+            url = zapi.absoluteURL(self.added_object, self.request)
             return url + "/@@registration.html"
 
         return super(ComponentAdding, self).nextURL()
@@ -154,8 +153,7 @@
         v = zapi.queryView(
             self.added_object, "addRegistration.html", self.request)
         if v is not None:
-            url = str(
-                zapi.getView(self.added_object, 'absolute_url', self.request))
+            url = zapi.absoluteURL(self.added_object, self.request)
             return url + "/addRegistration.html"
 
         return super(UtilityAdding, self).nextURL()

Modified: Zope3/branches/srichter-blow-services/src/zope/app/component/browser/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/component/browser/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/component/browser/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -112,12 +112,10 @@
         return super(UtilityAdding, self).add(content)
 
     def nextURL(self):
-        v = zapi.queryView(
-            self.added_object, "addRegistration.html", self.request)
+        v = zapi.queryMultiAdapter(
+            (self.added_object, self.request), name="addRegistration.html")
         if v is not None:
-            url = str(
-                zapi.getAdapter((self.added_object, self.request),
-                                name='absolute_url'))
+            url = zapi.absoluteURL(self.added_object, self.request)
             return url + "/addRegistration.html"
 
         return super(UtilityAdding, self).nextURL()

Modified: Zope3/branches/srichter-blow-services/src/zope/app/component/browser/tools.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/component/browser/tools.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/component/browser/tools.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -233,9 +233,8 @@
         """See zope.app.container.interfaces.IAdding"""
         sm = self.context
         self.context = self.getSiteManagementFolder(self.activeTool)
+        self._addFilterInterface = self.activeTool.interface
         results = super(SiteManagementView, self).addingInfo()
         self.context = sm
-        for result in results:
-            factory = zapi.getUtility(IFactory, result['extra']['factory'])
-            if self.activeTool.interface in factory.getInterfaces():
-                yield result
+        self._addFilterInterface = None
+        return results

Modified: Zope3/branches/srichter-blow-services/src/zope/app/component/browser/utility.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/component/browser/utility.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/component/browser/utility.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -15,17 +15,9 @@
 
 $Id$
 """
-from zope.interface import providedBy
-from zope.security.proxy import removeSecurityProxy
-
-from zope.app import zapi
 from zope.app.component.browser.registration import AddComponentRegistration
 from zope.app.component.interfaces.registration import ActiveStatus
-from zope.app.introspector import interfaceToName
 
-from zope.app.i18n import ZopeMessageIDFactory as _
-
-
 class AddRegistration(AddComponentRegistration):
     """View for adding a utility registration.
 
@@ -39,141 +31,3 @@
         reg = super(AddRegistration, self).add(registration)
         reg.status = ActiveStatus
         return reg
-
-
-class Utilities(object):
-    # self.context is the local utility service
-
-    def update(self):
-        """Possibly delete one or more utilities.
-
-        In that case, issue a message.
-        """
-        selected = self.request.get("selected")
-        doActivate = self.request.get("Activate")
-        doDeactivate = self.request.get("Deactivate")
-        doDelete = self.request.get("Delete")
-        if not selected:
-            if doActivate or doDeactivate or doDelete:
-                return _("Please select at least one checkbox")
-            return None
-        folder = zapi.getParent(self.context)
-        todo = []
-        for key in selected:
-            name, ifacename = key.split(":", 1)
-            iface = folder.resolve(ifacename)
-            todo.append((key, name, iface))
-        if doActivate:
-            return self._activate(todo)
-        if doDeactivate:
-            return self._deactivate(todo)
-        if doDelete:
-            return self._delete(todo)
-
-    def _activate(self, todo):
-        done = []
-        for key, name, iface in todo:
-            registry = self.context.queryRegistrations(name, iface)
-            obj = registry.active()
-            if obj is None:
-                # Activate the first registered registration
-                obj = registry.info()[0]['registration']
-                obj.status = ActiveStatus
-                done.append(obj.usageSummary())
-        if done:
-            s = _("Activated: ${activated_utilities}")
-            s.mapping = {'activated_utilities': ", ".join(done)}
-            return s
-        else:
-            return _("All of the checked utilities were already active")
-
-    def _deactivate(self, todo):
-        done = []
-        for key, name, iface in todo:
-            registry = self.context.queryRegistrations(name, iface)
-            obj = registry.active()
-            if obj is not None:
-                obj.status = RegisteredStatus
-                done.append(obj.usageSummary())
-        if done:
-            s = _("Deactivated: ${deactivated_utilities}")
-            s.mapping = {'deactivated_utilities': ", ".join(done)}
-            return s
-        else:
-            return _("None of the checked utilities were active")
-
-    def _delete(self, todo):
-        errors = []
-        for key, name, iface in todo:
-            registry = self.context.queryRegistrations(name, iface)
-            assert registry
-            obj = registry.active()
-            if obj is not None:
-                errors.append(obj.usageSummary())
-                continue
-        if errors:
-            s = _("Can't delete active utility/utilites: ${utility_names}; "
-                  "use the Deactivate button to deactivate")
-            s.mapping = {'utility_names': ", ".join(errors)}
-            return s
-
-        # 1) Delete the registrations
-        services = {}
-        done = []
-        for key, name, iface in todo:
-            registry = self.context.queryRegistrations(name, iface)
-            assert registry
-            assert registry.active() is None # Phase error
-            first = True
-            for info in registry.info():
-                conf = info['registration']
-                obj = conf.component
-                done.append(conf.usageSummary())
-                path = zapi.getPath(obj)
-                services[path] = obj
-                conf.status = UnregisteredStatus
-                parent = zapi.getParent(conf)
-                name = zapi.getName(conf)
-                del parent[name]
-
-        # 2) Delete the service objects
-        for path, obj in services.items():
-            parent = zapi.getParent(obj)
-            name = zapi.getName(obj)
-            del parent[name]
-            
-        s = _("Deleted: ${utility_names}")
-        s.mapping = {'utility_names': ", ".join(done)}
-        return s
-
-    def getConfigs(self):
-        utils = self.context
-        L = []
-        for registration in utils.registrations(localOnly=True):
-            ifname = interfaceToName(self.context, registration.provided)
-            d = {"interface": ifname,
-                 "name": registration.name,
-                 "url": "",
-                 "summary": registration.usageSummary(),
-                 "configurl": ("@@configureutility.html?interface=%s&name=%s"
-                               % (ifname, registration.name)),
-                 }
-            stack = utils.queryRegistrationsFor(registration)
-            if stack.active():
-                d["url"] = str(zapi.getView(registration.component,
-                                            "absolute_url", self.request))
-            L.append((ifname, registration.name, d))
-        L.sort()
-        return [d for ifname, name, d in L]
-
-
-class ConfigureUtility(object):
-    def update(self):
-        folder = zapi.getParent(self.context)
-        iface = folder.resolve(self.request['interface'])
-        name = self.request['name']
-        iface = removeSecurityProxy(iface)
-        regstack = self.context.queryRegistrations(name, iface)
-        form = zapi.getView(regstack, "ChangeRegistrations", self.request)
-        form.update()
-        return form

Modified: Zope3/branches/srichter-blow-services/src/zope/app/component/browser/xxx_tests/test_directives.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/component/browser/xxx_tests/test_directives.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/component/browser/xxx_tests/test_directives.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -62,37 +62,6 @@
     'manageIDummyUtilityTool.html'
     """
 
-
-def _test_servicetoolDirective():
-    r"""
-    >>> from zope.app.site.browser import metaconfigure
-    >>> context = FauxContext()
-    >>> metaconfigure.servicetool(context, folder="dummy",
-    ...                    title="dummy", description="the description")
-
-    >>> iface = context.actions[0]
-    >>> iface['discriminator']
-    >>> iface['callable'].__module__
-    'zope.app.component.interface'
-    >>> iface['args'][1].getName()
-    'ILocalService'
-    >>> iface['args'][2].getName()
-    'IToolType'
-
-    >>> view = context.actions[1]
-    >>> from pprint import pprint 
-    >>> pprint([n for n in view['discriminator']])
-    ['view',
-     (<InterfaceClass zope.app.site.interfaces.ISiteManager>,
-      <InterfaceClass zope.publisher.interfaces.browser.IBrowserRequest>),
-     'manageILocalServiceTool.html',
-     <InterfaceClass zope.interface.Interface>]
-    >>> view['callable'].__module__
-    'zope.app.component.metaconfigure'
-    >>> view['args'][4]
-    'manageILocalServiceTool.html'
-    """
-
 def test_suite():
     return unittest.TestSuite((
         DocTestSuite(setUp=setUp, tearDown=tearDown),

Modified: Zope3/branches/srichter-blow-services/src/zope/app/component/fields.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/component/fields.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/component/fields.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -31,7 +31,7 @@
     r"""This field represents a layer.
 
     Besides being able to look up the layer by importing it, we also try
-    to look up the name in the utility service.
+    to look up the name in the site manager.
 
     >>> from zope.interface import directlyProvides
     >>> from zope.interface.interface import InterfaceClass
@@ -78,8 +78,8 @@
     >>> if old is not None:
     ...     sys.modules['zope.app.layers'] = old
 
-    Test 3: Get the layer from the utility service
-    ----------------------------------------------
+    Test 3: Get the layer from the site manager
+    -------------------------------------------
 
     >>> from zope.app.testing import ztapi
     >>> ztapi.provideUtility(ILayer, layer1, 'layer1')

Modified: Zope3/branches/srichter-blow-services/src/zope/app/component/interfaces/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/component/interfaces/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/component/interfaces/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -36,34 +36,18 @@
         This should only happen during testing
         """
 
-class IBindingAware(zope.interface.Interface):
-
-    def bound(name):
-        """Inform a service component that it is providing a service
-
-        Called when an immediately-containing service manager binds
-        this object to perform the named service.
-        """
-
-    def unbound(name):
-        """Inform a service component that it is no longer providing a service
-
-        Called when an immediately-containing service manager unbinds
-        this object from performing the named service.
-        """
-
 class IPossibleSite(zope.interface.Interface):
     """An object that could be a site
     """
 
     def setSiteManager(sitemanager):
-        """Sets the service manager for this object.
+        """Sets the site manager for this object.
         """
 
     def getSiteManager():
-        """Returns the service manager contained in this object.
+        """Returns the site manager contained in this object.
 
-        If there isn't a service manager, raise a component lookup.
+        If there isn't a site manager, raise a component lookup.
         """
 
 class ISite(IPossibleSite):

Modified: Zope3/branches/srichter-blow-services/src/zope/app/component/site.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/component/site.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/component/site.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -62,7 +62,7 @@
 
 
 class SiteManagerContainer(Contained):
-    """Implement access to the service manager (++etc++site).
+    """Implement access to the site manager (++etc++site).
 
     This is a mix-in that implements the IPossibleSite
     interface; for example, it is used by the Folder implementation.

Modified: Zope3/branches/srichter-blow-services/src/zope/app/component/testing.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/component/testing.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/component/testing.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -16,6 +16,7 @@
 $Id$
 """
 import zope.interface
+from zope.component import site
 from zope.component.interfaces import ISiteManager
 from zope.app import zapi
 from zope.app.testing import setup
@@ -64,7 +65,7 @@
 
     def tearDown(self):
         setup.placefulTearDown()
-        # clean up folders and placeful service managers and services too?
+        # clean up folders and placeful site managers and services too?
 
     def buildFolders(self, site=False):
         self.rootFolder = setup.buildSampleFolderTree()
@@ -101,9 +102,9 @@
                        sitemanager=None, nextsitemanager=None):
     """Provide a next utility for testing.
 
-    Since utilities must be registered in services, we really provide a next
-    utility service in which we place the next utility. If you do not pass in
-    any services, they will be created for you.
+    Since utilities must be registered in sites, we really provide a next
+    site manager in which we place the next utility. If you do not pass in
+    any site managers, they will be created for you.
 
     For a simple usage of this function, see the doc test of
     `queryNextUtility()`. Here is a demonstration that passes in the services
@@ -123,33 +124,33 @@
       >>> any1 = AnyUtility(1)
       >>> any1next = AnyUtility(2)
 
-    Now we create a special utility service that can have a location:
+    Now we create a special site manager that can have a location:
 
-      >>> UtilityService = type('UtilityService', (GlobalUtilityService,),
+      >>> SiteManager = type('SiteManager', (GlobalSiteManager,),
       ...                       {'__parent__': None})
 
-    Let's now create one utility service
+    Let's now create one site manager
 
-      >>> utils = UtilityService()
+      >>> sm = SiteManager()
 
-    and pass it in as the original utility service to the function:
+    and pass it in as the original site manager to the function:
 
-      >>> testingNextUtility(any1, any1next, IAnyUtility, service=utils)
+      >>> testingNextUtility(any1, any1next, IAnyUtility, sitemanager=sm)
       >>> any1.__parent__ is utils
       True
-      >>> utilsnext = any1next.__parent__
-      >>> utils.__parent__.next.data['Utilities'] is utilsnext
+      >>> smnext = any1next.__parent__
+      >>> sm.__parent__.next.data['Utilities'] is smnext
       True
 
-    or if we pass the current and the next utility service:
+    or if we pass the current and the next site manager:
 
-      >>> utils = UtilityService()
-      >>> utilsnext = UtilityService()
+      >>> sm = SiteManager()
+      >>> smnext = SiteManager()
       >>> testingNextUtility(any1, any1next, IAnyUtility,
-      ...                    service=utils, nextservice=utilsnext)
-      >>> any1.__parent__ is utils
+      ...                    sitemanager=sm, nextsitemanager=smnext)
+      >>> any1.__parent__ is sm
       True
-      >>> any1next.__parent__ is utilsnext
+      >>> any1next.__parent__ is smnext
       True
     
     """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/container/browser/find.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/container/browser/find.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/container/browser/find.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -17,10 +17,10 @@
 """
 __docformat__ = 'restructuredtext'
 
+from zope.app import zapi
 from zope.app.container.find import SimpleIdFindFilter
 from zope.app.container.interfaces import IFind
 from zope.app.traversing.api import getName
-from zope.component import getView
 from zope.app.publisher.browser import BrowserView
 
 # Very simple implementation right now
@@ -36,6 +36,6 @@
         request = self.request
         result = []
         for object in finder.find([SimpleIdFindFilter(ids)]):
-            url = str(getView(object, 'absolute_url', request))
+            url = zapi.absoluteURL(object, request)
             result.append({ 'id': getName(object), 'url': url})
         return result

Modified: Zope3/branches/srichter-blow-services/src/zope/app/dav/tests/test_adapter.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/dav/tests/test_adapter.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/dav/tests/test_adapter.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -65,8 +65,7 @@
 
 def test_DAVSchemaAdapter():
     """Before we can start off, we need to provide a few basic components.
-    Let's setup the necessary services and a minimum of the location
-    machinery:
+    Let's setup a minimum of the location machinery:
 
     >>> setUp()
     >>> ztapi.provideAdapter(ILocation, IPhysicallyLocatable,

Modified: Zope3/branches/srichter-blow-services/src/zope/app/error/browser/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/error/browser/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/error/browser/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -43,7 +43,7 @@
         # to handle redirection to the site error logger instead
         try:
             err = zapi.getUtility(IErrorReportingUtility)
-            url = str(zapi.getView(err, 'absolute_url', self.request))
+            url = zapi.absoluteURL(err, self.request)
             url = url + "/@@SelectedManagementView.html"
         except TypeError:
             # siterooturl = self.request.getApplicationURL()

Modified: Zope3/branches/srichter-blow-services/src/zope/app/event/tests/placelesssetup.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/event/tests/placelesssetup.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/event/tests/placelesssetup.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -15,10 +15,10 @@
 
 $Id$
 """
+from zope.interface import implements
+
 from zope.app.event.interfaces import IObjectEvent
 from zope.app.event.objectevent import objectEventNotify
-from zope.interface import implements
-from zope.component import getGlobalServices
 from zope.app.testing import ztapi
 
 events = []

Modified: Zope3/branches/srichter-blow-services/src/zope/app/exception/browser/tests/test_unauthorized.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/exception/browser/tests/test_unauthorized.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/exception/browser/tests/test_unauthorized.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -77,7 +77,7 @@
         # Make sure the response status was set
         self.assertEqual(request.response.getStatus(), 403)
 
-        # Make sure the auth service was called
+        # Make sure the auth utility was called
         self.failUnless(self.auth.request is request)
         self.assertEqual(self.auth.principal_id, 23)
 
@@ -96,7 +96,7 @@
         # Make sure the response status was set
         self.assertEqual(request.response.getStatus(), 403)
 
-        # Make sure the auth service was called
+        # Make sure the auth utility was called
         self.failUnless(self.auth.request is request)
         self.assertEqual(self.auth.principal_id, 23)
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/externaleditor/interfaces.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/externaleditor/interfaces.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/externaleditor/interfaces.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -25,16 +25,15 @@
     For an object to be externally editable there
     are three requirements:
 
-    1. It needs to declare that it implements this interface
-       to signal the presentation service that a External Edit
-       action should be available.
+    1. It needs to declare that it implements this interface to signal the
+       site manager that a External Edit action should be available.
 
     2. It needs to have an adapter for the interface
        ``zope.app.filerepresentation.interfaces.IReadFile``.
 
-    3. It needs to have a ``PUT`` view which receive the content
-       back from the External Editor client and update the
-       object, optimally using an adapter to the interface
+    3. It needs to have a ``PUT`` view which receive the content back from the
+       External Editor client and update the object, optimally using an
+       adapter to the interface
        ``zope.app.filerepresentation.interfaces.IWriteFile`` (but not
        necessarily).
     """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/folder/folder.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/folder/folder.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/folder/folder.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -111,8 +111,8 @@
 class FolderSublocations(object):
     """Get the sublocations of a folder
 
-    The subobjects of a folder include it's contents and it's service
-    manager if it is a site.
+    The subobjects of a folder include it's contents and it's site manager if
+    it is a site.
 
       >>> folder = Folder()
       >>> folder['ob1'] = Contained()

Modified: Zope3/branches/srichter-blow-services/src/zope/app/form/browser/editwizard.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/form/browser/editwizard.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/form/browser/editwizard.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -235,7 +235,8 @@
     if layer is None:
         layer = IDefaultBrowserLayer
 
-    s = zapi.getGlobalService(zapi.servicenames.Adapter)
-    s.register((for_, layer), Interface, name, class_)
+    # XXX: untested
+    sm = zapi.getGlobalSiteManager()
+    sm.provideAdapter((for_, layer), Interface, name, class_)
 
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/fssync/fsbundle.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/fssync/fsbundle.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/fssync/fsbundle.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -25,7 +25,7 @@
 from zope.fssync.metadata import Metadata
 
 BUNDLE_TYPE = "zope.app.services.bundle.Bundle"
-FOLDER_TYPE = "zope.app.services.folder.SiteManagementFolder"
+FOLDER_TYPE = "zope.app.component.site.SiteManagementFolder"
 
 
 class FSBundle(object):

Modified: Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/sampleclass.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/sampleclass.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/sampleclass.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Test SampleClass for testing File-system synchronization services
+"""Test SampleClass for testing File-system synchronization utilities
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/test_fsbundle.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/test_fsbundle.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/test_fsbundle.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -66,13 +66,13 @@
         self.add_metadata(
             self.etcdir,
             path="/++etc++site",
-            type="zope.app.services.service.ServiceManager",
-            factory="zope.app.services.service.ServiceManager")
+            type="zope.app.component.site.LocalSiteManager",
+            factory="zope.app.component.site.LocalSiteManager")
         self.add_metadata(
             os.path.join(self.etcdir, "site-folder"),
             path="/++etc++site/site-folder",
-            type="zope.app.services.folder.SiteManagementFolder",
-            factory="zope.app.services.folder.SiteManagementFolder")
+            type="zope.app.component.site.SiteManagementFolder",
+            factory="zope.app.component.site.SiteManagementFolder")
         self.metadata.flush()
 
     def add_metadata(self, name, **kw):
@@ -125,8 +125,8 @@
                         "++etc++site", "site-folder", "dummy.py")
         self.add_metadata(os.path.join(self.etcdir, "site-folder", "dummy.py"),
                           path="/++etc++site/default/sample",
-                          type="zope.app.services.module.Manager",
-                          factory="zope.app.services.module.Manager")
+                          type="zope.app.module.manager.ModuleManager",
+                          factory="zope.app.module.manager.ModuleManager")
         self.metadata.flush()
         self.assertRaises(Error, self.fsbundle.create,
                           target, "foo", "bar", source)

Modified: Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/test_fsdirective.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/test_fsdirective.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/fssync/tests/test_fsdirective.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Test FSRegistry File-system synchronization services
+"""Test FSRegistry File-system synchronization utilities
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/http/options.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/http/options.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/http/options.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -20,7 +20,7 @@
            'COPY', 'MOVE', 'LOCK', 'UNLOCK', 'TRACE']
            # 'GET', 'HEAD', 'POST' are always available. See OPTIONS() method.
 
-from zope.component import queryView
+from zope.app import zapi
 
 class OPTIONS(object):
     """`OPTIONS` handler for all objects
@@ -36,7 +36,7 @@
         # interfaces for HTTP methods. This way we can even list verbs that
         # are not in the lists above.
         for m in _allowed_methods:
-            view = queryView(self.context, m, self.request, None)
+            view = zapi.queryMultiAdapter((self.context, self.request), name=m)
             if view is not None:
                 allowed.append(m)
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/i18n/browser/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/i18n/browser/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/i18n/browser/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Translation Service Views
+"""Translation Domain Views
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/i18n/browser/synchronize.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/i18n/browser/synchronize.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/i18n/browser/synchronize.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Synchronize with Foreign Translation Services
+"""Synchronize with Foreign Translation Domains
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/i18n/metadirectives.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/i18n/metadirectives.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/i18n/metadirectives.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -20,7 +20,7 @@
 from zope.configuration.fields import Path
 
 class IRegisterTranslationsDirective(Interface):
-    """Register translations with the global Translation Service."""
+    """Register translations with the global site manager."""
 
     directory = Path(
         title=u"Directory",

Modified: Zope3/branches/srichter-blow-services/src/zope/app/i18n/tests/test_translationdomain.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/i18n/tests/test_translationdomain.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/i18n/tests/test_translationdomain.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -231,23 +231,21 @@
     def setUp(self):
         setup.placefulSetUp()
         self.rootFolder = setup.buildSampleFolderTree()
-        sm = zapi.getGlobalServices()
+        sm = zapi.getGlobalSiteManager()
         de_catalog = MessageCatalog('de', 'default')
         de_catalog.setMessage('short_greeting', 'Hallo!', 10)
 
         # Create global translation domain and add the catalog.
         domain = GlobalTranslationDomain('default')
         domain.addCatalog(de_catalog)
-        utils = sm.getService(Utilities)
-        utils.provideUtility(ITranslationDomain, domain, 'default')
+        sm.provideUtility(ITranslationDomain, domain, 'default')
 
         # Create Domain in root folder
-        mgr = setup.createServiceManager(self.rootFolder)
+        mgr = setup.createSiteManager(self.rootFolder)
         self.trans = setup.addDomain(mgr, Translation, TranslationDomain())
 
         # Create Domain in folder1
-        mgr = setup.createServiceManager(
-            zapi.traverse(self.rootFolder, 'folder1'))
+        mgr = setup.createSiteManager(zapi.traverse(self.rootFolder, 'folder1'))
         td = TranslationDomain()
         td.domain = 'default'
         de_catalog = MessageCatalog('de', 'default')

Modified: Zope3/branches/srichter-blow-services/src/zope/app/i18n/translationdomain.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/i18n/translationdomain.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/i18n/translationdomain.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -64,7 +64,7 @@
 
     def translate(self, msgid, mapping=None, context=None,
                   target_language=None, default=None):
-        """See interface `ITranslationService`"""
+        """See interface `ITranslationDomain`"""
         if target_language is None and context is not None:
             avail_langs = self.getAvailableLanguages()
             # Let's negotiate the language to translate to. :)
@@ -117,7 +117,7 @@
 
 
     def getMessage(self, msgid, language):
-        'See `IWriteTranslationService`'
+        'See `IWriteTranslationDomain`'
         for name in self._catalogs.get(language, []):
             try:
                 return self[name].getFullMessage(msgid)
@@ -126,7 +126,7 @@
         return None
 
     def getAllLanguages(self):
-        'See `IWriteTranslationService`'
+        'See `IWriteTranslationDomain`'
         languages = {}
         for key in self._catalogs.keys():
             languages[key] = None
@@ -134,12 +134,12 @@
 
 
     def getAvailableLanguages(self):
-        'See `IWriteTranslationService`'
+        'See `IWriteTranslationDomain`'
         return list(self._catalogs.keys())
 
 
     def addMessage(self, msgid, msg, language, mod_time=None):
-        'See `IWriteTranslationService`'
+        'See `IWriteTranslationDomain`'
         if not self._catalogs.has_key(language):
             if language not in self.getAllLanguages():
                 self.addLanguage(language)
@@ -150,28 +150,28 @@
 
 
     def updateMessage(self, msgid, msg, language, mod_time=None):
-        'See `IWriteTranslationService`'
+        'See `IWriteTranslationDomain`'
         catalog_name = self._catalogs[language][0]
         catalog = self[catalog_name]
         catalog.setMessage(msgid, msg, mod_time)
 
 
     def deleteMessage(self, msgid, language):
-        'See `IWriteTranslationService`'
+        'See `IWriteTranslationDomain`'
         catalog_name = self._catalogs[language][0]
         catalog = self[catalog_name]
         catalog.deleteMessage(msgid)
 
 
     def addLanguage(self, language):
-        'See `IWriteTranslationService`'
+        'See `IWriteTranslationDomain`'
         catalog = zapi.createObject(None, u'zope.app.MessageCatalog',
                                     language)
         self[language] = catalog
 
 
     def deleteLanguage(self, language):
-        'See `IWriteTranslationService`'
+        'See `IWriteTranslationDomain`'
         # Delete all catalogs from the data storage
         for name in self._catalogs[language]:
             if self.has_key(name):
@@ -181,7 +181,7 @@
 
 
     def getMessagesMapping(self, languages, foreign_messages):
-        'See `ISyncTranslationService`'
+        'See `ISyncTranslationDomain`'
         mapping = {}
         # Get all relevant local messages
         local_messages = []
@@ -203,7 +203,7 @@
 
 
     def synchronize(self, messages_mapping):
-        'See `ISyncTranslationService`'
+        'See `ISyncTranslationDomain`'
 
         for value in messages_mapping.values():
             fmsg = value[0]

Modified: Zope3/branches/srichter-blow-services/src/zope/app/interface/tests/test_interface.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/interface/tests/test_interface.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/interface/tests/test_interface.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Interface Service Tests
+"""Interfaces as Utilities Tests
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/introspector/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/introspector/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/introspector/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -18,14 +18,15 @@
 __docformat__ = 'restructuredtext'
 
 from zope.interface import Interface
-from zope.app.introspector.interfaces import IIntrospector
-from zope.component import getService, getServiceDefinitions, getServices
 from zope.interface import implements, implementedBy
 from zope.interface import directlyProvides, directlyProvidedBy, providedBy
 from zope.interface.interfaces import IInterface
 from zope.interface.interface import InterfaceClass
 from zope.security.proxy import removeSecurityProxy
+
+from zope.app import zapi
 from zope.app.component.interface import searchInterface, getInterface
+from zope.app.introspector.interfaces import IIntrospector
 
 class Introspector(object):
     """Introspects an object"""
@@ -53,8 +54,8 @@
         if path.find('++module++') != -1:
             if (self.context == Interface and
                 name != 'Interface._Interface.Interface'):
-                servicemanager = getServices()
-                adapter = IModuleService(servicemanager)
+                sm = zapi.getSiteManager()
+                # XXX: Needs fixing and tests
                 self.currentclass = adapter.resolve(name)
                 self.context = self.currentclass
             else:
@@ -136,11 +137,8 @@
 
     def getInterfaceRegistration(self):
         """Returns details for a interface configuration"""
-        service = []
-        for name, interface in getServiceDefinitions(self.context):
-            if self.context.extends(interface):
-                service.append(str(name))
-        return service
+        # XXX: Used to return a list of service names; empty now
+        return []
 
     def getDirectlyProvided(self):
         """See `IIntrospector`"""
@@ -183,8 +181,8 @@
         results = []
         interfaces = searchInterface(self.context, base=base)
         for interface in interfaces:
-            # There are things registered with the interface service
-            # that are not interfaces. Yay!
+            # There are things registered with the site manager
+            # that are not interfaces. Duh!
             if not IInterface.providedBy(interface):
                 continue
             if base in interface.__bases__ and not interface.names():

Modified: Zope3/branches/srichter-blow-services/src/zope/app/mail/interfaces.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/mail/interfaces.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/mail/interfaces.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Mail service interfaces
+"""Mailer interfaces
 
 Email sending from Zope 3 applications works as follows:
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/mail/metadirectives.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/mail/metadirectives.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/mail/metadirectives.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -23,12 +23,12 @@
 from zope.app.security.fields import Permission
 
 class IDeliveryDirective(Interface):
-    """This abstract directive describes a generic mail service
+    """This abstract directive describes a generic mail delivery utility
     registration."""
     
     name = TextLine(
         title=u"Name",
-        description=u'Specifies the Delivery name of the mail service. '\
+        description=u'Specifies the Delivery name of the mail utility. '\
                     u'The default is "Mail".',
         default=u"Mail",
         required=False)
@@ -45,7 +45,7 @@
 
 
 class IQueuedDeliveryDirective(IDeliveryDirective):
-    """This directive creates and registers a global queued mail service. It
+    """This directive creates and registers a global queued mail utility. It
     should be only called once during startup."""
 
     queuePath = Path(
@@ -55,12 +55,12 @@
 
 
 class IDirectDeliveryDirective(IDeliveryDirective):
-    """This directive creates and registers a global direct mail service. It
+    """This directive creates and registers a global direct mail utility. It
     should be only called once during startup."""
 
 
 class IMailerDirective(Interface):
-    """A generic directive registering a mailer for the mail service."""
+    """A generic directive registering a mailer for the mail utility."""
 
     name = TextLine(
         title=u"Name",

Modified: Zope3/branches/srichter-blow-services/src/zope/app/mail/tests/test_delivery.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/mail/tests/test_delivery.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/mail/tests/test_delivery.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""MailService Implementation
+"""Mail Delivery Tests
 
 Simple implementation of the MailDelivery, Mailers and MailEvents.
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/mail/tests/test_event.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/mail/tests/test_event.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/mail/tests/test_event.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,10 +11,8 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""MailService Implementation
+"""Mailer Events Tests
 
-Simple implementation of the MailService, Mailers and MailEvents.
-
 $Id$
 """
 from unittest import TestCase, TestSuite, makeSuite

Modified: Zope3/branches/srichter-blow-services/src/zope/app/module/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/module/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/module/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Manager for persistent modules associated with a service manager.
+"""Manager for persistent modules associated with a site manager.
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/onlinehelp/browser/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/onlinehelp/browser/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/onlinehelp/browser/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -76,7 +76,7 @@
         source = zapi.createObject(None,
                                    self.context.type,
                                    self.context.source)
-        view = zapi.getView(source, '', self.request)
+        view = zapi.getMutliAdapter((source, self.request))
         html = view.render()
         return html
 
@@ -94,7 +94,7 @@
         source = zapi.createObject(None,
                                    topic.type,
                                    topic.source)
-        view = zapi.getView(source, '', self.request)
+        view = zapi.getMultiAdapter((source, self.request))
         html = view.render()
         return html
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/pagelet/collector.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/pagelet/collector.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/pagelet/collector.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -112,7 +112,7 @@
 class MacroCollector(object):
     """Replaceable sample implementation of IMacroCollector.
     
-    Collect a single pagelet from the adapter service and returns 
+    Collect a single pagelet from the site manager and returns 
     a macro by name.
     Pagelet adapters are registred on context, request, view and slot
     interfaces. Use your own IMacroCollector implementation for

Modified: Zope3/branches/srichter-blow-services/src/zope/app/pau/browser/tests.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/pau/browser/tests.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/pau/browser/tests.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Pluggable Authentication Service Tests
+"""Pluggable Authentication Browser Tests
 
 $Id: tests.py 27985 2004-10-12 08:00:42Z srichter $
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/pau/principalfolder.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/pau/principalfolder.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/pau/principalfolder.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -66,7 +66,7 @@
         title=_("Prefix"),
         description=_(
         "Prefix to be added to all principal ids to assure "
-        "that all ids are unique within the authentication service"
+        "that all ids are unique within the authentication utility"
         ),
         required=False,
         missing_value=u"",

Modified: Zope3/branches/srichter-blow-services/src/zope/app/pau/tests.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/pau/tests.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/pau/tests.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Pluggable Authentication Service Tests
+"""Pluggable Authentication Tests
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/presentation/browser/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/presentation/browser/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/presentation/browser/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Presentation-service presentations
+"""Presentation-component presentations
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/presentation/pagefolder.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/presentation/pagefolder.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/presentation/pagefolder.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -198,6 +198,3 @@
     def __call__(self, name):
         return PageFolder()
 
-import sys
-sys.modules['zope.app.services.viewpackage'
-            ] = sys.modules['zope.app.presentation.pagefolder']

Modified: Zope3/branches/srichter-blow-services/src/zope/app/presentation/presentation.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/presentation/presentation.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/presentation/presentation.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Local presentation service
+"""Local presentation components
 
 $Id$
 """
@@ -37,7 +37,7 @@
 from zope.app.dependable.interfaces import IDependable, DependencyError
 
 class GlobalViewRegistration(object):
-    """Registrations representing global view service thingies."""
+    """Registrations representing global view thingies."""
 
     implements(zope.app.component.interfaces.registration.IRegistration)
 
@@ -247,7 +247,7 @@
 
     def factory(self):
         self.validate()
-        sm = zapi.getServices(self)
+        sm = zapi.getSiteManager(self)
 
         if self.factoryName:
             folder = self.__parent__.__parent__

Modified: Zope3/branches/srichter-blow-services/src/zope/app/presentation/xxx_Tests/test_pagefolder.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/presentation/xxx_Tests/test_pagefolder.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/presentation/xxx_Tests/test_pagefolder.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -32,7 +32,6 @@
 from zope.app import zapi
 from zope.app.annotation.interfaces import IAnnotations, IAnnotatable
 from zope.app.annotation.attribute import AttributeAnnotations
-from zope.app.adapter.adapter import LocalAdapterService
 
 
 class I(Interface):
@@ -45,8 +44,6 @@
 
     def setUp(self):
         sm = PlacefulSetup.setUp(self, site=True)
-        setup.addService(sm, zapi.servicenames.Adapters,
-                         LocalAdapterService(), suffix='service')        
         default = zapi.traverse(self.rootFolder, '++etc++site/default')
 
         ztapi.provideAdapter(IAnnotatable, IAnnotations, AttributeAnnotations)

Modified: Zope3/branches/srichter-blow-services/src/zope/app/presentation/xxx_Tests/test_presentation.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/presentation/xxx_Tests/test_presentation.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/presentation/xxx_Tests/test_presentation.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -76,15 +76,11 @@
     requestType = I2
     name = 'test'
     layer = 'default'
-    serviceType = zapi.servicenames.Adapters
     provided = Interface
 
     with = property(lambda self: (self.requestType, ))
     factories = property(lambda self: (self.factory, ))
 
-    def activated(self): pass
-    def deactivated(self): pass
-
     def __repr__(self):
         return 'Registration(%s)' % self.factory.__name__
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/principalannotation/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/principalannotation/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/principalannotation/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -17,9 +17,7 @@
 """
 __docformat__ = 'restructuredtext'
 
-# TODO: register utility as adapter for IAnnotations on utility activation
-# this depends on existence of LocalAdapterService, so once that's done
-# implement this.
+# TODO: register utility as adapter for IAnnotations on utility activation.
 
 from persistent import Persistent
 from persistent.dict import PersistentDict

Modified: Zope3/branches/srichter-blow-services/src/zope/app/principalannotation/interfaces.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/principalannotation/interfaces.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/principalannotation/interfaces.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Service for storing `IAnnotations` for principals.
+"""Utility for storing `IAnnotations` for principals.
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publication/ftp.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publication/ftp.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publication/ftp.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -16,12 +16,12 @@
 $Id$
 """
 __docformat__ = 'restructuredtext'
+from zope.publisher.interfaces import NotFound
+from zope.publisher.publish import mapply
 
+from zope.app import zapi
 from zope.app.publication.zopepublication import ZopePublication
 
-from zope.component import queryView
-from zope.publisher.interfaces import NotFound
-from zope.publisher.publish import mapply
 
 
 class FTPPublication(ZopePublication):
@@ -29,7 +29,7 @@
 
     def callObject(self, request, ob):
         method = request['command']
-        view = queryView(ob, method, request, self)
+        view = zapi.queryMultiAdapter((ob, request), name=method, default=self)
         if view is self:
             raise NotFound(ob, method, request)
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_browserpublication.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_browserpublication.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_browserpublication.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -223,7 +223,7 @@
         ob2 = pub.traverseName(r, ob, '@@spam')
         self.assertEqual(ob2.__class__, V)
 
-    def testTraverseNameServices(self):
+    def testTraverseNameSiteManager(self):
         pub = self.klass(self.db)
         class C(object):
             def getSiteManager(self):

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_httpfactory.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_httpfactory.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_httpfactory.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -22,8 +22,6 @@
 from zope.publisher.browser import BrowserRequest
 from zope.publisher.http import HTTPRequest
 from zope.publisher.xmlrpc import XMLRPCRequest
-from zope.component.interfaces import IAdapterService
-from zope.component.adapter import GlobalAdapterService
 from zope.component.tests.placelesssetup import PlacelessSetup
 
 from zope.app.publication.httpfactory import HTTPPublicationRequestFactory

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_xmlrpcpublication.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_xmlrpcpublication.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_xmlrpcpublication.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -113,7 +113,7 @@
         self.assertEqual(removeAllProxies(ob2).__class__, V)
         
 
-    def testTraverseNameServices(self):
+    def testTraverseNameSiteManager(self):
         pub = self.klass(self.db)
         class C(object):
             def getSiteManager(self):

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_zopepublication.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_zopepublication.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publication/tests/test_zopepublication.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -212,7 +212,7 @@
             '  Error while reporting an error to the Error Reporting utility')
 
         # Here we got a single log record, because we havdn't
-        # installed an error reporting service.  That's OK.
+        # installed an error reporting utility.  That's OK.
 
         handler.uninstall()
         self.out.seek(0)
@@ -254,7 +254,7 @@
 
         # Now, since the view was a system error view, we should have
         # a log entry for the E2 error (as well as the missing
-        # error reporting service).
+        # error reporting utility).
         self.assertEqual(
             str(handler),
             'SiteError ERROR\n'
@@ -354,7 +354,7 @@
         self.assert_(txn is not get_transaction())    
 
     def testAbortTransactionWithErrorReportingUtility(self):
-        # provide our fake error logging service
+        # provide our fake error reporting utility
         sm = zapi.getGlobalSiteManager()
         sm.provideUtility(IErrorReportingUtility, ErrorReportingUtility())
 
@@ -373,7 +373,7 @@
         new_txn_info = self.db.undoInfo()[0]
         self.assertEqual(last_txn_info, new_txn_info)
 
-        # instead, we expect a message in our logging service
+        # instead, we expect a message in our logging utility
         error_log = zapi.getUtility(IErrorReportingUtility)
         self.assertEqual(len(error_log.exceptions), 1)
         error_info, request = error_log.exceptions[0]

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publication/zopepublication.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publication/zopepublication.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publication/zopepublication.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -90,7 +90,7 @@
             return
 
         if not ISite.providedBy(ob):
-            # We won't find an authentication service here, so give up.
+            # We won't find an authentication utility here, so give up.
             return
 
         sm = removeSecurityProxy(ob).getSiteManager()
@@ -100,7 +100,7 @@
             # No auth utility here
             return
 
-        # Try to authenticate against the auth service
+        # Try to authenticate against the auth utility
         principal = auth.authenticate(request)
         if principal is None:
             principal = auth.unauthenticatedPrincipal()
@@ -186,8 +186,7 @@
             # Views are made children of their contexts, but that
             # doesn't necessarily mean that we can fully resolve the
             # path. E.g. the family tree of a resource cannot be
-            # resolved completely, as the presentation service is a
-            # dead end.
+            # resolved completely, as the site manager is a dead end.
             try:
                 path = locatable.getPath()
             except (AttributeError, TypeError):

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/fields.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/fields.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/fields.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -31,7 +31,7 @@
     r"""This fields represents a menu (item type).
 
     Besides being able to look up the menu by importing it, we also try
-    to look up the name in the utility service.
+    to look up the name in the site manager.
 
     >>> from zope.interface import directlyProvides
     >>> from zope.interface.interface import InterfaceClass
@@ -75,8 +75,8 @@
     >>> if old is not None:
     ...     sys.modules['zope.app.menus'] = old
 
-    Test 3: Get the menu from the utility service
-    ---------------------------------------------
+    Test 3: Get the menu from the Site Manager
+    ------------------------------------------
     
     >>> from zope.app.testing import ztapi
     >>> ztapi.provideUtility(IMenuItemType, menu1, 'menu1')

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/metadirectives.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/metadirectives.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/metadirectives.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -246,7 +246,7 @@
         description=u"""
         This is the name used in resource urls. Resource urls are of
         the form site/@@/resourcename, where site is the url of
-        "site", a folder with a service manager.
+        "site", a folder with a site manager.
 
         We make resource urls site-relative (as opposed to
         content-relative) so as not to defeat caches.""",
@@ -285,7 +285,7 @@
         description=u"""
         This is the name used in resource urls. Resource urls are of
         the form site/@@/resourcename, where site is the url of
-        "site", a folder with a service manager.
+        "site", a folder with a site manager.
 
         We make resource urls site-relative (as opposed to
         content-relative) so as not to defeat caches.""",
@@ -333,7 +333,7 @@
         description=u"""
         This is the name used in resource urls. Resource urls are of
         the form site/@@/resourcename, where site is the url of
-        "site", a folder with a service manager.
+        "site", a folder with a site manager.
 
         We make resource urls site-relative (as opposed to
         content-relative) so as not to defeat caches.""",

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/tests/support.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/tests/support.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publisher/browser/tests/support.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -17,8 +17,7 @@
 """
 from zope.interface import implements
 
-from zope.component.service import serviceManager
-
+from zope.app import zapi
 from zope.app.component.hooks import setSite
 from zope.app.component.interfaces import ISite
 from zope.app.traversing.interfaces import IContainmentRoot
@@ -28,7 +27,7 @@
     implements(ISite, IContainmentRoot)
 
     def getSiteManager(self):
-        return serviceManager
+        return zapi.getGlobalSiteManager()
 
 site = Site()
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/publisher/xmlrpc/metaconfigure.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/publisher/xmlrpc/metaconfigure.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/publisher/xmlrpc/metaconfigure.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -100,7 +100,7 @@
                         _context.info)
                 )
 
-    # Register the used interfaces with the interface service
+    # Register the used interfaces with the site manager
     if for_ is not None:
         _context.action(
             discriminator = None,

Modified: Zope3/branches/srichter-blow-services/src/zope/app/pythonpage/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/pythonpage/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/pythonpage/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -20,7 +20,6 @@
 from zope.app import zapi
 from zope.app.container.contained import Contained
 from zope.app.interpreter.interfaces import IInterpreter
-from zope.component.servicenames import Utilities
 from zope.interface import Interface, implements
 from zope.schema import SourceText, TextLine
 from zope.app.i18n import ZopeMessageIDFactory as _

Modified: Zope3/branches/srichter-blow-services/src/zope/app/pythonpage/tests.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/pythonpage/tests.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/pythonpage/tests.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -25,7 +25,6 @@
 from zope.app.location.traversing import LocationPhysicallyLocatable
 from zope.app.testing import placelesssetup, ztapi
 from zope.app.traversing.adapters import RootPhysicallyLocatable
-from zope.component.servicenames import Utilities
 from zope.interface import implements
 from zope.testing.doctestunit import DocTestSuite
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/rdb/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/rdb/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/rdb/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -40,10 +40,8 @@
 from zope.app.rdb.interfaces import ISQLCommand
 from zope.app.rdb.interfaces import IManageableZopeDatabaseAdapter
 from zope.app.rdb.interfaces import IZopeDatabaseAdapter
-from zope.app.rdb.interfaces import IGlobalConnectionService
 
 
-
 def sqlquote(x):
     """
     Escape data suitable for inclusion in generated ANSI SQL92 code for

Modified: Zope3/branches/srichter-blow-services/src/zope/app/rdb/interfaces.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/rdb/interfaces.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/rdb/interfaces.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -306,26 +306,6 @@
         """
 
 
-class IConnectionService(Interface):
-
-    def getConnection(name):
-        """Returns a connection object by name."""
-
-    def queryConnection(name, default):
-        """Returns a connection object by name or default."""
-
-    def getAvailableConnections():
-        """Returns the connection names available from this connection
-        service."""
-
-
-class IGlobalConnectionService(IConnectionService):
-    """A global connection service"""
-
-    def provideConnection(name, adapter, dsn):
-        """ Register a connection instance for site-wide use """
-
-
 class IDBIConnection(Interface):
     """A DB-API based Interface """
 
@@ -375,10 +355,8 @@
 
 class IZopeDatabaseAdapter(IDBITypeInfo):
     """Interface for persistent object that returns
-    volatile IZopeConnections.
+    volatile IZopeConnections."""
 
-    This object is internal to the connection service."""
-
     def isConnected():
         """Check whether the Zope Connection is actually connected to the
         database."""

Modified: Zope3/branches/srichter-blow-services/src/zope/app/rdb/metaconfigure.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/rdb/metaconfigure.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/rdb/metaconfigure.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -29,7 +29,7 @@
 def provideConnection(name, connection):
     """ Registers a database connection
     
-     Uses the Utility Service for registering
+    Uses the global site manager for registering the connection
     """
     gsm = zapi.getGlobalSiteManager()
     gsm.provideUtility(IZopeDatabaseAdapter, connection, name)

Modified: Zope3/branches/srichter-blow-services/src/zope/app/renderer/metaconfigure.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/renderer/metaconfigure.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/renderer/metaconfigure.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -41,10 +41,11 @@
                     u"view on the source.",
         required=True)
 
+# XXX: Does not seem to be tested
 def renderer(_context, sourceType, for_, factory):
     _context.action(
         discriminator = ('view', sourceType, u'', for_, 'default'),
         callable = handler,
-        args = (zapi.servicenames.Adapter, 'register',
+        args = ('provideAdapter',
                 (sourceType,), for_, u'', factory, 'default')
         )

Modified: Zope3/branches/srichter-blow-services/src/zope/app/renderer/tests/test_vocabulary.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/renderer/tests/test_vocabulary.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/renderer/tests/test_vocabulary.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Tests for Global Wiki Source Type Service.
+"""Tests for Renderer Vocabulary.
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/rotterdam/xmlobject.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/rotterdam/xmlobject.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/rotterdam/xmlobject.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Service manager interfaces
+"""Support classes for XML-based tree
 
 $Id$
 """
@@ -70,7 +70,7 @@
 
         keys = list(container.keys())
 
-        # include the service manager
+        # include the site manager
         keys.append('++etc++site')
 
         for name in keys:
@@ -123,7 +123,7 @@
             else:
                 keys = []
 
-            # include the service manager
+            # include the site manager
             keys.append('++etc++site')
 
             for name in keys:

Modified: Zope3/branches/srichter-blow-services/src/zope/app/schema/browser/traversal.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/schema/browser/traversal.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/schema/browser/traversal.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -14,16 +14,14 @@
 $Id$
 """
 from zope.interface import implements
-from zope.component import getDefaultViewName, queryView
 from zope.publisher.interfaces.browser import IBrowserPublisher
-from zope.app.schema.interfaces import IMutableSchema
-
-from zope.app.traversing.interfaces import TraversalError
 from zope.publisher.interfaces import NotFound
 
-from zope.app.traversing.interfaces import ITraversable
-from zope.app.traversing.namespace import UnexpectedParameters
+from zope.app import zapi
 from zope.app.location.interfaces import ILocation
+from zope.app.schema.interfaces import IMutableSchema
+from zope.app.traversing.interfaces import TraversalError, ITraversable
+from zope.app.traversing.namespace import UnexpectedParameters
 
 _marker = object()
 
@@ -40,7 +38,7 @@
 
         if subob is None:
 
-            view = queryView(self.context, name, request)
+            view = zapi.queryMultiAdapter((self.context, request), name=name)
             if view is not None:
                 if ILocation.providedBy(view):
                     view.__parent__ = self.context
@@ -54,7 +52,7 @@
 
     def browserDefault(self, request):
         c = self.context
-        view_name = getDefaultViewName(c, request)
+        view_name = zapi.getDefaultViewName(c, request)
         view_uri = "@@%s" % view_name
         return c, (view_uri,)
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/schema/metadirectives.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/schema/metadirectives.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/schema/metadirectives.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -22,7 +22,7 @@
 class IVocabularyDirective(Interface):
     '''Define a named vocabulary.
 
-    This associates a vocabulary name in the global vocabulary service with a
+    This associates a vocabulary name in the global vocabulary registry with a
     factory.  Each name may only be defined once.
 
     Additional keyword arguments may be passed to the factory by adding

Modified: Zope3/branches/srichter-blow-services/src/zope/app/schema/schema.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/schema/schema.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/schema/schema.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -266,8 +266,7 @@
 
     def nextURL(self):
         """See zope.app.container.interfaces.IAdding"""
-        return (str(zapi.getView(self.context, "absolute_url", self.request))
-                + '/@@editschema.html')
+        return zapi.absoluteURL(self.context, self.request)+'/@@editschema.html'
 
 
 class SchemaRegistration(UtilityRegistration):

Modified: Zope3/branches/srichter-blow-services/src/zope/app/schema/tests/test_interfaceutility.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/schema/tests/test_interfaceutility.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/schema/tests/test_interfaceutility.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Utility service tests
+"""Interfaces as Utilities tests
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/schema/vocabulary.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/schema/vocabulary.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/schema/vocabulary.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -42,12 +42,12 @@
         return factory(context)
 
 def _clear():
-    """Re-initialize the vocabulary service."""
+    """Re-initialize the vocabulary registry."""
     # This should normally only be needed by the testing framework,
     # but is also used for module initialization.
-    global vocabularyService
+    global vocabularyRegistry
     vocabulary._clear()
-    vocabularyService = vocabulary.getVocabularyRegistry()
+    vocabularyRegistry = vocabulary.getVocabularyRegistry()
     vocabulary._clear()
     vocabulary.setVocabularyRegistry(ZopeVocabularyRegistry())
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/schemacontent/browser/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/schemacontent/browser/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/schemacontent/browser/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -23,7 +23,6 @@
 from zope.app.form.utility import setUpWidget
 from zope.app.form.interfaces import IInputWidget
 from zope.app.schemacontent.interfaces import IContentComponentDefinition
-from zope.app.servicenames import Utilities
 from zope.app.schemacontent.content import ContentComponentInstance
 from zope.component.exceptions import ComponentLookupError
 from zope.interface import implements
@@ -141,9 +140,8 @@
             type_name, content_name = name.split("=", 1)
             self.context.contentName = content_name
 
-        utilities = zapi.getService(Utilities)
         matching = [util
-                    for name, util in utilities.getUtilitiesFor(
+                    for name, util in zapi.getUtilitiesFor(
                                                   IContentComponentDefinition)
                     if name == type_name]
             

Modified: Zope3/branches/srichter-blow-services/src/zope/app/schemacontent/interfaces.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/schemacontent/interfaces.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/schemacontent/interfaces.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -49,10 +49,10 @@
 
     create = Bool(
         title=_("Create Menu"),
-        description=_("If set to True, the system will create a local Browser "
-                      "Menu Service and local Browser Menu for you. If this "
+        description=_("If set to True, the system will create a local Browser"
+                      "local browser menu item for you. If this "
                       "option is set to False, the system will try to find "
-                      "the next local browser menu service that has a menu "
+                      "the next site manager that has a menu "
                       "with the specifed id. If no menu was found or the menu "
                       "is a global menu, then an error is created."),
         default=True,

Modified: Zope3/branches/srichter-blow-services/src/zope/app/security/interfaces.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/security/interfaces.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/security/interfaces.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -40,15 +40,15 @@
     issuing challenges or providing login interfaces.
 
     `IAuthenticationUtility` objects are used to implement authentication
-    utilities. Because they implement services, they are expected to
-    collaborate with services in other contexts. Client code doesn't search a
-    context and call multiple services. Instead, client code will call the
-    most specific service in a place and rely on the service to delegate to
-    other services as necessary.
+    utilities. Because they implement utilities, they are expected to
+    collaborate with utilities in other contexts. Client code doesn't search a
+    context and call multiple utilities. Instead, client code will call the
+    most specific utility in a place and rely on the utility to delegate to
+    other utilities as necessary.
 
-    The interface doesn't include methods for data management. Services may
+    The interface doesn't include methods for data management. Utilities may
     use external data and not allow management in Zope. Simularly, the data to
-    be managed may vary with different implementations of a service.
+    be managed may vary with different implementations of a utility.
     """
 
     def authenticate(request):
@@ -96,10 +96,10 @@
         as issuing an HTTP authentication challenge or
         displaying a login interface.
 
-        Note that the authentication service nearest to the
+        Note that the authentication utility nearest to the
         requested resource is called. It is up to
-        authentication service implementations to
-        collaborate with services higher in the object
+        authentication utility implementations to
+        collaborate with utilities higher in the object
         hierarchy.
 
         If no principal has been identified, id will be
@@ -113,9 +113,9 @@
         id. A PrincipalLookupError is raised if the principal cannot be
         found.
 
-        Note that the authentication service nearest to the requested
-        resource is called. It is up to authentication service
-        implementations to collaborate with services higher in the
+        Note that the authentication utility nearest to the requested
+        resource is called. It is up to authentication utility
+        implementations to collaborate with utilities higher in the
         object hierarchy.
         """
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/security/vocabulary.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/security/vocabulary.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/security/vocabulary.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -119,7 +119,7 @@
         principal. Whether the utility consults other utilities to give an
         answer is up to the utility itself.
 
-        First we need to create a dummy service that will return a user, if
+        First we need to create a dummy utility that will return a user, if
         the id is 'bob'.
         
         >>> class DummyUtility:

Modified: Zope3/branches/srichter-blow-services/src/zope/app/securitypolicy/browser/ftests.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/securitypolicy/browser/ftests.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/securitypolicy/browser/ftests.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -28,7 +28,7 @@
         body = response.getBody()
         self.assert_('Permissions' in body)
         self.assert_('Manage Content' in body)
-        self.assert_('Manage Services' in body)
+        self.assert_('Manage Site' in body)
         self.assert_('Roles' in body)
         self.assert_('Site Manager' in body)
         self.assert_('Site Member' in body)

Modified: Zope3/branches/srichter-blow-services/src/zope/app/securitypolicy/tests/test_principalpermissionmanager.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/securitypolicy/tests/test_principalpermissionmanager.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/securitypolicy/tests/test_principalpermissionmanager.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -25,7 +25,6 @@
 from zope.app.security.interfaces import IAuthenticationUtility
 from zope.app.security.permission import Permission
 
-from zope.app.servicenames import Authentication
 from zope.app.security.settings import Allow, Deny, Unset
 from zope.app.security.principalregistry import principalRegistry
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/session/bootstrap.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/session/bootstrap.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/session/bootstrap.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -15,7 +15,7 @@
 
 This module contains code to bootstrap a Zope3 instance.  For example
 it makes sure a root folder exists and creates and configures some
-essential services.
+essential utilities.
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/session/http.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/session/http.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/session/http.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -71,7 +71,7 @@
             )
 
 class CookieClientIdManager(Persistent):
-    """Session service implemented using cookies."""
+    """Session utility implemented using cookies."""
 
     implements(IClientIdManager, ICookieClientIdManager,
                ILocalUtility, IAttributeAnnotatable,
@@ -254,10 +254,10 @@
         # TODO: Currently, the path is the ApplicationURL. This is reasonable,
         #     and will be adequate for most purposes.
         #     A better path to use would be that of the folder that contains
-        #     the service-manager this service is registered within. However,
+        #     the site manager this service is registered within. However,
         #     that would be expensive to look up on each request, and would
         #     have to be altered to take virtual hosting into account.
-        #     Seeing as this service instance has a unique namespace for its
+        #     Seeing as this utility instance has a unique namespace for its
         #     cookie, using ApplicationURL shouldn't be a problem.
 
         if self.cookieLifetime is not None:

Modified: Zope3/branches/srichter-blow-services/src/zope/app/session/interfaces.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/session/interfaces.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/session/interfaces.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Interfaces for session service.
+"""Interfaces for session utility.
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/testing/functional.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/testing/functional.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/testing/functional.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -229,11 +229,11 @@
         super(BrowserTestCase, self).tearDown()
 
     def setSite(self, site):
-        """Set the site which will be used to look up local services"""
+        """Set the site which will be used to look up local components"""
         setSite(site)
 
     def getSite(self):
-        """Returns the site which is used to look up local services"""
+        """Returns the site which is used to look up local components"""
         return getSite()
 
     def makeRequest(self, path='', basic=None, form=None, env={},

Modified: Zope3/branches/srichter-blow-services/src/zope/app/testing/ztapi.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/testing/ztapi.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/testing/ztapi.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -93,6 +93,7 @@
     provideAdapter(None, ITraversable, handler, name=name)
     provideView(None, None, ITraversable, name, handler)
 
+# XXX: Deprecate
 def provideService(name, service, interface=None):
     services = zapi.getGlobalServices()
     if interface is not None:

Modified: Zope3/branches/srichter-blow-services/src/zope/app/traversing/tests/test_conveniencefunctions.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/traversing/tests/test_conveniencefunctions.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/traversing/tests/test_conveniencefunctions.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -20,7 +20,6 @@
 from zope.interface import directlyProvides
 from zope.app.component.testing import PlacefulSetup
 from zope.app.traversing.adapters import Traverser
-from zope.app.servicenames import Adapters
 from zope.app.traversing.interfaces import ITraverser, ITraversable
 from zope.app.traversing.adapters import DefaultTraversable
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/traversing/tests/test_etc.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/traversing/tests/test_etc.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/traversing/tests/test_etc.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -29,7 +29,7 @@
             etc(applicationControllerRoot).traverse('process', ()),
             applicationController)
 
-    def testServices(self):
+    def testSiteManager(self):
         from zope.app.traversing.namespace import etc
         class C(object):
             def getSiteManager(self): return 42

Modified: Zope3/branches/srichter-blow-services/src/zope/app/workflow/definition.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/workflow/definition.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/workflow/definition.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -25,7 +25,6 @@
 
 from zope.app import zapi
 from zope.app.container.contained import Contained, setitem, uncontained
-from zope.app.servicenames import Utilities
 from zope.app.workflow.interfaces import IProcessDefinitionElementContainer
 from zope.app.workflow.interfaces import IProcessDefinition
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/workflow/interfaces/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/workflow/interfaces/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/workflow/interfaces/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -11,7 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Interfaces for workflow service, definition and instance.
+"""Interfaces for workflow components, definition and instance.
 
 $Id$
 """

Modified: Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/browser/contentworkflow.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/browser/contentworkflow.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/browser/contentworkflow.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -20,7 +20,6 @@
 from zope.app.component.interface import nameToInterface
 from zope.app.i18n import ZopeMessageIDFactory as _
 from zope.app.form.utility import setUpWidgets
-from zope.app.servicenames import Utilities
 from zope.app.form.interfaces import IInputWidget
 from zope.interface import Interface
 from zope.app.publisher.browser import BrowserView

Modified: Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/browser/instance.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/browser/instance.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/browser/instance.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -26,7 +26,6 @@
 from zope.app.i18n import ZopeMessageIDFactory as _
 from zope.app.dublincore.interfaces import IZopeDublinCore
 from zope.app.publisher.browser import BrowserView
-from zope.app.servicenames import Utilities
 
 from zope.app.workflow.interfaces import IProcessDefinition
 from zope.app.workflow.interfaces import IProcessInstanceContainer
@@ -123,8 +122,7 @@
 
 
     def _getProcessDefinition(self, processInstance):
-        utils = zapi.getService(Utilities)
-        return utils.getUtility(IProcessDefinition,
+        return zapi.getUtility(IProcessDefinition,
                                 processInstance.processDefinitionName)
 
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/instance.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/instance.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/workflow/stateful/instance.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -215,7 +215,7 @@
         self._checkAndFireAuto(clean_pd)
 
     def getProcessDefinition(self):
-        """Get the ProcessDefinition object from WorkflowService."""
+        """Get the ProcessDefinition object from Workflow Utility."""
         return zapi.getUtility(IProcessDefinition, self.processDefinitionName)
 
     def _getContext(self):
@@ -273,7 +273,8 @@
         if not script:
             return True
         if isinstance(script, (str, unicode)):
-            sm = zapi.getServices(self)
+            sm = zapi.getSiteManager(self)
+            # XXX: Code broken; not test
             script = sm.resolve(script)
         return script(contexts)
 

Modified: Zope3/branches/srichter-blow-services/src/zope/app/zapi/__init__.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/zapi/__init__.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/zapi/__init__.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -22,7 +22,9 @@
 
 from zope.security.proxy import isinstance
 
+# XXX: Deprecate
 from zope.app import servicenames
+
 from zope.app.interface import queryType
 
 moduleProvides(IZAPI)

Modified: Zope3/branches/srichter-blow-services/src/zope/app/zapi/interfaces.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/zapi/interfaces.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/zapi/interfaces.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -70,6 +70,7 @@
         which would return IImage.
         """
         
+    # XXX: Deprecate
     servicenames = Attribute("Service Names")
 
     def isinstance(object, cls):
@@ -84,6 +85,6 @@
         """
 
     def principals():
-        """Return the authentication service (someday utility)
+        """Return the authentication utility
         """
         

Modified: Zope3/branches/srichter-blow-services/src/zope/app/zopeappgenerations/evolve1.py
===================================================================
--- Zope3/branches/srichter-blow-services/src/zope/app/zopeappgenerations/evolve1.py	2005-01-12 22:09:59 UTC (rev 28817)
+++ Zope3/branches/srichter-blow-services/src/zope/app/zopeappgenerations/evolve1.py	2005-01-12 22:10:50 UTC (rev 28818)
@@ -18,12 +18,10 @@
 __docformat__ = "reStructuredText"
 from zope.app import zapi
 from zope.app.error.error import ErrorReportingUtility
-from zope.app.error.interfaces import IErrorReportingService
 from zope.app.error.interfaces import IErrorReportingUtility
 from zope.app.generations.utility import findObjectsProviding
 from zope.app.principalannotation import PrincipalAnnotationUtility
 from zope.app.principalannotation.interfaces import IPrincipalAnnotationUtility
-from zope.app.principalannotation.interfaces import IPrincipalAnnotationService
 from zope.app.registration.interfaces import IComponentRegistration
 from zope.app.registration.interfaces import ActiveStatus, UnregisteredStatus
 from zope.app.site.interfaces import ISite, IServiceRegistration



More information about the Zope3-Checkins mailing list