| java.lang.Object com.sun.xml.stream.XMLEntityReader com.sun.xml.stream.XMLEntityReaderImpl
XMLEntityReaderImpl | public class XMLEntityReaderImpl extends XMLEntityReader (Code) | | Implements the entity scanner methods.
author: Neeraj Bajaj, Sun Microsystems author: Andy Clark, IBM author: Arnaud Le Hors, IBM author: K.Venugopal Sun Microsystems |
Method Summary | |
public boolean | arrangeCapacity(int length) Parameters: legnth - This function checks that following number of characters are available.to the underlying buffer. | public boolean | arrangeCapacity(int length, boolean changeEntity) Parameters: legnth - This function checks that following number of characters are available.to the underlying buffer. | protected Reader | createReader(InputStream inputStream, String encoding, Boolean isBigEndian) Creates a reader capable of reading the given input stream in
the specified encoding.
Parameters: inputStream - The input stream. Parameters: encoding - The encoding name that the input stream isencoded using. | public String | getBaseSystemId() Returns the base system identifier of the currently scanned
entity, or null if none is available. | public int | getChar(int relative) | public int | getCharacterOffset() | public int | getColumnNumber() | public Entity.ScannedEntity | getCurrentEntity() | public String | getEncoding() | protected Object[] | getEncodingName(byte[] b4, int count) Returns the IANA encoding name that is auto-detected from
the bytes specified, with the endian-ness of that encoding where appropriate.
Parameters: b4 - The first four bytes of the input. Parameters: count - The number of bytes actually read. | public String | getExpandedSystemId() Returns the expanded system identifier. | public int | getLineNumber() | public String | getLiteralSystemId() Returns the literal system identifier. | public String | getPublicId() Returns the public identifier. | public String | getVersion() | public boolean | isExternal() Returns true if the current entity being scanned is external. | public boolean | isSpace(char ch) | final boolean | load(int offset, boolean changeEntity) Loads a chunk of text. | public int | peekChar() Returns the next character on the input. | final void | print() Prints the contents of the buffer. | public void | registerListener(XMLBufferListener listener) Registers the listener object and provides callback. | public void | reset(PropertyManager propertyManager) Resets the components. | public void | reset(XMLComponentManager componentManager) Resets the component. | public int | scanChar() Returns the next character on the input. | public int | scanContent(XMLString content) CHANGED:
Scans a range of parsed character data, This function appends the character data to
the supplied buffer.
Note: The characters are consumed.
Note: This method does not guarantee to return
the longest run of parsed character data. | public boolean | scanData(String delimiter, XMLStringBuffer buffer) Scans a range of character data up to the specified delimiter,
setting the fields of the XMLString structure, appropriately.
Note: The characters are consumed.
Note: This assumes that the length of the delimiter
and that the delimiter contains at least one character.
Note: This method does not guarantee to return
the longest run of character data. | public int | scanLiteral(int quote, XMLString content) Scans a range of attribute value data, setting the fields of the
XMLString structure, appropriately.
Note: The characters are consumed.
Note: This method does not guarantee to return
the longest run of attribute value data. | public String | scanName() Returns a string matching the Name production appearing immediately
on the input as a symbol, or null if no Name string is present.
Note: The Name characters are consumed.
Note: The string returned must be a symbol. | public String | scanNmtoken() Returns a string matching the NMTOKEN production appearing immediately
on the input as a symbol, or null if NMTOKEN Name string is present.
Note: The NMTOKEN characters are consumed.
Note: The string returned must be a symbol. | public boolean | scanQName(QName qname) Scans a qualified name from the input, setting the fields of the
QName structure appropriately.
Note: The qualified name characters are consumed.
Note: The strings used to set the values of the
QName structure must be symbols. | public void | setCurrentEntity(Entity.ScannedEntity scannedEntity) set the instance of current scanned entity. | public void | setEncoding(String encoding) Sets the encoding of the scanner. | public void | setVersion(String version) | public boolean | skipChar(int c) Skips a character appearing immediately on the input.
Note: The character is consumed only if it matches
the specified character.
Parameters: c - The character to skip. | public boolean | skipSpaces() Skips space characters appearing immediately on the input. | public boolean | skipString(String s) Skips the specified string appearing immediately on the input.
Note: The characters are consumed only if all
the characters are skipped.
Parameters: s - The string to skip. | public boolean | skipString(char[] s) |
ALLOW_JAVA_ENCODINGS | final protected static String ALLOW_JAVA_ENCODINGS(Code) | | Feature identifier: allow Java encodings.
|
ERROR_REPORTER | final protected static String ERROR_REPORTER(Code) | | Property identifier: error reporter.
|
SYMBOL_TABLE | final protected static String SYMBOL_TABLE(Code) | | Property identifier: symbol table.
|
fAllowJavaEncodings | protected boolean fAllowJavaEncodings(Code) | | Allow Java encoding names. This feature identifier is:
http://apache.org/xml/features/allow-java-encodings
|
isExternal | boolean isExternal(Code) | | |
scannedName | char[] scannedName(Code) | | |
validContent | final public static boolean[] validContent(Code) | | |
validNames | final public static boolean[] validNames(Code) | | |
whiteSpaceInfoNeeded | boolean whiteSpaceInfoNeeded(Code) | | |
whiteSpaceLen | int whiteSpaceLen(Code) | | |
whiteSpaceLookup | int[] whiteSpaceLookup(Code) | | |
XMLEntityReaderImpl | public XMLEntityReaderImpl(XMLEntityManager entityManager)(Code) | | private constructor, this class can only be instantiated within this class. Instance of this class should
be obtained using getEntityScanner() or getEntityScanner(ScannedEntity scannedEntity)
See Also: getEntityScanner() See Also: getEntityScanner(ScannedEntity) |
XMLEntityReaderImpl | public XMLEntityReaderImpl(PropertyManager propertyManager, XMLEntityManager entityManager)(Code) | | private constructor, this class can only be instantiated within this class. Instance of this class should
be obtained using getEntityScanner() or getEntityScanner(ScannedEntity scannedEntity)
See Also: getEntityScanner() See Also: getEntityScanner(ScannedEntity) |
arrangeCapacity | public boolean arrangeCapacity(int length) throws IOException(Code) | | Parameters: legnth - This function checks that following number of characters are available.to the underlying buffer. This function returns true if capacity asked is available. |
arrangeCapacity | public boolean arrangeCapacity(int length, boolean changeEntity) throws IOException(Code) | | Parameters: legnth - This function checks that following number of characters are available.to the underlying buffer. if the underlying function should change the entity This function returns true if capacity asked is available. |
createReader | protected Reader createReader(InputStream inputStream, String encoding, Boolean isBigEndian) throws IOException(Code) | | Creates a reader capable of reading the given input stream in
the specified encoding.
Parameters: inputStream - The input stream. Parameters: encoding - The encoding name that the input stream isencoded using. If the user has specified thatJava encoding names are allowed, then theencoding name may be a Java encoding name;otherwise, it is an ianaEncoding name. Parameters: isBigEndian - For encodings (like uCS-4), whose names cannotspecify a byte order, this tells whether the order is bigEndian. null menasunknown or not relevant. Returns a reader. |
getBaseSystemId | public String getBaseSystemId()(Code) | | Returns the base system identifier of the currently scanned
entity, or null if none is available.
|
getCharacterOffset | public int getCharacterOffset()(Code) | | |
getColumnNumber | public int getColumnNumber()(Code) | | |
getEncodingName | protected Object[] getEncodingName(byte[] b4, int count)(Code) | | Returns the IANA encoding name that is auto-detected from
the bytes specified, with the endian-ness of that encoding where appropriate.
Parameters: b4 - The first four bytes of the input. Parameters: count - The number of bytes actually read. a 2-element array: the first element, an IANA-encoding string,the second element a Boolean which is true iff the document is big endian, falseif it's little-endian, and null if the distinction isn't relevant. |
getExpandedSystemId | public String getExpandedSystemId()(Code) | | Returns the expanded system identifier.
|
getLineNumber | public int getLineNumber()(Code) | | |
getLiteralSystemId | public String getLiteralSystemId()(Code) | | Returns the literal system identifier.
|
getPublicId | public String getPublicId()(Code) | | Returns the public identifier.
|
isExternal | public boolean isExternal()(Code) | | Returns true if the current entity being scanned is external.
|
isSpace | public boolean isSpace(char ch)(Code) | | |
load | final boolean load(int offset, boolean changeEntity) throws IOException(Code) | | Loads a chunk of text.
Parameters: offset - The offset into the character buffer toread the next batch of characters. Parameters: changeEntity - True if the load should change entitiesat the end of the entity, otherwise leavethe current entity in place and the entityboundary will be signaled by the returnvalue. |
peekChar | public int peekChar() throws IOException(Code) | | Returns the next character on the input.
Note: The character is not consumed.
throws: IOException - Thrown if i/o error occurs. throws: EOFException - Thrown on end of file. |
print | final void print()(Code) | | Prints the contents of the buffer.
|
registerListener | public void registerListener(XMLBufferListener listener)(Code) | | Registers the listener object and provides callback.
Parameters: listener - listener to which call back should be provided when scanner bufferis being changed. |
reset | public void reset(XMLComponentManager componentManager) throws XMLConfigurationException(Code) | | Resets the component. The component can query the component manager
about any features and properties that affect the operation of the
component.
Parameters: componentManager - The component manager. throws: SAXException - Thrown by component on initialization error.For example, if a feature or property isrequired for the operation of the component, thecomponent manager may throw aSAXNotRecognizedException or aSAXNotSupportedException. |
scanChar | public int scanChar() throws IOException(Code) | | Returns the next character on the input.
Note: The character is consumed.
throws: IOException - Thrown if i/o error occurs. throws: EOFException - Thrown on end of file. |
scanContent | public int scanContent(XMLString content) throws IOException(Code) | | CHANGED:
Scans a range of parsed character data, This function appends the character data to
the supplied buffer.
Note: The characters are consumed.
Note: This method does not guarantee to return
the longest run of parsed character data. This method may return
before markup due to reaching the end of the input buffer or any
other reason.
Parameters: content - The content structure to fill. Returns the next character on the input, if known. Thisvalue may be -1 but this does note designateend of file. throws: IOException - Thrown if i/o error occurs. throws: EOFException - Thrown on end of file. |
scanData | public boolean scanData(String delimiter, XMLStringBuffer buffer) throws IOException(Code) | | Scans a range of character data up to the specified delimiter,
setting the fields of the XMLString structure, appropriately.
Note: The characters are consumed.
Note: This assumes that the length of the delimiter
and that the delimiter contains at least one character.
Note: This method does not guarantee to return
the longest run of character data. This method may return before
the delimiter due to reaching the end of the input buffer or any
other reason.
Parameters: delimiter - The string that signifies the end of the characterdata to be scanned. Parameters: data - The data structure to fill. Data will be appendd to the current buffer. Returns true if there is more data to scan, false otherwise. throws: IOException - Thrown if i/o error occurs. throws: EOFException - Thrown on end of file. |
scanLiteral | public int scanLiteral(int quote, XMLString content) throws IOException(Code) | | Scans a range of attribute value data, setting the fields of the
XMLString structure, appropriately.
Note: The characters are consumed.
Note: This method does not guarantee to return
the longest run of attribute value data. This method may return
before the quote character due to reaching the end of the input
buffer or any other reason.
Note: The fields contained in the XMLString
structure are not guaranteed to remain valid upon subsequent calls
to the entity scanner. Therefore, the caller is responsible for
immediately using the returned character data or making a copy of
the character data.
Parameters: quote - The quote character that signifies the end of theattribute value data. Parameters: content - The content structure to fill. Returns the next character on the input, if known. Thisvalue may be -1 but this does note designateend of file. throws: IOException - Thrown if i/o error occurs. throws: EOFException - Thrown on end of file. |
setCurrentEntity | public void setCurrentEntity(Entity.ScannedEntity scannedEntity)(Code) | | set the instance of current scanned entity.
Parameters: ScannedEntity - |
setEncoding | public void setEncoding(String encoding) throws IOException(Code) | | Sets the encoding of the scanner. This method is used by the
scanners if the XMLDecl or TextDecl line contains an encoding
pseudo-attribute.
Note: The underlying character reader on the
current entity will be changed to accomodate the new encoding.
However, the new encoding is ignored if the current reader was
not constructed from an input stream (e.g. an external entity
that is resolved directly to the appropriate java.io.Reader
object).
Parameters: encoding - The IANA encoding name of the new encoding. throws: IOException - Thrown if the new encoding is not supported. See Also: com.sun.xml.stream.xerces.util.EncodingMap |
setVersion | public void setVersion(String version)(Code) | | the version of the current entity being scanned
|
skipChar | public boolean skipChar(int c) throws IOException(Code) | | Skips a character appearing immediately on the input.
Note: The character is consumed only if it matches
the specified character.
Parameters: c - The character to skip. Returns true if the character was skipped. throws: IOException - Thrown if i/o error occurs. throws: EOFException - Thrown on end of file. |
skipSpaces | public boolean skipSpaces() throws IOException(Code) | | Skips space characters appearing immediately on the input.
Note: The characters are consumed only if they are
space characters.
Returns true if at least one space character was skipped. throws: IOException - Thrown if i/o error occurs. throws: EOFException - Thrown on end of file. See Also: com.sun.xml.stream.xerces.util.XMLChar.isSpace |
skipString | public boolean skipString(String s) throws IOException(Code) | | Skips the specified string appearing immediately on the input.
Note: The characters are consumed only if all
the characters are skipped.
Parameters: s - The string to skip. Returns true if the string was skipped. throws: IOException - Thrown if i/o error occurs. throws: EOFException - Thrown on end of file. |
|
|