You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by je...@locus.apache.org on 2000/04/18 00:54:51 UTC

cvs commit: xml-xerces/java/src/org/apache/xerces/readers AbstractCharReader.java DefaultEntityHandler.java StreamingCharReader.java StringReader.java UCSReader.java UTF8Reader.java UTF8Recognizer.java XMLEntityHandler.java

jeffreyr    00/04/17 15:54:51

  Modified:    java/src/org/apache/xerces/readers Tag: schemawork
                        AbstractCharReader.java DefaultEntityHandler.java
                        StreamingCharReader.java StringReader.java
                        UCSReader.java UTF8Reader.java UTF8Recognizer.java
                        XMLEntityHandler.java
  Log:
  Andy QName support
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.3.2.1   +22 -14    xml-xerces/java/src/org/apache/xerces/readers/AbstractCharReader.java
  
  Index: AbstractCharReader.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/readers/AbstractCharReader.java,v
  retrieving revision 1.3
  retrieving revision 1.3.2.1
  diff -u -r1.3 -r1.3.2.1
  --- AbstractCharReader.java	2000/04/04 20:34:33	1.3
  +++ AbstractCharReader.java	2000/04/17 22:54:48	1.3.2.1
  @@ -59,6 +59,7 @@
   
   import org.apache.xerces.framework.XMLErrorReporter;
   import org.apache.xerces.utils.CharDataChunk;
  +import org.apache.xerces.utils.QName;
   import org.apache.xerces.utils.StringHasher;
   import org.apache.xerces.utils.StringPool;
   import org.apache.xerces.utils.XMLCharacterProperties;
  @@ -74,7 +75,7 @@
    * a character stream (java.io.Reader).  The UTF8CharReader performs
    * its own UTF-8 transcoding to fill in the data from an InputStream.
    *
  - * @version $Id: AbstractCharReader.java,v 1.3 2000/04/04 20:34:33 andyc Exp $
  + * @version $Id: AbstractCharReader.java,v 1.3.2.1 2000/04/17 22:54:48 jeffreyr Exp $
    */
   abstract class AbstractCharReader extends XMLEntityReader {
   
  @@ -771,20 +772,26 @@
       /**
        *
        */
  -    public int scanQName(char fastcheck) throws Exception {
  +    public void scanQName(char fastcheck, QName qname) throws Exception {
           int ch = fMostRecentChar;
           if (ch < 0x80) {
  -            if (XMLCharacterProperties.fgAsciiInitialNameChar[ch] == 0)
  -                return -1;
  -            if (ch == ':')
  -                return -1;
  +            if (XMLCharacterProperties.fgAsciiInitialNameChar[ch] == 0) {
  +                qname.clear();
  +                return;
  +            }
  +            if (ch == ':') {
  +                qname.clear();
  +                return;
  +            }
           } else {
               if (!fCalledCharPropInit) {
                   XMLCharacterProperties.initCharFlags();
                   fCalledCharPropInit = true;
               }
  -            if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0)
  -                return -1;
  +            if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0) {
  +                qname.clear();
  +                return;
  +            }
           }
           int offset = fCurrentOffset;
           int index = fCurrentIndex;
  @@ -864,11 +871,12 @@
           fMostRecentChar = ch;
           hashcode = StringHasher.finishHash(hashcode);
           int length = fCurrentOffset - offset;
  -        int nameIndex = fCurrentChunk.addSymbol(offset, length, hashcode);
  -        int prefixIndex = prefixend == -1 ? -1 : addSymbol(offset, prefixend - offset);
  -        int localpartIndex = prefixend == -1 ? nameIndex : addSymbol(prefixend + 1, fCurrentOffset - (prefixend + 1));
  -        return fStringPool.addQName(nameIndex, prefixIndex, localpartIndex);
  -    }
  +        qname.rawname = fCurrentChunk.addSymbol(offset, length, hashcode);
  +        qname.prefix = prefixend == -1 ? -1 : addSymbol(offset, prefixend - offset);
  +        qname.localpart = prefixend == -1 ? qname.rawname : addSymbol(prefixend + 1, fCurrentOffset - (prefixend + 1));
  +        qname.uri = -1;
  +
  +    } // scanQName(char,QName)
   
       //
       // [14] CharData ::= [^<&]* - ([^<&]* ']]>' [^<&]*)
  @@ -876,7 +884,7 @@
       /**
        *
        */
  -    public int scanContent(int elementType) throws Exception {
  +    public int scanContent(QName element) throws Exception {
           if (fCallClearPreviousChunk && fCurrentChunk.clearPreviousChunk())
               fCallClearPreviousChunk = false;
           int charDataOffset = fCurrentOffset;
  
  
  
  1.1.2.1   +5 -4      xml-xerces/java/src/org/apache/xerces/readers/DefaultEntityHandler.java
  
  Index: DefaultEntityHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/readers/DefaultEntityHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.1.2.1
  diff -u -r1.1 -r1.1.2.1
  --- DefaultEntityHandler.java	2000/04/04 20:35:57	1.1
  +++ DefaultEntityHandler.java	2000/04/17 22:54:48	1.1.2.1
  @@ -66,6 +66,7 @@
   
   import org.apache.xerces.framework.XMLErrorReporter;
   import org.apache.xerces.utils.ImplementationMessages;
  +import org.apache.xerces.utils.QName;
   import org.apache.xerces.utils.StringPool;
   import org.apache.xerces.utils.XMLCharacterProperties;
   import org.apache.xerces.utils.XMLMessages;
  @@ -78,7 +79,7 @@
   /**
    * Default entity handler implementation.
    *
  - * @version $Id: DefaultEntityHandler.java,v 1.1 2000/04/04 20:35:57 andyc Exp $
  + * @version $Id: DefaultEntityHandler.java,v 1.1.2.1 2000/04/17 22:54:48 jeffreyr Exp $
    */
   public class DefaultEntityHandler 
       implements XMLEntityHandler, XMLEntityHandler.DTDHandler {
  @@ -1080,13 +1081,13 @@
           public boolean scanExpectedName(char fastcheck, StringPool.CharArrayRange expectedName) {
               return false;
           }
  -        public int scanQName(char fastcheck) {
  -            return -1;
  +        public void scanQName(char fastcheck, QName qname) {
  +            qname.clear();
           }
           public int scanName(char fastcheck) {
               return -1;
           }
  -        public int scanContent(int elementType) throws Exception {
  +        public int scanContent(QName element) throws Exception {
               return XMLEntityHandler.CONTENT_RESULT_INVALID_CHAR;
           }
       }
  
  
  
  1.3.2.1   +22 -14    xml-xerces/java/src/org/apache/xerces/readers/StreamingCharReader.java
  
  Index: StreamingCharReader.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/readers/StreamingCharReader.java,v
  retrieving revision 1.3
  retrieving revision 1.3.2.1
  diff -u -r1.3 -r1.3.2.1
  --- StreamingCharReader.java	2000/04/04 21:14:24	1.3
  +++ StreamingCharReader.java	2000/04/17 22:54:49	1.3.2.1
  @@ -59,6 +59,7 @@
   
   import org.apache.xerces.framework.XMLErrorReporter;
   import org.apache.xerces.utils.CharDataChunk;
  +import org.apache.xerces.utils.QName;
   import org.apache.xerces.utils.StringHasher;
   import org.apache.xerces.utils.StringPool;
   import org.apache.xerces.utils.XMLCharacterProperties;
  @@ -71,7 +72,7 @@
    * An reader class for applications that need to process input data as 
    * it arrives on the stream.
    * 
  - * @version $Id: StreamingCharReader.java,v 1.3 2000/04/04 21:14:24 andyc Exp $
  + * @version $Id: StreamingCharReader.java,v 1.3.2.1 2000/04/17 22:54:49 jeffreyr Exp $
    */
   public class StreamingCharReader extends XMLEntityReader {
   
  @@ -694,20 +695,26 @@
       /**
        *
        */
  -    public int scanQName(char fastcheck) throws Exception {
  +    public void scanQName(char fastcheck, QName qname) throws Exception {
           int ch = fMostRecentChar;
           if (ch < 0x80) {
  -            if (XMLCharacterProperties.fgAsciiInitialNameChar[ch] == 0)
  -                return -1;
  -            if (ch == ':')
  -                return -1;
  +            if (XMLCharacterProperties.fgAsciiInitialNameChar[ch] == 0) {
  +                qname.clear();
  +                return;
  +            }
  +            if (ch == ':') {
  +                qname.clear();
  +                return;
  +            }
           } else {
               if (!fCalledCharPropInit) {
                   XMLCharacterProperties.initCharFlags();
                   fCalledCharPropInit = true;
               }
  -            if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0)
  -                return -1;
  +            if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0) {
  +                qname.clear();
  +                return;
  +            }
           }
           int offset = fCurrentOffset;
           fCharacterCounter++;
  @@ -771,11 +778,12 @@
           }
           hashcode = StringHasher.finishHash(hashcode);
           int length = fCurrentOffset - offset;
  -        int nameIndex = fCurrentChunk.addSymbol(offset, length, hashcode);
  -        int prefixIndex = prefixend == -1 ? -1 : addSymbol(offset, prefixend - offset);
  -        int localpartIndex = prefixend == -1 ? nameIndex : addSymbol(prefixend + 1, fCurrentOffset - (prefixend + 1));
  -        return fStringPool.addQName(nameIndex, prefixIndex, localpartIndex);
  -    }
  +        qname.rawname = fCurrentChunk.addSymbol(offset, length, hashcode);
  +        qname.prefix = prefixend == -1 ? -1 : addSymbol(offset, prefixend - offset);
  +        qname.localpart = prefixend == -1 ? qname.rawname : addSymbol(prefixend + 1, fCurrentOffset - (prefixend + 1));
  +        qname.uri = -1;
  +
  +    } // scanQName(char,QName)
   
       //
       // [14] CharData ::= [^<&]* - ([^<&]* ']]>' [^<&]*)
  @@ -783,7 +791,7 @@
       /**
        *
        */
  -    public int scanContent(int elementType) throws Exception {
  +    public int scanContent(QName element) throws Exception {
           if (fCallClearPreviousChunk && fCurrentChunk.clearPreviousChunk())
               fCallClearPreviousChunk = false;
           int charDataOffset = fCurrentOffset;
  
  
  
  1.3.2.1   +24 -14    xml-xerces/java/src/org/apache/xerces/readers/StringReader.java
  
  Index: StringReader.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/readers/StringReader.java,v
  retrieving revision 1.3
  retrieving revision 1.3.2.1
  diff -u -r1.3 -r1.3.2.1
  --- StringReader.java	2000/04/04 21:14:24	1.3
  +++ StringReader.java	2000/04/17 22:54:49	1.3.2.1
  @@ -58,6 +58,7 @@
   package org.apache.xerces.readers;
   
   import org.apache.xerces.framework.XMLErrorReporter;
  +import org.apache.xerces.utils.QName;
   import org.apache.xerces.utils.StringPool;
   import org.apache.xerces.utils.XMLCharacterProperties;
   
  @@ -79,7 +80,7 @@
    * free list and reuse those instances to process other
    * strings.
    *
  - * @version $Id: StringReader.java,v 1.3 2000/04/04 21:14:24 andyc Exp $
  + * @version $Id: StringReader.java,v 1.3.2.1 2000/04/17 22:54:49 jeffreyr Exp $
    */
   final class StringReader extends XMLEntityReader {
       /**
  @@ -649,19 +650,21 @@
       //
       //
       //
  -    public int scanQName(char fastcheck) throws Exception {
  -        // DEFECT !! no code for namespace support
  +    public void scanQName(char fastcheck, QName qname) throws Exception {
           int ch = fMostRecentChar;
           if (ch == -1) {
  -            return changeReaders().scanQName(fastcheck);
  +            changeReaders().scanQName(fastcheck, qname);
  +            return;
           }
           if (!fCalledCharPropInit) {
               XMLCharacterProperties.initCharFlags();
               fCalledCharPropInit = true;
           }
           int nameOffset = fCurrentOffset;
  -        if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0)
  -            return -1;
  +        if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0) {
  +            qname.clear();
  +            return;
  +        }
           while (true) {
               ch = loadNextChar();
               if (fastcheck == ch)
  @@ -671,9 +674,16 @@
               if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_NameCharFlag) == 0)
                   break;
           }
  -        int nameIndex = fStringPool.addSymbol(fData.substring(nameOffset, fCurrentOffset));
  -        return nameIndex;
  -    }
  +        qname.clear();
  +        qname.rawname = fStringPool.addSymbol(fData.substring(nameOffset, fCurrentOffset));
  +        int index = fData.indexOf(':', nameOffset);
  +        if (index != -1) {
  +            qname.prefix = fStringPool.addSymbol(fData.substring(nameOffset, index));
  +        }
  +        qname.localpart = fStringPool.addSymbol(fData.substring(index, fCurrentOffset));
  +
  +    } // scanQName(char,QName)
  +
       //
       //
       //
  @@ -780,10 +790,10 @@
               return XMLEntityHandler.CONTENT_RESULT_START_OF_ENTITYREF;
           }
       }
  -    public int scanContent(int elementType) throws Exception {
  +    public int scanContent(QName element) throws Exception {
           int ch = fMostRecentChar;
           if (ch == -1) {
  -            return changeReaders().scanContent(elementType);
  +            return changeReaders().scanContent(element);
           }
           int offset = fCurrentOffset;
           if (ch < 0x80) {
  @@ -818,7 +828,7 @@
                       ch = loadNextChar();
                       if (ch == -1) {
                           callCharDataHandler(offset, fEndOffset, true);
  -                        return changeReaders().scanContent(elementType);
  +                        return changeReaders().scanContent(element);
                       }
                   } while (ch == 0x20 || ch == 0x0A || ch == 0x0D || ch == 0x09);
                   if (ch < 0x80) {
  @@ -871,7 +881,7 @@
           while (true) {
               if (ch == -1) {
                   callCharDataHandler(offset, fEndOffset, false);
  -                return changeReaders().scanContent(elementType);
  +                return changeReaders().scanContent(element);
               }
               if (ch >= 0x80)
                   break;
  @@ -921,7 +931,7 @@
               }
               if (ch == -1) {
                   callCharDataHandler(offset, fCurrentOffset, false);
  -                return changeReaders().scanContent(elementType);
  +                return changeReaders().scanContent(element);
               }
           }
       }
  
  
  
  1.3.2.1   +21 -12    xml-xerces/java/src/org/apache/xerces/readers/UCSReader.java
  
  Index: UCSReader.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/readers/UCSReader.java,v
  retrieving revision 1.3
  retrieving revision 1.3.2.1
  diff -u -r1.3 -r1.3.2.1
  --- UCSReader.java	2000/04/04 21:14:24	1.3
  +++ UCSReader.java	2000/04/17 22:54:49	1.3.2.1
  @@ -60,6 +60,7 @@
   import org.apache.xerces.framework.XMLErrorReporter;
   import org.apache.xerces.utils.ChunkyByteArray;
   import org.apache.xerces.utils.ChunkyCharArray;
  +import org.apache.xerces.utils.QName;
   import org.apache.xerces.utils.StringHasher;
   import org.apache.xerces.utils.StringPool;
   import org.apache.xerces.utils.XMLCharacterProperties;
  @@ -74,7 +75,7 @@
    * could take advantage of the system design to improve performance and reduce
    * resource consumption, but the actual performance tuning remains to be done.
    *
  - * @version $Id: UCSReader.java,v 1.3 2000/04/04 21:14:24 andyc Exp $
  + * @version $Id: UCSReader.java,v 1.3.2.1 2000/04/17 22:54:49 jeffreyr Exp $
    */
   final class UCSReader extends XMLEntityReader implements StringPool.StringProducer {
   
  @@ -656,16 +657,24 @@
           // DEFECT !! check name against expected name
           return true;
       }
  -    public int scanQName(char fastcheck) throws Exception {
  -        // DEFECT !! no code
  +
  +    public void scanQName(char fastcheck, QName qname) throws Exception {
  +
  +        // DEFECT !! no code // Defect #126
           int nameOffset = fCurrentOffset;
           skipPastName(fastcheck);
           int nameLength = fCurrentOffset - nameOffset;
  -        if (nameLength == 0)
  -            return -1;
  -        int nameIndex = addSymbol(nameOffset, nameLength);
  -        return nameIndex;
  -    }
  +        if (nameLength == 0) {
  +            qname.clear();
  +            return;
  +        }
  +        qname.prefix = -1;
  +        qname.localpart = -1;
  +        qname.rawname = addSymbol(nameOffset, nameLength);
  +        qname.uri = -1;
  +
  +    } // scanQName(char,QName)
  +
       public int scanName(char fastcheck) throws Exception {
           int nameOffset = fCurrentOffset;
           skipPastName(fastcheck);
  @@ -759,7 +768,7 @@
               return XMLEntityHandler.CONTENT_RESULT_START_OF_ENTITYREF;
           }
       }
  -    public int scanContent(int elementType) throws Exception {
  +    public int scanContent(QName element) throws Exception {
           int offset = fCurrentOffset;
           int ch = getChar(fCurrentOffset);
           fCurrentOffset += fBytesPerChar;
  @@ -771,7 +780,7 @@
           if (ch < 0x80) {
               if (ch == -1) {
                   fCurrentOffset -= fBytesPerChar;
  -                return changeReaders().scanContent(elementType); // REVISIT - not quite...
  +                return changeReaders().scanContent(element); // REVISIT - not quite...
               }
               prop = XMLCharacterProperties.fgCharFlags[ch];
               if ((prop & XMLCharacterProperties.E_CharDataFlag) == 0 && ch != 0x0A && ch != 0x0D) {
  @@ -813,7 +822,7 @@
                       if (ch == -1) {
                           fCurrentOffset -= fBytesPerChar;
                           callCharDataHandler(offset, fCurrentOffset - offset, true);
  -                        return changeReaders().scanContent(elementType); // REVISIT - not quite...
  +                        return changeReaders().scanContent(element); // REVISIT - not quite...
                       }
                       prop = XMLCharacterProperties.fgCharFlags[ch];
                       if ((prop & XMLCharacterProperties.E_CharDataFlag) == 0) {
  @@ -886,7 +895,7 @@
                   if (ch == -1) {
                       fCurrentOffset -= fBytesPerChar;
                       callCharDataHandler(offset, fCurrentOffset - offset, false);
  -                    return changeReaders().scanContent(elementType); // REVISIT - not quite...
  +                    return changeReaders().scanContent(element); // REVISIT - not quite...
                   }
                   prop = XMLCharacterProperties.fgCharFlags[ch];
                   if ((prop & XMLCharacterProperties.E_CharDataFlag) == 0) {
  
  
  
  1.4.2.1   +30 -20    xml-xerces/java/src/org/apache/xerces/readers/UTF8Reader.java
  
  Index: UTF8Reader.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/readers/UTF8Reader.java,v
  retrieving revision 1.4
  retrieving revision 1.4.2.1
  diff -u -r1.4 -r1.4.2.1
  --- UTF8Reader.java	2000/04/04 21:14:24	1.4
  +++ UTF8Reader.java	2000/04/17 22:54:49	1.4.2.1
  @@ -58,6 +58,7 @@
   package org.apache.xerces.readers;
   
   import org.apache.xerces.framework.XMLErrorReporter;
  +import org.apache.xerces.utils.QName;
   import org.apache.xerces.utils.StringPool;
   import org.apache.xerces.utils.SymbolCache;
   import org.apache.xerces.utils.UTF8DataChunk;
  @@ -87,7 +88,7 @@
    * the SUN java runtime compiler (JIT) and the code here has been
    * carefully "crafted" to avoid those problems.
    * 
  - * @version $Id: UTF8Reader.java,v 1.4 2000/04/04 21:14:24 andyc Exp $
  + * @version $Id: UTF8Reader.java,v 1.4.2.1 2000/04/17 22:54:49 jeffreyr Exp $
    */
   final class UTF8Reader extends XMLEntityReader {
       //
  @@ -1287,20 +1288,28 @@
           skipPastNmtoken(fastcheck);
           return false;
       }
  -    public int scanQName(char fastcheck) throws Exception {
  +
  +    public void scanQName(char fastcheck, QName qname) throws Exception {
  +
           int ch = fMostRecentByte;
           if (ch < 0x80) {
  -            if (XMLCharacterProperties.fgAsciiInitialNameChar[ch] == 0)
  -                return -1;
  -            if (ch == ':')
  -                return -1;
  +            if (XMLCharacterProperties.fgAsciiInitialNameChar[ch] == 0) {
  +                qname.clear();
  +                return;
  +            }
  +            if (ch == ':') {
  +                qname.clear();
  +                return;
  +            }
           } else {
               if (!fCalledCharPropInit) {
                   XMLCharacterProperties.initCharFlags();
                   fCalledCharPropInit = true;
               }
  -            if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0)
  -                return -1;
  +            if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0) {
  +                qname.clear();
  +                return;
  +            }
           }
           int offset = fCurrentOffset;
           int index = fCurrentIndex;
  @@ -1373,12 +1382,13 @@
           fCurrentIndex = index;
           fMostRecentByte = ch;
           int length = fCurrentOffset - offset;
  -        int nameIndex = addSymbol(offset, length);
  -        int prefixIndex = prefixend == -1 ? -1 : addSymbol(offset, prefixend - offset);
  -        int localpartIndex = prefixend == -1 ? nameIndex : addSymbol(prefixend + 1, fCurrentOffset - (prefixend + 1));
  -        nameIndex = fStringPool.addQName(nameIndex, prefixIndex, localpartIndex);
  -        return nameIndex;
  -    }
  +        qname.rawname = addSymbol(offset, length);
  +        qname.prefix = prefixend == -1 ? -1 : addSymbol(offset, prefixend - offset);
  +        qname.localpart = prefixend == -1 ? qname.rawname : addSymbol(prefixend + 1, fCurrentOffset - (prefixend + 1));
  +        qname.uri = -1;
  +
  +    } // scanQName(char,QName)
  +
       private int getMultiByteSymbolChar(int b0) throws Exception {
           //
           // REVISIT - optimize this with in-buffer lookahead.
  @@ -1804,7 +1814,7 @@
       //
       // [14] CharData ::= [^<&]* - ([^<&]* ']]>' [^<&]*)
       //
  -    private int recognizeMarkup(int b0, int elementType) throws Exception {
  +    private int recognizeMarkup(int b0, QName element) throws Exception {
           switch (b0) {
           case 0:
               return XMLEntityHandler.CONTENT_RESULT_MARKUP_END_OF_INPUT;
  @@ -1873,7 +1883,7 @@
                           b0 = (fMostRecentByte = fMostRecentData[fCurrentIndex] & 0xFF);
                   }
               }
  -            int expectedName = elementType;
  +            int expectedName = element.rawname;
               fStringPool.getCharArrayRange(expectedName, fCharArrayRange);
               char[] expected = fCharArrayRange.chars;
               int offset = fCharArrayRange.offset;
  @@ -2027,7 +2037,7 @@
               return XMLEntityHandler.CONTENT_RESULT_START_OF_ENTITYREF;
           }
       }
  -    public int scanContent(int elementType) throws Exception {
  +    public int scanContent(QName element) throws Exception {
           if (fCallClearPreviousChunk && fCurrentChunk.clearPreviousChunk())
               fCallClearPreviousChunk = false;
           fCharDataLength = 0;
  @@ -2085,7 +2095,7 @@
                       }
                   }
                   if (!fInCDSect) {
  -                    return recognizeMarkup(ch, elementType);
  +                    return recognizeMarkup(ch, element);
                   }
                   if (fSendCharDataAsCharArray)
                       appendCharData('<');
  @@ -2238,7 +2248,7 @@
                                           ch = (fMostRecentByte = fMostRecentData[fCurrentIndex] & 0xFF);
                                   }
                               }
  -                            return recognizeMarkup(ch, elementType);
  +                            return recognizeMarkup(ch, element);
                           }
                           if (fSendCharDataAsCharArray)
                               appendCharData('<');
  @@ -2367,7 +2377,7 @@
                                       ch = (fMostRecentByte = fMostRecentData[fCurrentIndex] & 0xFF);
                               }
                           }
  -                        return recognizeMarkup(ch, elementType);
  +                        return recognizeMarkup(ch, element);
                       }
                       if (fSendCharDataAsCharArray)
                           appendCharData('<');
  
  
  
  1.3.2.1   +3 -2      xml-xerces/java/src/org/apache/xerces/readers/UTF8Recognizer.java
  
  Index: UTF8Recognizer.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/readers/UTF8Recognizer.java,v
  retrieving revision 1.3
  retrieving revision 1.3.2.1
  diff -u -r1.3 -r1.3.2.1
  --- UTF8Recognizer.java	2000/02/08 02:43:57	1.3
  +++ UTF8Recognizer.java	2000/04/17 22:54:49	1.3.2.1
  @@ -59,6 +59,7 @@
   
   import org.apache.xerces.framework.XMLErrorReporter;
   import org.apache.xerces.utils.ChunkyByteArray;
  +import org.apache.xerces.utils.QName;
   import org.apache.xerces.utils.StringPool;
   
   import java.io.InputStreamReader;
  @@ -247,13 +248,13 @@
           public boolean scanExpectedName(char fastcheck, StringPool.CharArrayRange expectedName) throws IOException {
               throw new IOException("RDR002 cannot happen");
           }
  -        public int scanQName(char fastcheck) throws IOException {
  +        public void scanQName(char fastcheck, QName qname) throws IOException {
               throw new IOException("RDR002 cannot happen");
           }
           public int scanName(char fastcheck) throws IOException {
               throw new IOException("RDR002 cannot happen");
           }
  -        public int scanContent(int elementType) throws IOException {
  +        public int scanContent(QName element) throws IOException {
               throw new IOException("RDR002 cannot happen");
           }
       }
  
  
  
  1.2.2.1   +6 -3      xml-xerces/java/src/org/apache/xerces/readers/XMLEntityHandler.java
  
  Index: XMLEntityHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/readers/XMLEntityHandler.java,v
  retrieving revision 1.2
  retrieving revision 1.2.2.1
  diff -u -r1.2 -r1.2.2.1
  --- XMLEntityHandler.java	2000/04/04 21:14:25	1.2
  +++ XMLEntityHandler.java	2000/04/17 22:54:49	1.2.2.1
  @@ -58,6 +58,7 @@
   package org.apache.xerces.readers;
   
   import org.apache.xerces.framework.XMLErrorReporter;
  +import org.apache.xerces.utils.QName;
   import org.apache.xerces.utils.StringPool;
   import org.xml.sax.EntityResolver;
   import org.xml.sax.InputSource;
  @@ -69,7 +70,7 @@
    * is typically implemented by the "parser" class to provide entity
    * management services for the scanner classes.
    *
  - * @version $Id: XMLEntityHandler.java,v 1.2 2000/04/04 21:14:25 andyc Exp $
  + * @version $Id: XMLEntityHandler.java,v 1.2.2.1 2000/04/17 22:54:49 jeffreyr Exp $
    */
   public interface XMLEntityHandler extends Locator {
   
  @@ -639,11 +640,13 @@
            *
            * @param fastcheck A character that is not a legal name character that is provided as a
            *                  hint to the reader of a character likely to terminate the Name.
  +         * <!--
            * @return The <code>StringPool</code> handle for the QName that was scanned,
            *         or -1 if a name was not found at the current position within the input data.
  +         * -->
            * @exception java.lang.Exception
            */
  -        public int scanQName(char fastcheck) throws Exception;
  +        public void scanQName(char fastcheck, QName qname) throws Exception;
   
           /**
            * Skip through the input while we are looking at character data.
  @@ -666,6 +669,6 @@
            *   CONTENT_RESULT_REFERENCE_END_OF_INPUT
            * @exception java.lang.Exception
            */
  -        public int scanContent(int elementType) throws Exception;
  +        public int scanContent(QName element) throws Exception;
       }
   }