You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by sb...@locus.apache.org on 2000/08/01 01:56:14 UTC

cvs commit: xml-xalan/src/org/apache/xalan/xslt/extensions Nodeset.java

sboag       00/07/31 16:56:14

  Modified:    src/org/apache/xalan/xslt ResultTreeFrag.java
                        UnImplNode.java
               src/org/apache/xalan/xslt/extensions Nodeset.java
  Log:
  Fixes for hasAttributes addition in DOM2.  Patch in Nodeset.java attributed to rubys@us.ibm.com.
  
  Revision  Changes    Path
  1.7       +1 -1      xml-xalan/src/org/apache/xalan/xslt/ResultTreeFrag.java
  
  Index: ResultTreeFrag.java
  ===================================================================
  RCS file: /home/cvs/xml-xalan/src/org/apache/xalan/xslt/ResultTreeFrag.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- ResultTreeFrag.java	2000/03/29 03:51:58	1.6
  +++ ResultTreeFrag.java	2000/07/31 23:56:12	1.7
  @@ -67,7 +67,7 @@
    * <meta name="usage" content="internal"/>
    * Container of a result tree fragment.
    */
  -public class ResultTreeFrag implements DocumentFragment
  +public class ResultTreeFrag extends UnImplNode implements DocumentFragment
   {
     Document m_docFactory;
     MutableNodeList m_children;
  
  
  
  1.10      +3 -3      xml-xalan/src/org/apache/xalan/xslt/UnImplNode.java
  
  Index: UnImplNode.java
  ===================================================================
  RCS file: /home/cvs/xml-xalan/src/org/apache/xalan/xslt/UnImplNode.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- UnImplNode.java	2000/07/21 14:48:14	1.9
  +++ UnImplNode.java	2000/07/31 23:56:13	1.10
  @@ -64,9 +64,9 @@
    * <meta name="usage" content="internal"/>
    * To be subclassed by classes that wish to fake being nodes.
    */
  -class UnImplNode implements Element, NodeList
  +public class UnImplNode implements Element, NodeList
   {
  -  UnImplNode()
  +  public UnImplNode()
     {
     }
   
  @@ -85,7 +85,7 @@
     {
   	  throw new RuntimeException(XSLMessages.createMessage(msg, args)); //"UnImplNode error: "+msg);
     }
  -
  +  
     /** Unimplemented. */
     public Node               appendChild(Node newChild)
       throws DOMException
  
  
  
  1.2       +11 -3     xml-xalan/src/org/apache/xalan/xslt/extensions/Nodeset.java
  
  Index: Nodeset.java
  ===================================================================
  RCS file: /home/cvs/xml-xalan/src/org/apache/xalan/xslt/extensions/Nodeset.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Nodeset.java	2000/07/19 14:30:37	1.1
  +++ Nodeset.java	2000/07/31 23:56:14	1.2
  @@ -68,9 +68,10 @@
    * fragment is actually a Document root. 
    * PR:DMAN4M6N29 Submitted by:<ga...@firstech.com>
    */
  -public class Nodeset {
  -
  -  private static class RootNode implements DocumentFragment {
  +public class Nodeset 
  +{
  +  private static class RootNode implements DocumentFragment 
  +  {
       private DocumentFragment actualFrag;
       private RootNode(DocumentFragment actualFragP) {
         this.actualFrag = actualFragP;
  @@ -80,6 +81,13 @@
       }
       public Node cloneNode(boolean deep) {
         return this.actualFrag.cloneNode(deep);
  +    }
  +    public boolean hasAttributes() {
  +      // attribution: patch submited by rubys@us.ibm.com
  +      // long term correct fix:
  +      //   return this.actualFrag.hasAttributes();
  +      // version that works with Xerces 1.1.2 and prior:
  +      return (this.actualFrag.getAttributes().getLength() != 0);
       }
       public NamedNodeMap getAttributes() {
         return this.actualFrag.getAttributes();