|
|||||||||
Home >> All >> org >> apache >> xerces >> [ readers overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: ![]() ![]() ![]() |
DETAIL: FIELD | CONSTR | METHOD |
org.apache.xerces.readers
Class StringReader

java.lang.Objectorg.apache.xerces.readers.XMLEntityReader
org.apache.xerces.readers.StringReader
- All Implemented Interfaces:
- XMLEntityHandler.EntityReader
- final class StringReader
- extends XMLEntityReader
Reader for processing internal entity replacement text.
This reader processes data contained within strings kept in the string pool. It provides the support for both general and parameter entities. The location support as we are processing the replacement text is somewhat poor and needs to be updated when "nested locations" have been implemented.
For efficiency, we return instances of this class to a free list and reuse those instances to process other strings.
- Version:
- $id$
Field Summary | |
private static char[] |
cdata_string
|
private boolean |
fCalledCharPropInit
|
protected int |
fCarriageReturnCounter
|
protected int |
fCharacterCounter
|
protected XMLEntityHandler.CharDataHandler |
fCharDataHandler
|
protected int |
fCurrentOffset
|
private java.lang.String |
fData
|
private int |
fEndOffset
|
protected XMLEntityHandler |
fEntityHandler
|
protected org.apache.xerces.framework.XMLErrorReporter |
fErrorReporter
|
static byte[] |
fgAsciiEntityValueChar
|
private static StringReader |
fgFreeReaders
|
protected boolean |
fInCDSect
|
protected int |
fLinefeedCounter
|
private int |
fMostRecentChar
|
private StringReader |
fNextFreeReader
|
protected boolean |
fSendCharDataAsCharArray
|
private org.apache.xerces.utils.StringPool |
fStringPool
|
private boolean |
hadTrailingSpace
|
private boolean |
oweTrailingSpace
|
Constructor Summary | |
private |
StringReader(XMLEntityHandler entityHandler,
org.apache.xerces.framework.XMLErrorReporter errorReporter,
boolean sendCharDataAsCharArray,
int lineNumber,
int columnNumber,
int stringHandle,
org.apache.xerces.utils.StringPool stringPool,
boolean addEnclosingSpaces)
|
Method Summary | |
int |
addString(int offset,
int length)
Add a string to the StringPool from the characters scanned using this
reader as described by offset and length . |
int |
addSymbol(int offset,
int length)
Add a symbol to the StringPool from the characters scanned using this
reader as described by offset and length . |
void |
append(XMLEntityHandler.CharBuffer charBuffer,
int offset,
int length)
Append the characters processed by this reader associated with offset and
length to the CharBuffer . |
private void |
callCharDataHandler(int offset,
int endOffset,
boolean isWhitespace)
|
XMLEntityHandler.EntityReader |
changeReaders()
This method is called by the reader subclasses at the end of input. |
static StringReader |
createStringReader(XMLEntityHandler entityHandler,
org.apache.xerces.framework.XMLErrorReporter errorReporter,
boolean sendCharDataAsCharArray,
int lineNumber,
int columnNumber,
int stringHandle,
org.apache.xerces.utils.StringPool stringPool,
boolean addEnclosingSpaces)
Allocate a string reader |
int |
currentOffset()
Return the current offset within this reader. |
int |
getColumnNumber()
Return the column number of the current position within the document that we are processing. |
boolean |
getInCDSect()
This method is provided for scanner implementations. |
int |
getLineNumber()
Return the line number of the current position within the document that we are processing. |
protected void |
init(XMLEntityHandler entityHandler,
org.apache.xerces.framework.XMLErrorReporter errorReporter,
boolean sendCharDataAsCharArray,
int lineNumber,
int columnNumber)
|
private void |
init(XMLEntityHandler entityHandler,
org.apache.xerces.framework.XMLErrorReporter errorReporter,
boolean sendCharDataAsCharArray,
int lineNumber,
int columnNumber,
int stringHandle,
org.apache.xerces.utils.StringPool stringPool,
boolean addEnclosingSpaces)
|
private int |
loadNextChar()
|
boolean |
lookingAtChar(char chr,
boolean skipPastChar)
Test that the current character is a ch character. |
boolean |
lookingAtSpace(boolean skipPastChar)
Test that the current character is a whitespace character. |
boolean |
lookingAtValidChar(boolean skipPastChar)
Test that the current character is valid. |
private int |
recognizeMarkup(int ch)
|
private int |
recognizeReference(int ch)
|
int |
scanAttValue(char qchar,
boolean asSymbol)
Scan an attribute value. |
int |
scanCharRef(boolean hex)
Scan a character reference. |
int |
scanContent(org.apache.xerces.utils.QName element)
Skip through the input while we are looking at character data. |
int |
scanEntityValue(int qchar,
boolean createString)
Scan an entity value. |
boolean |
scanExpectedName(char fastcheck,
org.apache.xerces.utils.StringPool.CharArrayRange expectedName)
Scan the name that is expected at the current position in the document. |
int |
scanInvalidChar()
Scan an invalid character. |
int |
scanName(char fastcheck)
Add a sequence of characters that match the XML definition of a Name to the StringPool . |
void |
scanQName(char fastcheck,
org.apache.xerces.utils.QName qname)
Add a sequence of characters that match the XML Namespaces definition of a QName to the StringPool . |
int |
scanStringLiteral()
Scan a string literal. |
void |
setInCDSect(boolean inCDSect)
This method is provided for scanner implementations. |
void |
skipPastName(char fastcheck)
Skip past a sequence of characters that match the XML definition of a Name. |
void |
skipPastNmtoken(char fastcheck)
Skip past a sequence of characters that match the XML definition of an Nmtoken. |
void |
skipPastSpaces()
Skip past whitespace characters starting at the current position. |
boolean |
skippedString(char[] s)
Skip past a sequence of characters that matches the specified character array. |
void |
skipToChar(char chr)
Advance through the input data up to the next ch character. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
fgAsciiEntityValueChar
public static final byte[] fgAsciiEntityValueChar
cdata_string
private static final char[] cdata_string
fStringPool
private org.apache.xerces.utils.StringPool fStringPool
fData
private java.lang.String fData
fEndOffset
private int fEndOffset
hadTrailingSpace
private boolean hadTrailingSpace
oweTrailingSpace
private boolean oweTrailingSpace
fMostRecentChar
private int fMostRecentChar
fNextFreeReader
private StringReader fNextFreeReader
fgFreeReaders
private static StringReader fgFreeReaders
fCalledCharPropInit
private boolean fCalledCharPropInit
fEntityHandler
protected XMLEntityHandler fEntityHandler
fErrorReporter
protected org.apache.xerces.framework.XMLErrorReporter fErrorReporter
fSendCharDataAsCharArray
protected boolean fSendCharDataAsCharArray
fCharDataHandler
protected XMLEntityHandler.CharDataHandler fCharDataHandler
fInCDSect
protected boolean fInCDSect
fCarriageReturnCounter
protected int fCarriageReturnCounter
fLinefeedCounter
protected int fLinefeedCounter
fCharacterCounter
protected int fCharacterCounter
fCurrentOffset
protected int fCurrentOffset
Constructor Detail |
StringReader
private StringReader(XMLEntityHandler entityHandler, org.apache.xerces.framework.XMLErrorReporter errorReporter, boolean sendCharDataAsCharArray, int lineNumber, int columnNumber, int stringHandle, org.apache.xerces.utils.StringPool stringPool, boolean addEnclosingSpaces)
Method Detail |
createStringReader
public static StringReader createStringReader(XMLEntityHandler entityHandler, org.apache.xerces.framework.XMLErrorReporter errorReporter, boolean sendCharDataAsCharArray, int lineNumber, int columnNumber, int stringHandle, org.apache.xerces.utils.StringPool stringPool, boolean addEnclosingSpaces)
- Allocate a string reader
init
private void init(XMLEntityHandler entityHandler, org.apache.xerces.framework.XMLErrorReporter errorReporter, boolean sendCharDataAsCharArray, int lineNumber, int columnNumber, int stringHandle, org.apache.xerces.utils.StringPool stringPool, boolean addEnclosingSpaces)
addString
public int addString(int offset, int length)
- Description copied from interface:
XMLEntityHandler.EntityReader
- Add a string to the
StringPool
from the characters scanned using this reader as described byoffset
andlength
.
addSymbol
public int addSymbol(int offset, int length)
- Description copied from interface:
XMLEntityHandler.EntityReader
- Add a symbol to the
StringPool
from the characters scanned using this reader as described byoffset
andlength
.
append
public void append(XMLEntityHandler.CharBuffer charBuffer, int offset, int length)
- Description copied from interface:
XMLEntityHandler.EntityReader
- Append the characters processed by this reader associated with
offset
andlength
to theCharBuffer
.
loadNextChar
private int loadNextChar()
changeReaders
public XMLEntityHandler.EntityReader changeReaders() throws java.lang.Exception
- Description copied from class:
XMLEntityReader
- This method is called by the reader subclasses at the end of input.
- Overrides:
changeReaders
in classXMLEntityReader
lookingAtChar
public boolean lookingAtChar(char chr, boolean skipPastChar) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Test that the current character is a
ch
character.
lookingAtValidChar
public boolean lookingAtValidChar(boolean skipPastChar) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Test that the current character is valid.
lookingAtSpace
public boolean lookingAtSpace(boolean skipPastChar) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Test that the current character is a whitespace character.
skipToChar
public void skipToChar(char chr) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Advance through the input data up to the next
ch
character.
skipPastSpaces
public void skipPastSpaces() throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Skip past whitespace characters starting at the current position.
skipPastName
public void skipPastName(char fastcheck) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Skip past a sequence of characters that match the XML definition of a Name.
skipPastNmtoken
public void skipPastNmtoken(char fastcheck) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Skip past a sequence of characters that match the XML definition of an Nmtoken.
skippedString
public boolean skippedString(char[] s) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Skip past a sequence of characters that matches the specified character array.
scanInvalidChar
public int scanInvalidChar() throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Scan an invalid character.
scanCharRef
public int scanCharRef(boolean hex) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Scan a character reference.
scanStringLiteral
public int scanStringLiteral() throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Scan a string literal.
scanAttValue
public int scanAttValue(char qchar, boolean asSymbol) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Scan an attribute value.
scanEntityValue
public int scanEntityValue(int qchar, boolean createString) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Scan an entity value.
scanExpectedName
public boolean scanExpectedName(char fastcheck, org.apache.xerces.utils.StringPool.CharArrayRange expectedName) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Scan the name that is expected at the current position in the document.
This method is invoked when we are scanning the element type in an end tag
that must match the element type in the corresponding start tag.
scanQName
public void scanQName(char fastcheck, org.apache.xerces.utils.QName qname) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Add a sequence of characters that match the XML Namespaces definition of a QName
to the
StringPool
. If we find a QName at the current position we will add it to theStringPool
and will return the string pool handle of that QName to the caller.
scanName
public int scanName(char fastcheck) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Add a sequence of characters that match the XML definition of a Name to the
StringPool
. If we find a name at the current position we will add it to theStringPool
as a symbol and will return the string pool handle for that symbol to the caller.
recognizeMarkup
private int recognizeMarkup(int ch) throws java.lang.Exception
recognizeReference
private int recognizeReference(int ch) throws java.lang.Exception
scanContent
public int scanContent(org.apache.xerces.utils.QName element) throws java.lang.Exception
- Description copied from interface:
XMLEntityHandler.EntityReader
- Skip through the input while we are looking at character data.
callCharDataHandler
private void callCharDataHandler(int offset, int endOffset, boolean isWhitespace) throws java.lang.Exception
init
protected void init(XMLEntityHandler entityHandler, org.apache.xerces.framework.XMLErrorReporter errorReporter, boolean sendCharDataAsCharArray, int lineNumber, int columnNumber)
currentOffset
public int currentOffset()
- Return the current offset within this reader.
- Specified by:
currentOffset
in interfaceXMLEntityHandler.EntityReader
getLineNumber
public int getLineNumber()
- Return the line number of the current position within the document that we are processing.
- Specified by:
getLineNumber
in interfaceXMLEntityHandler.EntityReader
getColumnNumber
public int getColumnNumber()
- Return the column number of the current position within the document that we are processing.
- Specified by:
getColumnNumber
in interfaceXMLEntityHandler.EntityReader
setInCDSect
public void setInCDSect(boolean inCDSect)
- This method is provided for scanner implementations.
- Specified by:
setInCDSect
in interfaceXMLEntityHandler.EntityReader
getInCDSect
public boolean getInCDSect()
- This method is provided for scanner implementations.
- Specified by:
getInCDSect
in interfaceXMLEntityHandler.EntityReader
|
|||||||||
Home >> All >> org >> apache >> xerces >> [ readers overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: ![]() ![]() ![]() |
DETAIL: FIELD | CONSTR | METHOD |