You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by tn...@apache.org on 2002/02/04 21:03:48 UTC

cvs commit: xml-xerces/c/src/xercesc/dom DOM_Element.cpp DOM_Element.hpp DOM_Node.cpp DOM_Node.hpp DOM_NodeIterator.cpp DOM_NodeIterator.hpp DOM_TreeWalker.cpp DOM_TreeWalker.hpp ElementImpl.cpp ElementImpl.hpp NodeImpl.cpp NodeImpl.hpp NodeIteratorImpl.cpp NodeIteratorImpl.hpp TreeWalkerImpl.cpp TreeWalkerImpl.hpp

tng         02/02/04 12:03:48

  Modified:    c/src/xercesc/dom DOM_Element.cpp DOM_Element.hpp
                        DOM_Node.cpp DOM_Node.hpp DOM_NodeIterator.cpp
                        DOM_NodeIterator.hpp DOM_TreeWalker.cpp
                        DOM_TreeWalker.hpp ElementImpl.cpp ElementImpl.hpp
                        NodeImpl.cpp NodeImpl.hpp NodeIteratorImpl.cpp
                        NodeIteratorImpl.hpp TreeWalkerImpl.cpp
                        TreeWalkerImpl.hpp
  Log:
  Add DOM Level missing functions:
  1. NodeIterator::getRoot
  2. TreeWalker::getRoot
  3. Element::hasAttribute
  4. Element::hasAttributeNS
  5. Node::hasAttributes
  6. Node::isSupported
  
  Revision  Changes    Path
  1.2       +40 -16    xml-xerces/c/src/xercesc/dom/DOM_Element.cpp
  
  Index: DOM_Element.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/DOM_Element.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DOM_Element.cpp	1 Feb 2002 22:21:45 -0000	1.1
  +++ DOM_Element.cpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,37 +1,37 @@
   /*
    * The Apache Software License, Version 1.1
  - * 
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + *
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
  - * 
  + *
    * Redistribution and use in source and binary forms, with or without
    * modification, are permitted provided that the following conditions
    * are met:
  - * 
  + *
    * 1. Redistributions of source code must retain the above copyright
  - *    notice, this list of conditions and the following disclaimer. 
  - * 
  + *    notice, this list of conditions and the following disclaimer.
  + *
    * 2. Redistributions in binary form must reproduce the above copyright
    *    notice, this list of conditions and the following disclaimer in
    *    the documentation and/or other materials provided with the
    *    distribution.
  - * 
  + *
    * 3. The end-user documentation included with the redistribution,
  - *    if any, must include the following acknowledgment:  
  + *    if any, must include the following acknowledgment:
    *       "This product includes software developed by the
    *        Apache Software Foundation (http://www.apache.org/)."
    *    Alternately, this acknowledgment may appear in the software itself,
    *    if and wherever such third-party acknowledgments normally appear.
  - * 
  + *
    * 4. The names "Xerces" and "Apache Software Foundation" must
    *    not be used to endorse or promote products derived from this
  - *    software without prior written permission. For written 
  + *    software without prior written permission. For written
    *    permission, please contact apache\@apache.org.
  - * 
  + *
    * 5. Products derived from this software may not be called "Apache",
    *    nor may "Apache" appear in their name, without prior written
    *    permission of the Apache Software Foundation.
  - * 
  + *
    * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
    * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
    * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  @@ -45,7 +45,7 @@
    * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    * SUCH DAMAGE.
    * ====================================================================
  - * 
  + *
    * This software consists of voluntary contributions made by many
    * individuals on behalf of the Apache Software Foundation, and was
    * originally based on software copyright (c) 1999, International
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: DOM_Element.cpp,v $
  - * Revision 1.1  2002/02/01 22:21:45  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:45  peiyongz
  + * sane_include
    *
    * Revision 1.5  2000/03/02 19:53:55  roddey
    * This checkin includes many changes done while waiting for the
  @@ -103,14 +112,14 @@
   {
   };
   
  -        
  +
   DOM_Element::DOM_Element(ElementImpl *impl) :
           DOM_Node(impl)
   {
   };
   
   
  -DOM_Element::~DOM_Element() 
  +DOM_Element::~DOM_Element()
   {
   };
   
  @@ -139,7 +148,7 @@
   };
   
   
  -void      DOM_Element::setAttribute(const DOMString &name, 
  +void      DOM_Element::setAttribute(const DOMString &name,
                                       const DOMString &value)
   {
           ((ElementImpl *)fImpl)->setAttribute(name, value);
  @@ -222,3 +231,24 @@
       return DOM_NodeList(((ElementImpl *)fImpl)->getElementsByTagNameNS(namespaceURI,
   	localName));
   }
  +
  +
  +bool DOM_Element::hasAttributes() const
  +{
  +        return ((ElementImpl *)fImpl)->hasAttributes();
  +};
  +
  +
  +bool DOM_Element::hasAttribute(const DOMString &name) const
  +{
  +        return ((ElementImpl *)fImpl)->hasAttribute(name);
  +};
  +
  +
  +bool DOM_Element::hasAttributeNS(const DOMString &namespaceURI,
  +	const DOMString &localName) const
  +{
  +    return ((ElementImpl *)fImpl)->hasAttributeNS(namespaceURI, localName);
  +}
  +
  +
  
  
  
  1.2       +37 -13    xml-xerces/c/src/xercesc/dom/DOM_Element.hpp
  
  Index: DOM_Element.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/DOM_Element.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DOM_Element.hpp	1 Feb 2002 22:21:45 -0000	1.1
  +++ DOM_Element.hpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: DOM_Element.hpp,v $
  - * Revision 1.1  2002/02/01 22:21:45  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:45  peiyongz
  + * sane_include
    *
    * Revision 1.9  2001/05/11 13:25:20  tng
    * Copyright update.
  @@ -322,8 +331,6 @@
     /**
      * Retrieves an attribute value by local name and namespace URI.
      *
  -   * <p><b>"Experimental - subject to change"</b></p>
  -   *
      * @param namespaceURI The <em>namespace URI</em> of
      *    the attribute to retrieve.
      * @param localName The <em>local name</em> of the
  @@ -349,8 +356,6 @@
      * <CODE>setAttributeNodeNS</CODE> or <CODE>setAttributeNode</CODE> to assign
      * it as the value of an attribute.
      *
  -   * <p><b>"Experimental - subject to change"</b></p>
  -   *
      * @param namespaceURI The <em>namespace URI</em> of
      *    the attribute to create or alter.
      * @param qualifiedName The <em>qualified name</em> of the
  @@ -383,8 +388,6 @@
      * The replacing attribute has the same namespace URI and local name, as well as
      * the original prefix.
      *
  -   * <p><b>"Experimental - subject to change"</b></p>
  -   *
      * @param namespaceURI The <em>namespace URI</em> of
      *    the attribute to remove.
      * @param localName The <em>local name</em> of the
  @@ -398,8 +401,6 @@
     /**
      * Retrieves an <code>DOM_Attr</code> node by local name and namespace URI.
      *
  -   * <p><b>"Experimental - subject to change"</b></p>
  -   *
      * @param namespaceURI The <em>namespace URI</em> of
      *    the attribute to retrieve.
      * @param localName The <em>local name</em> of the
  @@ -416,8 +417,6 @@
       * If an attribute with that local name and namespace URI is already present
       * in the element, it is replaced by the new one.
       *
  -    * <p><b>"Experimental - subject to change"</b></p>
  -    *
       * @param newAttr The <code>DOM_Attr</code> node to add to the attribute list.
       * @return If the <code>newAttr</code> attribute replaces an existing
       *    attribute with the same <em>local name</em> and <em>namespace URI</em>,
  @@ -440,8 +439,6 @@
      * would be encountered in a preorder traversal of the
      * <code>DOM_Document</code> tree, starting from this node.
      *
  -   * <p><b>"Experimental - subject to change"</b></p>
  -   *
      * @param namespaceURI The <em>namespace URI</em> of
      *    the elements to match on. The special value "*" matches all
      *    namespaces.
  @@ -452,6 +449,39 @@
      */
     DOM_NodeList    getElementsByTagNameNS(const DOMString &namespaceURI,
   	const DOMString &localName) const;
  +
  +    /**
  +     *  Returns whether this node (if it is an element) has any attributes.
  +     * @return <code>true</code> if this node has any attributes,
  +     *   <code>false</code> otherwise.
  +     */
  +    bool         hasAttributes() const;
  +
  +    /**
  +     * Returns <code>true</code> when an attribute with a given name is
  +     * specified on this element or has a default value, <code>false</code>
  +     * otherwise.
  +     * @param nameThe name of the attribute to look for.
  +     * @return <code>true</code> if an attribute with the given name is
  +     *   specified on this element or has a default value, <code>false</code>
  +     *    otherwise.
  +     */
  +    bool         hasAttribute(const DOMString &name) const;
  +
  +    /**
  +     * Returns <code>true</code> when an attribute with a given local name and
  +     * namespace URI is specified on this element or has a default value,
  +     * <code>false</code> otherwise. HTML-only DOM implementations do not
  +     * need to implement this method.
  +     * @param namespaceURIThe namespace URI of the attribute to look for.
  +     * @param localNameThe local name of the attribute to look for.
  +     * @return <code>true</code> if an attribute with the given local name
  +     *   and namespace URI is specified or has a default value on this
  +     *   element, <code>false</code> otherwise.
  +     * @since DOM Level 2
  +     */
  +    bool         hasAttributeNS(const DOMString &namespaceURI,
  +                                const DOMString &localName) const;
   
     //@}
   
  
  
  
  1.2       +49 -40    xml-xerces/c/src/xercesc/dom/DOM_Node.cpp
  
  Index: DOM_Node.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/DOM_Node.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DOM_Node.cpp	1 Feb 2002 22:21:45 -0000	1.1
  +++ DOM_Node.cpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,37 +1,37 @@
   /*
    * The Apache Software License, Version 1.1
  - * 
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + *
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
  - * 
  + *
    * Redistribution and use in source and binary forms, with or without
    * modification, are permitted provided that the following conditions
    * are met:
  - * 
  + *
    * 1. Redistributions of source code must retain the above copyright
  - *    notice, this list of conditions and the following disclaimer. 
  - * 
  + *    notice, this list of conditions and the following disclaimer.
  + *
    * 2. Redistributions in binary form must reproduce the above copyright
    *    notice, this list of conditions and the following disclaimer in
    *    the documentation and/or other materials provided with the
    *    distribution.
  - * 
  + *
    * 3. The end-user documentation included with the redistribution,
  - *    if any, must include the following acknowledgment:  
  + *    if any, must include the following acknowledgment:
    *       "This product includes software developed by the
    *        Apache Software Foundation (http://www.apache.org/)."
    *    Alternately, this acknowledgment may appear in the software itself,
    *    if and wherever such third-party acknowledgments normally appear.
  - * 
  + *
    * 4. The names "Xerces" and "Apache Software Foundation" must
    *    not be used to endorse or promote products derived from this
  - *    software without prior written permission. For written 
  + *    software without prior written permission. For written
    *    permission, please contact apache\@apache.org.
  - * 
  + *
    * 5. Products derived from this software may not be called "Apache",
    *    nor may "Apache" appear in their name, without prior written
    *    permission of the Apache Software Foundation.
  - * 
  + *
    * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
    * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
    * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  @@ -45,7 +45,7 @@
    * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    * SUCH DAMAGE.
    * ====================================================================
  - * 
  + *
    * This software consists of voluntary contributions made by many
    * individuals on behalf of the Apache Software Foundation, and was
    * originally based on software copyright (c) 1999, International
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: DOM_Node.cpp,v $
  - * Revision 1.1  2002/02/01 22:21:45  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:45  peiyongz
  + * sane_include
    *
    * Revision 1.7  2000/06/14 21:08:07  andyh
    * DOM attribute/named nodemaps: Fix a couple of null ptr problems.
  @@ -101,13 +110,13 @@
   #include "NodeImpl.hpp"
   #include <assert.h>
   
  -DOM_Node::DOM_Node() 
  +DOM_Node::DOM_Node()
   {
       fImpl = null;
   };
   
   
  -DOM_Node::DOM_Node(NodeImpl *impl) 
  +DOM_Node::DOM_Node(NodeImpl *impl)
   {
       fImpl = impl;
       RefCountedImpl::addRef(fImpl);
  @@ -142,7 +151,7 @@
   
   
   
  -DOM_Node::~DOM_Node() 
  +DOM_Node::~DOM_Node()
   {
       RefCountedImpl::removeRef (this->fImpl);
       fImpl = 0;
  @@ -181,73 +190,73 @@
   {
       return DOM_Node(fImpl->appendChild(newChild.fImpl));
   };
  - 
  -  
  -DOM_Node      DOM_Node::cloneNode(bool deep) const 
  +
  +
  +DOM_Node      DOM_Node::cloneNode(bool deep) const
   {
       return DOM_Node(fImpl->cloneNode(deep));
   };
   
   
  -DOMString  DOM_Node::getNodeName()  const 
  +DOMString  DOM_Node::getNodeName()  const
   {
       return fImpl->getNodeName().clone();
   };
   
  -  
  +
   DOMString  DOM_Node::getNodeValue() const
   {
       return fImpl->getNodeValue().clone();
   };
   
  -  
  +
   short   DOM_Node::getNodeType() const
   {
       return fImpl->getNodeType();
   };
   
  -  
  +
   DOM_Node      DOM_Node::getParentNode() const
   {
       return DOM_Node(fImpl->getParentNode());
   };
   
  -  
  +
   DOM_NodeList      DOM_Node::getChildNodes() const
   {
       return DOM_NodeList(fImpl);
   };
  - 
  -  
  +
  +
   DOM_Node      DOM_Node::getFirstChild() const
   {
       return DOM_Node(fImpl->getFirstChild());
   };
   
  -  
  +
   DOM_Node      DOM_Node::getLastChild() const
   {
       return DOM_Node(fImpl->getLastChild());
   };
  - 
  -  
  +
  +
   DOM_Node      DOM_Node::getPreviousSibling() const
   {
       return DOM_Node(fImpl->getPreviousSibling());
   };
  - 
  -  
  +
  +
   DOM_Node       DOM_Node::getNextSibling() const
   {
       return DOM_Node(fImpl->getNextSibling());
   };
  -  
  +
   
   void          *DOM_Node::getUserData() const
   {
       return fImpl->getUserData ();
   }
  -  
  +
   DOM_NamedNodeMap DOM_Node::getAttributes() const
   {
   	if (getNodeType() == ELEMENT_NODE)
  @@ -256,19 +265,19 @@
   		return DOM_NamedNodeMap();
   };
   
  -  
  +
   DOM_Document   DOM_Node::getOwnerDocument() const
   {
       return fImpl->getOwnerDocument();
   };
   
  -  
  +
   bool           DOM_Node::hasChildNodes() const
   {
       return fImpl->hasChildNodes();
   };
   
  -  
  +
   DOM_Node       DOM_Node::insertBefore(const DOM_Node &newChild, const DOM_Node &refChild){
       return DOM_Node(fImpl->insertBefore(newChild.fImpl, refChild.fImpl));
   };
  @@ -284,12 +293,12 @@
       return DOM_Node(fImpl->replaceChild(newChild.fImpl, oldChild.fImpl));
   };
   
  -  
  +
   DOM_Node       DOM_Node::removeChild(const DOM_Node &oldChild){
       return DOM_Node(fImpl->removeChild(oldChild.fImpl));
   };
   
  -  
  +
   void           DOM_Node::setNodeValue(const DOMString &nodeValue)
   {
       fImpl->setNodeValue(nodeValue);
  @@ -310,10 +319,10 @@
   };
   
   
  -bool              DOM_Node::supports(const DOMString &feature,
  +bool              DOM_Node::isSupported(const DOMString &feature,
   	                       const DOMString &version) const
   {
  -    return fImpl->supports(feature, version);
  +    return fImpl->isSupported(feature, version);
   }
   
   DOMString         DOM_Node::getNamespaceURI() const
  @@ -335,3 +344,9 @@
   {
       fImpl->setPrefix(prefix);
   }
  +
  +bool              DOM_Node::hasAttributes() const
  +{
  +    return fImpl->hasAttributes();
  +}
  +
  
  
  
  1.2       +10 -17    xml-xerces/c/src/xercesc/dom/DOM_Node.hpp
  
  Index: DOM_Node.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/DOM_Node.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DOM_Node.hpp	1 Feb 2002 22:21:46 -0000	1.1
  +++ DOM_Node.hpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -55,7 +55,7 @@
    */
   
   /*
  - * $Id: DOM_Node.hpp,v 1.1 2002/02/01 22:21:46 peiyongz Exp $
  + * $Id: DOM_Node.hpp,v 1.2 2002/02/04 20:03:48 tng Exp $
    */
   
   #ifndef DOM_Node_HEADER_GUARD_
  @@ -293,8 +293,6 @@
        * which is not used with any <code>DOM_Document</code> yet, this is
        * <code>null</code>.
        *
  -     * <p><b>"Experimental - subject to change"</b></p>
  -     *
        */
       DOM_Document      getOwnerDocument() const;
   
  @@ -513,8 +511,6 @@
        * nodes and <CODE>DOM_CDATASection</CODE>
        * nodes.</P>
        *
  -     * <p><b>"Experimental - subject to change"</b></p>
  -     *
        */
       void              normalize();
   
  @@ -522,8 +518,6 @@
        * Tests whether the DOM implementation implements a specific
        * feature and that feature is supported by this node.
        *
  -     * <p><b>"Experimental - subject to change"</b></p>
  -     *
        * @param feature The string of the feature to test. This is the same
        * name as what can be passed to the method <code>hasFeature</code> on
        * <code>DOM_DOMImplementation</code>.
  @@ -534,7 +528,7 @@
        * @return Returns <code>true</code> if the specified feature is supported
        * on this node, <code>false</code> otherwise.
        */
  -    bool              supports(const DOMString &feature,
  +    bool              isSupported(const DOMString &feature,
   	                       const DOMString &version) const;
   
       /**
  @@ -550,8 +544,6 @@
        * such as <CODE>createElement</CODE> from the <CODE>DOM_Document</CODE>
        * interface, this is always <CODE>null</CODE>.
        *
  -     * <p><b>"Experimental - subject to change"</b></p>
  -     *
        */
       DOMString         getNamespaceURI() const;
   
  @@ -559,8 +551,6 @@
        * Get the <em>namespace prefix</em>
        * of this node, or <code>null</code> if it is unspecified.
        *
  -     * <p><b>"Experimental - subject to change"</b></p>
  -     *
        */
       DOMString         getPrefix() const;
   
  @@ -571,8 +561,6 @@
        * <code>createElement</code> from the <code>DOM_Document</code> interface,
        * it is null.
        *
  -     * <p><b>"Experimental - subject to change"</b></p>
  -     *
        */
       DOMString         getLocalName() const;
   
  @@ -590,8 +578,6 @@
        * attribute with the default value and the original prefix appear, since the
        * <CODE>namespaceURI</CODE> and <CODE>localName</CODE> do not change.
        *
  -     * <p><b>"Experimental - subject to change"</b></p>
  -     *
        * @param prefix The prefix of this node.
        * @exception DOMException
        *   INVALID_CHARACTER_ERR: Raised if the specified prefix contains
  @@ -610,6 +596,13 @@
        *      the <CODE>qualifiedName</CODE> of this node is "xmlns".
        */
       void              setPrefix(const DOMString &prefix);
  +
  +    /**
  +     *  Returns whether this node (if it is an element) has any attributes.
  +     * @return <code>true</code> if this node has any attributes,
  +     *   <code>false</code> otherwise.
  +     */
  +    bool              hasAttributes() const;
   
       //@}
   
  
  
  
  1.2       +10 -1     xml-xerces/c/src/xercesc/dom/DOM_NodeIterator.cpp
  
  Index: DOM_NodeIterator.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/DOM_NodeIterator.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DOM_NodeIterator.cpp	1 Feb 2002 22:21:46 -0000	1.1
  +++ DOM_NodeIterator.cpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: DOM_NodeIterator.cpp,v $
  - * Revision 1.1  2002/02/01 22:21:46  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:46  peiyongz
  + * sane_include
    *
    * Revision 1.4  2000/03/02 19:53:56  roddey
    * This checkin includes many changes done while waiting for the
  @@ -164,6 +173,12 @@
   	fImpl->detach();
   }
   
  +
  +
  +DOM_Node DOM_NodeIterator::getRoot()
  +{
  +	  return fImpl->getRoot();
  +}
   
   
   unsigned long DOM_NodeIterator::getWhatToShow ()
  
  
  
  1.2       +10 -15    xml-xerces/c/src/xercesc/dom/DOM_NodeIterator.hpp
  
  Index: DOM_NodeIterator.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/DOM_NodeIterator.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DOM_NodeIterator.hpp	1 Feb 2002 22:21:46 -0000	1.1
  +++ DOM_NodeIterator.hpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: DOM_NodeIterator.hpp,v $
  - * Revision 1.1  2002/02/01 22:21:46  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:46  peiyongz
  + * sane_include
    *
    * Revision 1.9  2000/02/17 17:47:25  andyh
    * Update Doc++ API comments
  @@ -113,8 +122,6 @@
    * subtree. Instances of these iterators are created by calling
    * <code>DocumentTraversal.createNodeIterator()</code>.
    *
  - * <p><b>"Experimental - subject to change"</b></p>
  - *
    */
   class CDOM_EXPORT DOM_NodeIterator
   {
  @@ -190,19 +197,21 @@
           /** @name Get functions. */
           //@{
           /**
  +         * The root node of the <code>NodeIterator</code>, as specified when it
  +         * was created.
  +         */
  +        DOM_Node            getRoot();
  +
  +        /**
             * Return which node types are presented via the iterator.
             * The available set of constants is defined in the DOM_NodeFilter interface.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           unsigned long       getWhatToShow();
   
           /**
             * Return The filter used to screen nodes.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           DOM_NodeFilter*     getFilter();
   
  @@ -211,8 +220,6 @@
             * The value of this flag determines whether the children of entity reference
             * nodes are visible to the DOM_NodeFilter. If false, they will be skipped over.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           bool getExpandEntityReferences();
   
  @@ -221,8 +228,6 @@
             * in the set. After a DOM_NodeIterator is created, the first call to nextNode()
             * returns the first node in the set.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             * @exception DOMException
             *   INVALID_STATE_ERR: Raised if this method is called after the
             *   <code>detach</code> method was invoked.
  @@ -233,8 +238,6 @@
             * Returns the previous node in the set and moves the position of the iterator
             * backwards in the set.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             * @exception DOMException
             *   INVALID_STATE_ERR: Raised if this method is called after the
             *   <code>detach</code> method was invoked.
  @@ -249,8 +252,6 @@
             * computational resources and placing the iterator in the INVALID state. After
             * <code>detach</code> has been invoked, calls to <code>nextNode</code> or
             * <code>previousNode</code> will raise the exception INVALID_STATE_ERR.
  -          *
  -          * <p><b>"Experimental - subject to change"</b></p>
             *
             */
   	void				detach();
  
  
  
  1.2       +9 -1      xml-xerces/c/src/xercesc/dom/DOM_TreeWalker.cpp
  
  Index: DOM_TreeWalker.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/DOM_TreeWalker.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DOM_TreeWalker.cpp	1 Feb 2002 22:21:46 -0000	1.1
  +++ DOM_TreeWalker.cpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: DOM_TreeWalker.cpp,v $
  - * Revision 1.1  2002/02/01 22:21:46  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:46  peiyongz
  + * sane_include
    *
    * Revision 1.5  2000/08/08 01:00:36  aruna1
    * detach functionality removed from TreeWalker
  @@ -162,6 +171,11 @@
       return this->fImpl == 0;
   };
   
  +
  +
  +DOM_Node     		DOM_TreeWalker::getRoot() {
  +    return fImpl->getRoot();
  +}
   
   
   unsigned long		DOM_TreeWalker::getWhatToShow() {
  
  
  
  1.2       +14 -31    xml-xerces/c/src/xercesc/dom/DOM_TreeWalker.hpp
  
  Index: DOM_TreeWalker.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/DOM_TreeWalker.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DOM_TreeWalker.hpp	1 Feb 2002 22:21:46 -0000	1.1
  +++ DOM_TreeWalker.hpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: DOM_TreeWalker.hpp,v $
  - * Revision 1.1  2002/02/01 22:21:46  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:46  peiyongz
  + * sane_include
    *
    * Revision 1.9  2000/08/08 01:00:36  aruna1
    * detach functionality removed from TreeWalker
  @@ -119,8 +128,6 @@
    * nodes will be siblings and appear as direct children of the root node, no matter how
    * deeply nested the structure of the original document.
    *
  - * <p><b>"Experimental - subject to change"</b></p>
  - *
    */
   class CDOM_EXPORT DOM_TreeWalker {
       public:
  @@ -195,19 +202,21 @@
           /** @name Get functions. */
           //@{
           /**
  +         * The <code>root</code> node of the <code>TreeWalker</code>, as specified
  +         * when it was created.
  +         */
  +        DOM_Node          getRoot();
  +
  +        /**
             * Return which node types are presented via the DOM_TreeWalker.
             * These constants are defined in the DOM_NodeFilter interface.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           unsigned long   	getWhatToShow();
   
           /**
             * Return The filter used to screen nodes.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           DOM_NodeFilter*		getFilter();
   
  @@ -216,16 +225,12 @@
             * The value of this flag determines whether the children of entity reference
             * nodes are visible to the DOM_TreeWalker. If false, they will be skipped over.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           bool getExpandEntityReferences();
   
           /**
             * Return the node at which the DOM_TreeWalker is currently positioned.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           DOM_Node		getCurrentNode();
   
  @@ -235,8 +240,6 @@
             * node, or if it fails to find a visible ancestor node, this method retains the
             * current position and returns null.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           DOM_Node		parentNode();
   
  @@ -245,8 +248,6 @@
             * and returns the new node. If the current node has no children, returns
             * <code>null</code>, and retains the current node.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           DOM_Node		firstChild();
   
  @@ -255,8 +256,6 @@
             * returns the new node. If the current node has no children, returns
             * <code>null</code>, and retains the current node.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           DOM_Node		lastChild();
   
  @@ -265,8 +264,6 @@
             * node, and returns the new node. If the current node has no previous sibling,
             * returns <code>null</code>, and retains the current node.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           DOM_Node		previousSibling();
   
  @@ -275,19 +272,15 @@
             * and returns the new node. If the current node has no next sibling, returns
             * <code>null</code>, and retains the current node.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           DOM_Node		nextSibling();
   
           /**
             * Moves the <code>DOM_TreeWalker</code> to the previous visible node in document
             * order relative to the current node, and returns the new node. If the current
  -          * node has no previous node, 
  +          * node has no previous node,
             * or if the search for previousNode attempts to step upward from the DOM_TreeWalker's
  -          * root node, returns <code>null</code>, and retains the current node. 
  -          *
  -          * <p><b>"Experimental - subject to change"</b></p>
  +          * root node, returns <code>null</code>, and retains the current node.
             *
             */
           DOM_Node		previousNode();
  @@ -295,12 +288,10 @@
           /**
             * Moves the <code>DOM_TreeWalker</code> to the next visible node in document order
             * relative to the current node, and returns the new node. If the current node has
  -          * no next node, 
  +          * no next node,
             * or if the search for nextNode attempts to step upward from the DOM_TreeWalker's
             * root node, returns <code>null</code>, and retains the current node.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           DOM_Node		nextNode();
           //@}
  @@ -310,13 +301,11 @@
           /**
             * Set the node at which the DOM_TreeWalker is currently positioned.
             *
  -          * <p><b>"Experimental - subject to change"</b></p>
  -          *
             */
           void			setCurrentNode(DOM_Node currentNode);
           //@}
   
  -        
  +
       protected:
           DOM_TreeWalker(TreeWalkerImpl* impl);
   
  
  
  
  1.2       +19 -2     xml-xerces/c/src/xercesc/dom/ElementImpl.cpp
  
  Index: ElementImpl.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/ElementImpl.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ElementImpl.cpp	1 Feb 2002 22:21:47 -0000	1.1
  +++ ElementImpl.cpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -55,7 +55,7 @@
    */
   
   /*
  - * $Id: ElementImpl.cpp,v 1.1 2002/02/01 22:21:47 peiyongz Exp $
  + * $Id: ElementImpl.cpp,v 1.2 2002/02/04 20:03:48 tng Exp $
    */
   
   #include "DeepNodeListImpl.hpp"
  @@ -388,6 +388,23 @@
   {
       return new DeepNodeListImpl(this,fNamespaceURI, fLocalName);
   }
  +
  +bool ElementImpl::hasAttributes()
  +{
  +    return (attributes != null && attributes->getLength() != 0);
  +};
  +
  +bool ElementImpl::hasAttribute(const DOMString &name)
  +{
  +    return (getAttributeNode(name) != null);
  +};
  +
  +bool ElementImpl::hasAttributeNS(const DOMString &namespaceURI,
  +	const DOMString &localName)
  +{
  +    return (getAttributeNodeNS(namespaceURI, localName) != null);
  +};
  +
   
   // DOM_NamedNodeMap UTILITIES
   NamedNodeMapImpl *ElementImpl::NNM_cloneMap(NodeImpl *nnm_ownerNode)
  
  
  
  1.2       +5 -2      xml-xerces/c/src/xercesc/dom/ElementImpl.hpp
  
  Index: ElementImpl.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/ElementImpl.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ElementImpl.hpp	1 Feb 2002 22:21:47 -0000	1.1
  +++ ElementImpl.hpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -4,7 +4,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -58,7 +58,7 @@
    */
   
   /*
  - * $Id: ElementImpl.hpp,v 1.1 2002/02/01 22:21:47 peiyongz Exp $
  + * $Id: ElementImpl.hpp,v 1.2 2002/02/04 20:03:48 tng Exp $
    */
   
   //
  @@ -117,6 +117,9 @@
   	const DOMString &localName);
   
       virtual void setOwnerDocument(DocumentImpl *doc);
  +    virtual bool hasAttributes();
  +    virtual bool hasAttribute(const DOMString &name);
  +    virtual bool hasAttributeNS(const DOMString &namespaceURI, const DOMString &localName);
   
   	//Utils for the DOM_NamedNodeMap wrapper class
   	//All NamedNodeMap utils begin with NNM
  
  
  
  1.2       +7 -3      xml-xerces/c/src/xercesc/dom/NodeImpl.cpp
  
  Index: NodeImpl.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/NodeImpl.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- NodeImpl.cpp	1 Feb 2002 22:21:48 -0000	1.1
  +++ NodeImpl.cpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -55,7 +55,7 @@
    */
   
   /*
  - * $Id: NodeImpl.cpp,v 1.1 2002/02/01 22:21:48 peiyongz Exp $
  + * $Id: NodeImpl.cpp,v 1.2 2002/02/04 20:03:48 tng Exp $
    */
   
   // This class doesn't support having any children, and implements the behavior
  @@ -403,7 +403,7 @@
   };
   
   
  -bool NodeImpl::supports(const DOMString &feature, const DOMString &version)
  +bool NodeImpl::isSupported(const DOMString &feature, const DOMString &version)
   {
       return DOM_DOMImplementation::getImplementation().hasFeature(feature, version);
   }
  @@ -428,6 +428,10 @@
   {
       throw DOM_DOMException(DOM_DOMException::NAMESPACE_ERR,null);
   }
  +
  +bool NodeImpl::hasAttributes() {
  +    return 0;                   // overridden in ElementImpl
  +};
   
   
   DOMString NodeImpl::getXmlnsString() {
  
  
  
  1.2       +5 -4      xml-xerces/c/src/xercesc/dom/NodeImpl.hpp
  
  Index: NodeImpl.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/NodeImpl.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- NodeImpl.hpp	1 Feb 2002 22:21:48 -0000	1.1
  +++ NodeImpl.hpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -4,7 +4,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -58,7 +58,7 @@
    */
   
   /*
  - * $Id: NodeImpl.hpp,v 1.1 2002/02/01 22:21:48 peiyongz Exp $
  + * $Id: NodeImpl.hpp,v 1.2 2002/02/04 20:03:48 tng Exp $
    */
   
   //
  @@ -181,11 +181,12 @@
   
       //Introduced in DOM Level 2
       virtual void	normalize();
  -    virtual bool	supports(const DOMString &feature, const DOMString &version);
  +    virtual bool	isSupported(const DOMString &feature, const DOMString &version);
       virtual DOMString	getNamespaceURI();
       virtual DOMString   getPrefix();
       virtual DOMString   getLocalName();
       virtual void        setPrefix(const DOMString &prefix);
  +    virtual bool        hasAttributes();
   
   protected:
       //Utility, not part of DOM Level 2 API
  @@ -298,7 +299,7 @@
       // -----------------------------------------------------------------------
       //  Notification that lazy data has been deleted
       // -----------------------------------------------------------------------
  -	static void reinitNodeImpl();   
  +	static void reinitNodeImpl();
   
   };
   
  
  
  
  1.2       +8 -2      xml-xerces/c/src/xercesc/dom/NodeIteratorImpl.cpp
  
  Index: NodeIteratorImpl.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/NodeIteratorImpl.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- NodeIteratorImpl.cpp	1 Feb 2002 22:21:48 -0000	1.1
  +++ NodeIteratorImpl.cpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: NodeIteratorImpl.cpp,v $
  - * Revision 1.1  2002/02/01 22:21:48  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:48  peiyongz
  + * sane_include
    *
    * Revision 1.12  2001/10/18 18:01:29  tng
    * [Bug 1699] Redirect "delete this" to a temp ptr to bypass AIX xlC v5 optimization memory leak problem.
  @@ -177,7 +186,10 @@
       return *this;
   }
   
  -
  +/** Return the Root Node. */
  +DOM_Node NodeIteratorImpl::getRoot () {
  +    return fRoot;
  +}
   
   // Implementation Note: Note that the iterator looks at whatToShow
   // and filter values at each call, and therefore one _could_ add
  
  
  
  1.2       +7 -3      xml-xerces/c/src/xercesc/dom/NodeIteratorImpl.hpp
  
  Index: NodeIteratorImpl.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/NodeIteratorImpl.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- NodeIteratorImpl.hpp	1 Feb 2002 22:21:48 -0000	1.1
  +++ NodeIteratorImpl.hpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: NodeIteratorImpl.hpp,v $
  - * Revision 1.1  2002/02/01 22:21:48  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:48  peiyongz
  + * sane_include
    *
    * Revision 1.5  2000/02/24 20:11:30  abagchi
    * Swat for removing Log from API docs
  @@ -101,8 +110,8 @@
   	public:
   		virtual ~NodeIteratorImpl ();
   		NodeIteratorImpl (
  -            DOM_Node root, 
  -            unsigned long whatToShow, 
  +            DOM_Node root,
  +            unsigned long whatToShow,
               DOM_NodeFilter* nodeFilter,
               bool expandEntityRef);
   
  @@ -110,6 +119,7 @@
   		
           NodeIteratorImpl& operator= (const NodeIteratorImpl& other);
   		
  +		DOM_Node getRoot ();
           unsigned long getWhatToShow ();
   		DOM_NodeFilter* getFilter ();
   
  
  
  
  1.2       +10 -1     xml-xerces/c/src/xercesc/dom/TreeWalkerImpl.cpp
  
  Index: TreeWalkerImpl.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/TreeWalkerImpl.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TreeWalkerImpl.cpp	1 Feb 2002 22:21:49 -0000	1.1
  +++ TreeWalkerImpl.cpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: TreeWalkerImpl.cpp,v $
  - * Revision 1.1  2002/02/01 22:21:49  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:49  peiyongz
  + * sane_include
    *
    * Revision 1.9  2001/10/18 18:01:29  tng
    * [Bug 1699] Redirect "delete this" to a temp ptr to bypass AIX xlC v5 optimization memory leak problem.
  @@ -168,6 +177,12 @@
       delete ptr;
   }
   
  +
  +/** Return the Root Node. */
  +DOM_Node TreeWalkerImpl::getRoot () {
  +
  +    return fRoot;
  +}
   
   /** Return the whatToShow value */
   unsigned long TreeWalkerImpl::getWhatToShow () {
  
  
  
  1.2       +10 -4     xml-xerces/c/src/xercesc/dom/TreeWalkerImpl.hpp
  
  Index: TreeWalkerImpl.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/TreeWalkerImpl.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TreeWalkerImpl.hpp	1 Feb 2002 22:21:49 -0000	1.1
  +++ TreeWalkerImpl.hpp	4 Feb 2002 20:03:48 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -56,8 +56,17 @@
   
   /*
    * $Log: TreeWalkerImpl.hpp,v $
  - * Revision 1.1  2002/02/01 22:21:49  peiyongz
  - * Initial revision
  + * Revision 1.2  2002/02/04 20:03:48  tng
  + * Add DOM Level missing functions:
  + * 1. NodeIterator::getRoot
  + * 2. TreeWalker::getRoot
  + * 3. Element::hasAttribute
  + * 4. Element::hasAttributeNS
  + * 5. Node::hasAttributes
  + * 6. Node::isSupported
  + *
  + * Revision 1.1.1.1  2002/02/01 22:21:49  peiyongz
  + * sane_include
    *
    * Revision 1.6  2000/08/08 01:00:37  aruna1
    * detach functionality removed from TreeWalker
  @@ -102,13 +111,16 @@
   
       /** Public constructor */
       TreeWalkerImpl (
  -        DOM_Node root, 
  -        unsigned long whatToShow, 
  +        DOM_Node root,
  +        unsigned long whatToShow,
           DOM_NodeFilter* nodeFilter,
           bool expandEntityRef);
       TreeWalkerImpl (const TreeWalkerImpl& twi);
       TreeWalkerImpl& operator= (const TreeWalkerImpl& twi);
   
  +    // Return the root DOM_Node.
  +    DOM_Node getRoot ();
  +
       // Return the whatToShow value.
       unsigned long  getWhatToShow ();
   
  @@ -158,7 +170,7 @@
       DOM_Node nextNode ();
   
       void unreferenced ();
  -    
  +
       // Get the expandEntity reference flag.
       bool getExpandEntityReferences();
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org