SVN: Zope/trunk/ Removed `OFS.ZDOM`.

Hanno Schlichting <[email protected]>
Newsgroups gmane.comp.web.zope.cvs
Message-ID <[email protected]>
Log message for revision 122089:
  Removed `OFS.ZDOM`.
  

Changed:
  U   Zope/trunk/doc/CHANGES.rst
  U   Zope/trunk/src/OFS/Application.py
  U   Zope/trunk/src/OFS/DTMLMethod.py
  U   Zope/trunk/src/OFS/PropertyManager.py
  U   Zope/trunk/src/OFS/SimpleItem.py
  D   Zope/trunk/src/OFS/ZDOM.py

-=-
Modified: Zope/trunk/doc/CHANGES.rst
===================================================================
--- Zope/trunk/doc/CHANGES.rst	2011-07-03 15:52:37 UTC (rev 122088)
+++ Zope/trunk/doc/CHANGES.rst	2011-07-03 15:58:42 UTC (rev 122089)
@@ -44,6 +44,8 @@
 Restructuring
 +++++++++++++
 
+- Removed `OFS.ZDOM`.
+
 - Removed the last remaining code to support `SOFTWARE_HOME` and `ZOPE_HOME`.
 
 - Removed ZMI controls for restarting the process, these no longer apply when

Modified: Zope/trunk/src/OFS/Application.py
===================================================================
--- Zope/trunk/src/OFS/Application.py	2011-07-03 15:52:37 UTC (rev 122088)
+++ Zope/trunk/src/OFS/Application.py	2011-07-03 15:58:42 UTC (rev 122089)
@@ -36,7 +36,6 @@
 
 import Folder
 import misc_
-import ZDOM
 from FindSupport import FindSupport
 from interfaces import IApplication
 from misc_ import Misc_
@@ -47,7 +46,6 @@
 
 
 class Application(ApplicationDefaultPermissions,
-                  ZDOM.Root,
                   Folder.Folder,
                   FindSupport,
                  ):

Modified: Zope/trunk/src/OFS/DTMLMethod.py
===================================================================
--- Zope/trunk/src/OFS/DTMLMethod.py	2011-07-03 15:52:37 UTC (rev 122088)
+++ Zope/trunk/src/OFS/DTMLMethod.py	2011-07-03 15:58:42 UTC (rev 122089)
@@ -34,7 +34,6 @@
 from OFS.History import html_diff
 from OFS.role import RoleManager
 from OFS.SimpleItem import Item_w__name__
-from OFS.ZDOM import ElementWithTitle
 from webdav.Lockable import ResourceLockedError
 from zExceptions import Forbidden
 from zExceptions.TracebackSupplement import PathTracebackSupplement
@@ -48,7 +47,6 @@
                  HTML,
                  Implicit,
                  RoleManager,
-                 ElementWithTitle,
                  Item_w__name__,
                  Historical,
                  Cacheable,

Modified: Zope/trunk/src/OFS/PropertyManager.py
===================================================================
--- Zope/trunk/src/OFS/PropertyManager.py	2011-07-03 15:52:37 UTC (rev 122088)
+++ Zope/trunk/src/OFS/PropertyManager.py	2011-07-03 15:58:42 UTC (rev 122089)
@@ -23,7 +23,6 @@
 from ExtensionClass import Base
 from App.special_dtml import DTMLFile
 from App.Dialogs import MessageDialog
-from Persistence import Persistent
 from zExceptions import BadRequest
 from zope.interface import implements
 from ZPublisher.Converters import type_converters
@@ -31,9 +30,8 @@
 from OFS.interfaces import IPropertyManager
 from OFS.PropertySheets import DefaultPropertySheets
 from OFS.PropertySheets import vps
-from OFS.ZDOM import ElementWithAttributes
 
-class PropertyManager(Base, ElementWithAttributes):
+class PropertyManager(Base):
 
     """
     The PropertyManager mixin class provides an object with

Modified: Zope/trunk/src/OFS/SimpleItem.py
===================================================================
--- Zope/trunk/src/OFS/SimpleItem.py	2011-07-03 15:52:37 UTC (rev 122088)
+++ Zope/trunk/src/OFS/SimpleItem.py	2011-07-03 15:58:42 UTC (rev 122089)
@@ -57,7 +57,6 @@
 from OFS.CopySupport import CopySource
 from OFS.role import RoleManager
 from OFS.Traversable import Traversable
-from OFS.ZDOM import Element
 
 import logging
 logger = logging.getLogger()
@@ -67,7 +66,6 @@
            CopySource,
            Tabs,
            Traversable,
-           Element,
            Owned,
            UndoSupport,
            ):

Deleted: Zope/trunk/src/OFS/ZDOM.py
===================================================================
--- Zope/trunk/src/OFS/ZDOM.py	2011-07-03 15:52:37 UTC (rev 122088)
+++ Zope/trunk/src/OFS/ZDOM.py	2011-07-03 15:58:42 UTC (rev 122089)
@@ -1,568 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2002 Zope Foundation and Contributors.
-#
-# 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
-#
-##############################################################################
-"""
-DOM implementation in ZOPE : Read-Only methods
-
-All standard Zope objects support DOM to a limited extent.
-"""
-from AccessControl.class_init import InitializeClass
-from AccessControl.SecurityInfo import ClassSecurityInfo
-from AccessControl.Permissions import access_contents_information
-from Acquisition import Explicit
-from Acquisition import Implicit
-from Acquisition import aq_base
-from Acquisition import aq_parent
-
-
-# Node type codes
-# ---------------
-
-ELEMENT_NODE       = 1
-ATTRIBUTE_NODE     = 2
-TEXT_NODE          = 3
-CDATA_SECTION_NODE = 4
-ENTITY_REFERENCE_NODE = 5
-ENTITY_NODE        = 6
-PROCESSING_INSTRUCTION_NODE = 7
-COMMENT_NODE       = 8
-DOCUMENT_NODE      = 9
-DOCUMENT_TYPE_NODE = 10
-DOCUMENT_FRAGMENT_NODE = 11
-NOTATION_NODE      = 12
-
-# Exception codes
-# ---------------
-
-INDEX_SIZE_ERR              = 1
-DOMSTRING_SIZE_ERR          = 2
-HIERARCHY_REQUEST_ERR       = 3
-WRONG_DOCUMENT_ERR          = 4
-INVALID_CHARACTER_ERR       = 5
-NO_DATA_ALLOWED_ERR         = 6
-NO_MODIFICATION_ALLOWED_ERR = 7
-NOT_FOUND_ERR               = 8
-NOT_SUPPORTED_ERR           = 9
-INUSE_ATTRIBUTE_ERR         = 10
-
-# Exceptions
-# ----------
-
-class DOMException(Exception):
-    pass
-class IndexSizeException(DOMException):
-    code = INDEX_SIZE_ERR
-class DOMStringSizeException(DOMException):
-    code = DOMSTRING_SIZE_ERR
-class HierarchyRequestException(DOMException):
-    code = HIERARCHY_REQUEST_ERR
-class WrongDocumentException(DOMException):
-    code = WRONG_DOCUMENT_ERR
-class InvalidCharacterException(DOMException):
-    code = INVALID_CHARACTER_ERR
-class NoDataAllowedException(DOMException):
-    code = NO_DATA_ALLOWED_ERR
-class NoModificationAllowedException(DOMException):
-    code = NO_MODIFICATION_ALLOWED_ERR
-class NotFoundException(DOMException):
-    code = NOT_FOUND_ERR
-class NotSupportedException(DOMException):
-    code = NOT_SUPPORTED_ERR
-class InUseAttributeException(DOMException):
-    code = INUSE_ATTRIBUTE_ERR
-
-# Node classes
-# ------------
-
-class Node:
-    """
-    Node Interface
-    """
-
-    security = ClassSecurityInfo()
-
-    # DOM attributes
-    # --------------
-
-    security.declareProtected(access_contents_information, 'getNodeName')
-    def getNodeName(self):
-        """The name of this node, depending on its type"""
-        return None
-
-    security.declareProtected(access_contents_information, 'getNodeValue')
-    def getNodeValue(self):
-        """The value of this node, depending on its type"""
-        return None
-
-    security.declareProtected(access_contents_information, 'getParentNode')
-    def getParentNode(self):
-        """The parent of this node.  All nodes except Document
-        DocumentFragment and Attr may have a parent"""
-        return None
-
-    security.declareProtected(access_contents_information, 'getChildNodes')
-    def getChildNodes(self):
-        """Returns a NodeList that contains all children of this node.
-        If there are no children, this is a empty NodeList"""
-        return NodeList()
-
-    security.declareProtected(access_contents_information, 'getFirstChild')
-    def getFirstChild(self):
-        """The first child of this node. If there is no such node
-        this returns None."""
-        return None
-
-    security.declareProtected(access_contents_information, 'getLastChild')
-    def getLastChild(self):
-        """The last child of this node. If there is no such node
-        this returns None."""
-        return None
-
-    security.declareProtected(access_contents_information,
-                              'getPreviousSibling')
-    def getPreviousSibling(self):
-        """The node immediately preceding this node.  If
-        there is no such node, this returns None."""
-        return None
-
-    security.declareProtected(access_contents_information, 'getNextSibling')
-    def getNextSibling(self):
-        """The node immediately preceding this node.  If
-        there is no such node, this returns None."""
-        return None
-
-    security.declareProtected(access_contents_information, 'getAttributes')
-    def getAttributes(self):
-        """Returns a NamedNodeMap containing the attributes
-        of this node (if it is an element) or None otherwise."""
-        return None
-
-    security.declareProtected(access_contents_information, 'getOwnerDocument')
-    def getOwnerDocument(self):
-        """The Document object associated with this node.
-        When this is a document this is None"""
-        node = self
-        if hasattr(node, 'aq_parent'):
-            node = aq_parent(self)
-            return node.getOwnerDocument()
-        return node
-
-    # DOM Methods
-    # -----------
-
-    security.declareProtected(access_contents_information, 'hasChildNodes')
-    def hasChildNodes(self):
-        """Returns true if the node has any children, false
-        if it doesn't. """
-        return len(self.objectIds())
-
-InitializeClass(Node)
-
-
-class Document(Explicit, Node):
-    """
-    Document Interface
-    """
-
-    security = ClassSecurityInfo()
-
-    # Document Methods
-    # ----------------
-
-    security.declareProtected(access_contents_information, 'getImplementation')
-    def getImplementation(self):
-        """
-        The DOMImplementation object that handles this document.
-        """
-        return DOMImplementation()
-
-    security.declareProtected(access_contents_information, 'getDoctype')
-    def getDoctype(self):
-        """
-        The Document Type Declaration associated with this document.
-        For HTML documents as well as XML documents without
-        a document type declaration this returns null.
-        """
-        return None
-
-    security.declareProtected(access_contents_information,
-                              'getDocumentElement')
-    def getDocumentElement(self):
-        """
-        This is a convenience attribute that allows direct access to
-        the child node that is the root element of the document.
-        """
-        return aq_parent(self)
-
-    # Node Methods
-    # ------------
-
-    def getNodeName(self):
-        """The name of this node, depending on its type"""
-        return '#document'
-
-    def getNodeType(self):
-        """A code representing the type of the node."""
-        return DOCUMENT_NODE
-
-    def getOwnerDocument(self):
-        """The Document object associated with this node.
-        When this is a document this is None"""
-        return self
-
-    def getChildNodes(self):
-        """Returns a NodeList that contains all children of this node.
-        If there are no children, this is a empty NodeList"""
-        return NodeList([aq_parent(self)])
-
-    def getFirstChild(self):
-        """The first child of this node. If there is no such node
-        this returns None."""
-        return aq_parent(self)
-
-    def getLastChild(self):
-        """The last child of this node. If there is no such node
-        this returns None."""
-        return aq_parent(self)
-
-    def hasChildNodes(self):
-        """Returns true if the node has any children, false
-        if it doesn't. """
-        return 1
-
-InitializeClass(Document)
-
-
-class DOMImplementation:
-    """
-    DOMImplementation Interface
-    """
-
-    security = ClassSecurityInfo()
-
-    security.declareProtected(access_contents_information, 'hasFeature')
-    def hasFeature(self, feature, version = None):
-        """
-        hasFeature - Test if the DOM implementation implements a specific
-        feature. Parameters: feature The package name of the feature to
-        test. In Level 1, the legal values are "HTML" and "XML"
-        (case-insensitive). version This is the version number of the
-        package name to test. In Level 1, this is the string "1.0". If the
-        version is not specified, supporting any version of the feature
-        will cause the method to return true. Return Value true if the
-        feature is implemented in the specified version, false otherwise.
-        """
-        feature=feature.lower()
-        if feature == 'html': return 0
-        if feature == 'xml':
-            if version is None: return 1
-            if version == '1.0': return 1
-            return 0
-
-InitializeClass(DOMImplementation)
-
-
-class Element(Node):
-    """
-    Element interface
-    """
-
-    security = ClassSecurityInfo()
-
-    # Element Attributes
-    # ------------------
-
-    security.declareProtected(access_contents_information, 'getTagName')
-    def getTagName(self):
-        """The name of the element"""
-        return self.__class__.__name__
-
-    # Node Attributes
-    # ---------------
-
-    def getNodeName(self):
-        """The name of this node, depending on its type"""
-        return self.getTagName()
-
-    def getNodeType(self):
-        """A code representing the type of the node."""
-        return ELEMENT_NODE
-
-    def getParentNode(self):
-        """The parent of this node.  All nodes except Document
-        DocumentFragment and Attr may have a parent"""
-        return getattr(self, 'aq_parent', None)
-
-    def getChildNodes(self):
-        """Returns a NodeList that contains all children of this node.
-        If there are no children, this is a empty NodeList"""
-        return  NodeList(self.objectValues())
-
-    def getFirstChild(self):
-        """The first child of this node. If there is no such node
-        this returns None"""
-        children = self.getChildNodes()
-        if children:
-            return children._data[0]
-        return None
-
-    def getLastChild(self):
-        """The last child of this node.  If there is no such node
-        this returns None."""
-        children = self.getChildNodes()
-        if children:
-            return children._data[-1]
-        return None
-
-    def getPreviousSibling(self):
-        """The node immediately preceding this node.  If
-        there is no such node, this returns None."""
-        if hasattr(self, 'aq_parent'):
-            parent = aq_parent(self)
-            ids=list(parent.objectIds())
-            id=self.id
-            if type(id) is not type(''): id=id()
-            try: index=ids.index(id)
-            except: return None
-            if index < 1: return None
-            return parent.objectValues()[index-1]
-        return None
-
-    def getNextSibling(self):
-        """The node immediately preceding this node.  If
-        there is no such node, this returns None."""
-        if hasattr(self, 'aq_parent'):
-            parent = aq_parent(self)
-            ids=list(parent.objectIds())
-            id=self.id
-            if type(id) is not type(''): id=id()
-            try: index=ids.index(id)
-            except: return None
-            if index >= len(ids)-1: return None
-            return parent.objectValues()[index+1]
-        return None
-
-    # Element Methods
-    # ---------------
-
-    security.declareProtected(access_contents_information, 'getAttribute')
-    def getAttribute(self, name):
-        """Retrieves an attribute value by name."""
-        return None
-
-    security.declareProtected(access_contents_information, 'getAttributeNode')
-    def getAttributeNode(self, name):
-        """ Retrieves an Attr node by name or None if
-        there is no such attribute. """
-        return None
-
-    security.declareProtected(access_contents_information,
-                              'getElementsByTagName')
-    def getElementsByTagName(self, tagname):
-        """ Returns a NodeList of all the Elements with a given tag
-        name in the order in which they would be encountered in a
-        preorder traversal of the Document tree.  Parameter: tagname
-        The name of the tag to match (* = all tags). Return Value: A new
-        NodeList object containing all the matched Elements.
-        """
-        nodeList = []
-        for child in self.objectValues():
-            if (child.getNodeType()==ELEMENT_NODE and \
-                    child.getTagName()==tagname or tagname== '*'):
-                nodeList.append(child)
-            if hasattr(child, 'getElementsByTagName'):
-                n1 = child.getElementsByTagName(tagname)
-                nodeList = nodeList + n1._data
-        return NodeList(nodeList)
-
-InitializeClass(Element)
-
-
-class ElementWithAttributes(Element):
-    """
-    Elements that allow DOM access to Zope properties of type 'string'.
-
-    Note: This sub-class should only be used by PropertyManagers
-    """
-
-    def getAttributes(self):
-        """Returns a NamedNodeMap containing the attributes
-        of this node (if it is an element) or None otherwise."""
-        attribs={}
-        for p in self._properties:
-            if p['type'] == 'string':
-                name=p['id']
-                attrib=Attr(name, self.getProperty(name,'')).__of__(self)
-                attribs[name]=attrib
-        return NamedNodeMap(attribs)
-
-    def getAttribute(self, name):
-        """Retrieves an attribute value by name."""
-        if self.getPropertyType(name) == 'string':
-            return self.getProperty(name,'')
-
-    def getAttributeNode(self, name):
-        """Retrieves an Attr node by name or None if
-        there is no such attribute. """
-        if self.getPropertyType(name) == 'string':
-            return Attr(name, self.getProperty(name,'')).__of__(self)
-        return None
-
-
-class ElementWithTitle(Element):
-    """
-    Elements that allow DOM access to Zope 'title' property.
-
-    Note: Don't use this sub-class for PropertyManagers
-    """
-
-    def getAttributes(self):
-        """Returns a NamedNodeMap containing the attributes
-        of this node (if it is an element) or None otherwise."""
-        title = self.getAttributeNode('title')
-        if title is not None:
-            return NamedNodeMap({'title':title})
-        return NamedNodeMap()
-
-    def getAttribute(self, name):
-        """Retrieves an attribute value by name."""
-        if name=='title' and hasattr(aq_base(self), 'title'):
-            return self.title
-        return ''
-
-    def getAttributeNode(self, name):
-        """Retrieves an Attr node by name or None if
-        there is no such attribute. """
-        value=self.getAttribute(name)
-        if value:
-            return Attr(name, value).__of__(self)
-        return None
-
-
-class Root(ElementWithAttributes):
-    """
-    The top-level Zope object.
-    """
-
-    def getOwnerDocument(self):
-        """
-        """
-        return Document().__of__(self)
-
-
-class NodeList:
-    """NodeList interface - Provides the abstraction of an ordered
-    collection of nodes.
-
-    Python extensions: can use sequence-style 'len', 'getitem', and
-    'for..in' constructs.
-    """
-
-    # The security machinery is not willing to treat this like a
-    # list just because we act like one. We need to assert that
-    # its ok to allow access to items in the nodelist.
-    __allow_access_to_unprotected_subobjects__=1
-
-    def __init__(self,list=None):
-        self._data = list or []
-
-    def __getitem__(self, index):
-        return self._data[index]
-
-    def item(self, index):
-        """Returns the index-th item in the collection"""
-        try: return self._data[index]
-        except IndexError: return None
-
-    def getLength(self):
-        """The length of the NodeList"""
-        return len(self._data)
-
-    __len__=getLength
-
-
-class NamedNodeMap:
-    """
-    NamedNodeMap interface - Is used to represent collections
-    of nodes that can be accessed by name.  NamedNodeMaps are not
-    maintained in any particular order.
-
-    Python extensions: can use sequence-style 'len', 'getitem', and
-    'for..in' constructs, and mapping-style 'getitem'.
-    """
-
-    # Tell the security machinery to allow access to items.
-    __allow_access_to_unprotected_subobjects__=1
-
-    def __init__(self, data=None):
-        if data is None : data = {}
-        self._data = data
-
-    def item(self, index):
-        """Returns the index-th item in the map"""
-        try: return self._data.values()[index]
-        except IndexError: return None
-
-    def __getitem__(self, key):
-        if type(key)==type(1):
-            return self._data.values()[key]
-        else:
-            return self._data[key]
-
-    def getLength(self):
-        """The length of the NodeList"""
-        return len(self._data)
-
-    __len__ = getLength
-
-    def getNamedItem(self, name):
-        """Retrieves a node specified by name. Parameters:
-        name Name of a node to retrieve. Return Value A Node (of any
-        type) with the specified name, or None if the specified name
-        did not identify any node in the map.
-        """
-        if self._data.has_key(name):
-            return self._data[name]
-        return None
-
-
-class Attr(Implicit, Node):
-    """
-    Attr interface - The Attr interface represents an attriubte in an
-    Element object. Attr objects inherit the Node Interface
-    """
-
-    def __init__(self, name, value):
-        self.name = name
-        self.value = value
-        self.specified = 1
-
-    def getNodeName(self):
-        """The name of this node, depending on its type"""
-        return self.name
-
-    def getName(self):
-        """Returns the name of this attribute."""
-        return self.name
-
-    def getNodeValue(self):
-        """The value of this node, depending on its type"""
-        return self.value
-
-    def getNodeType(self):
-        """A code representing the type of the node."""
-        return ATTRIBUTE_NODE
-
-    def getSpecified(self):
-        """If this attribute was explicitly given a value in the
-        original document, this is true; otherwise, it is false."""
-        return self.specified

_______________________________________________
Zope-Checkins maillist  -  [email protected]
https://mail.zope.org/mailman/listinfo/zope-checkins
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.