############################################################################## # # Copyright (c) 2002 Zope Corporation and Contributors. All Rights Reserved. # # This software is subject to the provisions of the Zope Public License, # Version 2.1 (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 # ############################################################################## class ObjectManager: """ An ObjectManager contains other Zope objects. The contained objects are Object Manager Items. To create an object inside an object manager use 'manage_addProduct':: self.manage_addProduct['OFSP'].manage_addFolder(id, title) In DTML this would be:: These examples create a new Folder inside the current ObjectManager. 'manage_addProduct' is a mapping that provides access to product constructor methods. It is indexed by product id. Constructor methods are registered during product initialization and should be documented in the API docs for each addable object. """ def objectIds(type=None): """ This method returns a list of the ids of the contained objects. Optionally, you can pass an argument specifying what object meta_type(es) to restrict the results to. This argument can be a string specifying one meta_type, or it can be a list of strings to specify many. Example:: There are no sub-objects. This DTML code will display all the ids of the objects contained in the current Object Manager. Permission -- 'Access contents information' """ def objectValues(type=None): """ This method returns a sequence of contained objects. Like objectItems and objectIds, it accepts one argument, either a string or a list to restrict the results to objects of a given meta_type or set of meta_types. Example:: This is the icon for the: Folder
. There are no Folders.
The results were restricted to Folders by passing a meta_type to 'objectValues' method. Permission -- 'Access contents information' """ def objectItems(type=None): """ This method returns a sequence of (id, object) tuples. Like objectValues and objectIds, it accepts one argument, either a string or a list to restrict the results to objects of a given meta_type or set of meta_types. Each tuple's first element is the id of an object contained in the Object Manager, and the second element is the object itself. Example:: id: , type: There are no sub-objects. Permission -- 'Access contents information' """ def superValues(type): """ This method returns a list of objects of a given meta_type(es) contained in the Object Manager and all its parent Object Managers. The type argument specifies the meta_type(es). It can be a string specifying one meta_type, or it can be a list of strings to specify many. Permission -- Python only """ def manage_delObjects(ids): """ Removes one or more children from the Object Manager. The 'ids' argument is either a list of child ids, or a single child id. Permission -- 'Delete objects' """ def __getitem__(id): """ Returns a child object given a child id. If there is no child with the given id, a KeyError is raised. This method makes it easy to refer to children that have id with file extensions. For example:: page=folder['index.html'] Note: this function only finds children; it doesn't return properties or other non-child attributes. Note: this function doesn't use acquisition to find children. It only returns direct children of the Object Manager. By contrast, using dot notation or 'getattr' will locate children (and other attributes) via acquisition if necessary. Permission -- 'Access contents information' """ def setBrowserDefaultId(id='', acquire=0): """ Sets the id of the object or method used as the default method when the object manager is published. If acquire is set then the default method id will be acquired from the parent container. Permission -- 'Manage folderish settings' """ def getBrowserDefaultId(acquire=0): """ Returns the id of the object or method used as the default when the object manager is published. By default, this setting is acquired. If the acquire argument is true, then the return value will be acquired from the parent if it is not set locally. Otherwise, None is returned if the default id is not set on this object manager. Permission -- 'View' """