mkwan       2003/02/20 08:44:35

  Modified:    java/src/org/apache/xml/dtm/ref/sax2dtm Tag: XSLTC_DTM
                        SAX2DTM2.java
  Log:
  XSLTC_DTM performance work
  Do not use the expensive getPrefix() interface in SAX2DTM2.startElement().
  Just compare the lengths of the qname and localName. If the lengths are
  different, put the qname into the string pool.
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.16  +9 -2      
xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm/Attic/SAX2DTM2.java
  
  Index: SAX2DTM2.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm/Attic/SAX2DTM2.java,v
  retrieving revision 1.1.2.15
  retrieving revision 1.1.2.16
  diff -u -r1.1.2.15 -r1.1.2.16
  --- SAX2DTM2.java     19 Feb 2003 18:15:50 -0000      1.1.2.15
  +++ SAX2DTM2.java     20 Feb 2003 16:44:35 -0000      1.1.2.16
  @@ -1930,8 +1930,8 @@
       charactersFlush();
   
       int exName = m_expandedNameTable.getExpandedTypeID(uri, localName, 
DTM.ELEMENT_NODE);
  -    String prefix = getPrefix(qName, uri);
  -    int prefixIndex = (null != prefix)
  +    
  +    int prefixIndex = (qName.length() != localName.length())
                         ? m_valuesOrPrefixes.stringToIndex(qName) : 0;
   
       int elemNode = addNode(DTM.ELEMENT_NODE, exName,
  @@ -1946,6 +1946,7 @@
       int startDecls = m_contextIndexes.peek();
       int nDecls = m_prefixMappings.size();
       int prev = DTM.NULL;
  +    String prefix;
   
       if(!m_pastFirstElement)
       {
  @@ -2519,6 +2520,9 @@
       {
         int qnameIndex = m_dataOrQName.elementAt(nodeID);
   
  +      if (qnameIndex == 0)
  +        return extType.getLocalName();
  +      
         if (qnameIndex < 0)
         {
        qnameIndex = -qnameIndex;
  @@ -2576,6 +2580,9 @@
       {
         int qnameIndex = m_dataOrQName.elementAt(nodeID);
   
  +      if (qnameIndex == 0)
  +        return extType.getLocalName();
  +      
         if (qnameIndex < 0)
         {
        qnameIndex = -qnameIndex;
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to