FastInfosetReader is the interface that a Fast Infoset parser's SAX2 driver must implement. This interface allows an application to to register Fast Infoset specific event handlers for encoding algorithms.
The reception of encoding algorithm events is determined by the registration of:
PrimitiveTypeContentHandler, for the recieving of events,
associated with built-in encoding algorithms, for decoded data that
can be reported as Java primitive types.EncodingAlgorithmContentHandler, for the recieving of events,
associated with built-in and application-defined encoding algorithms, for
decoded data that can be reported as an array of octets or as a Java
Object.org.jvnet.fastinfoset.EncodingAlgorithm implementations, for
the receiving of events, associated with application defined algorithms.
for decoded data that shall be reported as a Java Object by way of the
registered EncodingAlgorithmContentHandler.The reporting of element content events for built-in algorithms is determimed by the following:
EncodingAlgorithmContentHandler#object(String, int, Object).
An Object shall correspond to the Java primitive type that
would otherwise be reported using the PrimitiveContentHandler.The reporting of element content events for application-defined algorithms is determimed by the following:
EncodingAlgorithmContentHandler#octets(String, int, byte[], int, int);
otherwiseEncodingAlgorithmContentHandler#object(String, int, Object).The reporting of attribute values for encoding algorithms is achieved using
EncodingAlgorithmAttributes that extends org..
The registered ContentHandler may cast the attr paramter of the
org.
to the EncodingAlgorithmAttributes interface to access to encoding algorithm information.
The reporting of attribute values for built-in algorithms is determimed by the following:
EncodingAlgorithmAttributes#getAlgorithmData(int).
The reporting of attribute values for application-defined algorithms is determimed by the following:
byte[],
using EncodingAlgorithmAttributes#getAlgorithmData(int);
otherwiseEncodingAlgorithmAttributes#getAlgorithmData(int).org.jvnet.fastinfoset.sax.PrimitiveTypeContentHandler , org.jvnet.fastinfoset.sax.EncodingAlgorithmContentHandler , org.xml.sax.XMLReader , org.xml.sax.ContentHandler
| Modifier and Type | Field and Description |
|---|---|
| public static final String | ENCODING_ALGORITHM_CONTENT_HANDLER_PROPERTY
The property name to be used for getting and setting the EncodingAlgorithmContentHandler. |
| public static final String | PRIMITIVE_TYPE_CONTENT_HANDLER_PROPERTY
The property name to be used for getting and setting the PrimtiveTypeContentHandler. |
| Modifier and Type | Method and Description |
|---|---|
| public DeclHandler | Returns: The current DTD declaration handler, or null if none has been registered.Return the current DTD declaration handler. |
| public EncodingAlgorithmContentHandler | Returns: The current encoding algorithm handler, or null if none has been registered.Return the current encoding algorithm handler. |
| public LexicalHandler | Returns: The current lexical handler, or null if none has been registered.Return the current lexical handler. |
| public PrimitiveTypeContentHandler | Returns: The current primitive type handler, or null if none has been registered.Return the current primitive type handler. |
| public void | parse(InputStream
The byte stream to parse from. s)Parse a fast infoset document from an InputStream. |
| public void | setDeclHandler(DeclHandler
The DTD declaration handler. handler)Allow an application to register a DTD declaration handler. |
| public void | setEncodingAlgorithmContentHandler(EncodingAlgorithmContentHandler
The encoding algorithm handler. handler)Allow an application to register an encoding algorithm handler. |
| public void | setLexicalHandler(LexicalHandler
The lexical handler. handler)Allow an application to register a lexical handler. |
| public void | setPrimitiveTypeContentHandler(PrimitiveTypeContentHandler
The primitive type handler. handler)Allow an application to register a primitive type handler. |
| ENCODING_ALGORITHM_CONTENT_HANDLER_PROPERTY | back to summary |
|---|---|
| public static final String ENCODING_ALGORITHM_CONTENT_HANDLER_PROPERTY The property name to be used for getting and setting the EncodingAlgorithmContentHandler. | |
| PRIMITIVE_TYPE_CONTENT_HANDLER_PROPERTY | back to summary |
|---|---|
| public static final String PRIMITIVE_TYPE_CONTENT_HANDLER_PROPERTY The property name to be used for getting and setting the PrimtiveTypeContentHandler. | |
| getDeclHandler | back to summary |
|---|---|
| public DeclHandler getDeclHandler() Return the current DTD declaration handler.
| |
| getEncodingAlgorithmContentHandler | back to summary |
|---|---|
| public EncodingAlgorithmContentHandler getEncodingAlgorithmContentHandler() Return the current encoding algorithm handler.
| |
| getLexicalHandler | back to summary |
|---|---|
| public LexicalHandler getLexicalHandler() Return the current lexical handler.
| |
| getPrimitiveTypeContentHandler | back to summary |
|---|---|
| public PrimitiveTypeContentHandler getPrimitiveTypeContentHandler() Return the current primitive type handler.
| |
| parse | back to summary |
|---|---|
| public void parse(InputStream s) throws IOException, FastInfosetException, SAXException Parse a fast infoset document from an InputStream. The application can use this method to instruct the Fast Infoset reader to begin parsing a fast infoset document from a byte stream. Applications may not invoke this method while a parse is in progress (they should create a new XMLReader instead for each nested XML document). Once a parse is complete, an application may reuse the same FastInfosetReader object, possibly with a different byte stream. During the parse, the FastInfosetReader will provide information about the fast infoset document through the registered event handlers. This method is synchronous: it will not return until parsing has ended. If a client application wants to terminate parsing early, it should throw an exception.
| |
| setDeclHandler | back to summary |
|---|---|
| public void setDeclHandler(DeclHandler handler) Allow an application to register a DTD declaration handler. Applications may register a new or different handler in the middle of a parse, and the SAX parser must begin using the new handler immediately.
| |
| setEncodingAlgorithmContentHandler | back to summary |
|---|---|
| public void setEncodingAlgorithmContentHandler(EncodingAlgorithmContentHandler handler) Allow an application to register an encoding algorithm handler. Applications may register a new or different handler in the middle of a parse, and the SAX parser must begin using the new handler immediately.
| |
| setLexicalHandler | back to summary |
|---|---|
| public void setLexicalHandler(LexicalHandler handler) Allow an application to register a lexical handler. Applications may register a new or different handler in the middle of a parse, and the SAX parser must begin using the new handler immediately.
| |
| setPrimitiveTypeContentHandler | back to summary |
|---|---|
| public void setPrimitiveTypeContentHandler(PrimitiveTypeContentHandler handler) Allow an application to register a primitive type handler. Applications may register a new or different handler in the middle of a parse, and the SAX parser must begin using the new handler immediately.
| |