[Zope-Checkins] CVS: Zope3/lib/python/Zope/App/Service - ServiceManagerAdder.py:1.1.2.1

Tres Seaver tseaver@zope.com
Sat, 9 Feb 2002 09:40:12 -0500


Update of /cvs-repository/Zope3/lib/python/Zope/App/Service
In directory cvs.zope.org:/tmp/cvs-serv21198/App/Service

Added Files:
      Tag: Zope-3x-branch
	ServiceManagerAdder.py 
Log Message:


 - Add adder for ServiceManagers, including refactoring FolderAdder
   to indirect lookup of addables through overridable method.


=== Added File Zope3/lib/python/Zope/App/Service/ServiceManagerAdder.py ===
##############################################################################
#
# Copyright (c) 2001 Zope Corporation and Contributors. All Rights Reserved.
# 
# This software is subject to the provisions of the Zope Public License,
# Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE
# 
##############################################################################
"""

Revision information: $Id: ServiceManagerAdder.py,v 1.1.2.1 2002/02/09 14:40:12 tseaver Exp $
"""

from Zope.App.OFS.Folder.FolderAdder import FolderAdder

class ServiceManagerAdder( FolderAdder ): # Icky! SM derives from Folder, too!
    """
        Specialize addable list for service implemenations.
    """
    def _listAddables( self ):
        """
            Override to look up from the service class registry.
        """
        from Zope.App.ZMI.Addable import serviceAddables
        return serviceAddables.getAddables( self._folder )