Interface PrimitiveTypeContentHandler

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

public interface PrimitiveTypeContentHandler
SAX2 extention handler to receive notification of character data as primtive types.

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 data encoded using the following built-in encoding algorithms specified in ITU-T Rec. X.891 | ISO/IEC 24824-1 (Fast Infoset), clause 10: "boolean", "base64", "short", "int", "long", "float", "double" and "uuid" encoding algorithms.

To set the PrimitiveTypeContentHandler 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 PrimitiveTypeContentHandler for an Fast Infoset reader, use setPrimitiveTypeContentHandler method.

The Parser will call methods of this interface to report each chunk of character data that has been converted to an array of primitive types, for example an array of integer or an array of float. Parsers may return all contiguous primtive types in a single chunk, or they may split it into several chunks

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

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    booleans(boolean[] b, int start, int length)
    Receive notification of character data as an array of boolean.
    void
    bytes(byte[] b, int start, int length)
    Receive notification of character data as an array of byte.
    void
    doubles(double[] d, int start, int length)
    Receive notification of character data as an array of double.
    void
    floats(float[] f, int start, int length)
    Receive notification of character data as an array of float.
    void
    ints(int[] i, int start, int length)
    Receive notification of character data as an array of int.
    void
    longs(long[] l, int start, int length)
    Receive notification of character data as an array of long.
    void
    shorts(short[] s, int start, int length)
    Receive notification of character data as an array of short.
    void
    uuids(long[] msblsb, int start, int length)
    Receive notification of character data as an two array of UUID.
  • Method Details

    • booleans

      void booleans(boolean[] b, int start, int length) throws SAXException
      Receive notification of character data as an array of boolean.

      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 data encoded using the "boolean" encoding algorithm, see subclause 10.7

      .

      Parameters:
      b - the array of boolean
      start - the start position in the array
      length - the number of boolean to read from the array
      Throws:
      SAXException - any SAX exception, possibly wrapping another exception
    • bytes

      void bytes(byte[] b, int start, int length) throws SAXException
      Receive notification of character 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 data encoded using the "base64" encoding algorithm, see subclause 10.3, or the "hexadecimal" encoding algorithm, see subclause 10.2.

      Such a notification may occur for binary data that would normally require base 64 encoding and reported as character data using the characters method

      .

      Parameters:
      b - the array of byte
      start - the start position in the array
      length - the number of byte to read from the array
      Throws:
      SAXException - any SAX exception, possibly wrapping another exception
    • shorts

      void shorts(short[] s, int start, int length) throws SAXException
      Receive notification of character data as an array of short.

      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 data encoded using the "short" encoding algorithm, see subclause 10.4

      .

      Parameters:
      s - the array of short
      start - the start position in the array
      length - the number of short to read from the array
      Throws:
      SAXException - any SAX exception, possibly wrapping another exception
    • ints

      void ints(int[] i, int start, int length) throws SAXException
      Receive notification of character data as an array of int.

      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 data encoded using the "int" encoding algorithm, see subclause 10.5

      .

      Parameters:
      i - the array of int
      start - the start position in the array
      length - the number of int to read from the array
      Throws:
      SAXException - any SAX exception, possibly wrapping another exception
    • longs

      void longs(long[] l, int start, int length) throws SAXException
      Receive notification of character data as an array of long.

      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 data encoded using the "long" encoding algorithm, see subclause 10.6

      .

      Parameters:
      l - the array of long
      start - the start position in the array
      length - the number of long to read from the array
      Throws:
      SAXException - any SAX exception, possibly wrapping another exception
    • floats

      void floats(float[] f, int start, int length) throws SAXException
      Receive notification of character data as an array of float.

      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 data encoded using the "float" encoding algorithm, see subclause 10.8

      .

      Parameters:
      f - the array of float
      start - the start position in the array
      length - the number of float to read from the array
      Throws:
      SAXException - any SAX exception, possibly wrapping another exception
    • doubles

      void doubles(double[] d, int start, int length) throws SAXException
      Receive notification of character data as an array of double.

      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 data encoded using the "double" encoding algorithm, see subclause 10.9

      .

      Parameters:
      d - the array of double
      start - the start position in the array
      length - the number of double to read from the array
      Throws:
      SAXException - any SAX exception, possibly wrapping another exception
    • uuids

      void uuids(long[] msblsb, int start, int length) throws SAXException
      Receive notification of character data as an two array of UUID.

      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 data encoded using the "uuid" encoding algorithm, see subclause 10.10

      .

      Parameters:
      msblsb - the array of long containing pairs of most signficant bits and least significant bits of the UUIDs
      start - the start position in the array
      length - the number of long to read from the array. This will be twice the number of UUIDs, which are pairs of two long values
      Throws:
      SAXException - any SAX exception, possibly wrapping another exception