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 [EMAIL PROTECTED]
  
  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:<[EMAIL PROTECTED]>
    */
  -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 [EMAIL PROTECTED]
  +      // 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();
  
  
  

Reply via email to