org.jvnet.fastinfoset.sax
Interface EncodingAlgorithmContentHandler

All Known Subinterfaces:
FastInfosetWriter
All Known Implementing Classes:
FastInfosetDefaultHandler, SAXDocumentSerializer

public interface EncodingAlgorithmContentHandler

SAX2 extention handler to receive notification of encoding algorithm data.

This is an optional extension handler for SAX2. XML readers are not required to recognize this handler, and it is not part of core-only SAX2 distributions.

This interface may be used with with a Fast Infoset SAX parser to receive notification of encoding algorithm data specified in ITU-T Rec. X.891 | ISO/IEC 24824-1 (Fast Infoset) clause 10 and for application defined encoding algorithms specified as part of the initial vocabulary of a fast infoset document.

To set the EncodingAlgorithmContentHandler for an XML reader, use the setProperty method with the property name URI TO BE DEFINED and an object implementing this interface (or null) as the value. If the reader does not report primitive data types, it will throw a SAXNotRecognizedException

To set the EncodingAlgorithmContentHandler for an Fast Infoset reader, use setEncodingAlgorithmContentHandler method.

See Also:
PrimitiveTypeContentHandler, FastInfosetReader, XMLReader

Method Summary
 void object(java.lang.String URI, int algorithm, java.lang.Object o)
          Receive notification of encoding algorithm data as an object.
 void octets(java.lang.String URI, int algorithm, byte[] b, int start, int length)
          Receive notification of encoding algorithm data as an array of byte.
 

Method Detail

octets

public void octets(java.lang.String URI,
                   int algorithm,
                   byte[] b,
                   int start,
                   int length)
            throws org.xml.sax.SAXException
Receive notification of encoding algorithm data as an array of byte.

The application must not attempt to read from the array outside of the specified range.

Such notifications will occur for a Fast Infoset SAX parser when processing encoding algorithm data.

The Parser will call the method of this interface to report each encoding algorithm data. Parsers MUST return all contiguous characters in a single chunk

Parsers may return all contiguous bytes in a single chunk, or they may split it into several chunks providing that the length of each chunk is of the required length to successfully apply the encoding algorithm to the chunk.

Parameters:
URI - the URI of the encoding algorithm
algorithm - the encoding algorithm index
b - the array of byte
start - the start position in the array
length - the number of byte to read from the array
Throws:
org.xml.sax.SAXException - any SAX exception, possibly wrapping another exception
See Also:
EncodingAlgorithmIndexes

object

public void object(java.lang.String URI,
                   int algorithm,
                   java.lang.Object o)
            throws org.xml.sax.SAXException
Receive notification of encoding algorithm data as an object.

Such notifications will occur for a Fast Infoset SAX parser when processing encoding algorithm data that is converted from an array of byte to an object more suitable for processing.

Parameters:
URI - the URI of the encoding algorithm
algorithm - the encoding algorithm index
o - the encoding algorithm object
Throws:
org.xml.sax.SAXException - any SAX exception, possibly wrapping another exception
See Also:
EncodingAlgorithmIndexes