Class StandardObjectConverter

java.lang.Object
com.saxonica.xqj.StandardObjectConverter
All Implemented Interfaces:
ObjectConverter

public class StandardObjectConverter extends Object implements ObjectConverter
This class provides all the conversion methods used to convert data between XDM values and Java values in the XQJ API. At one time the XQJ specification defined such a class, and it has been retained in the Saxon implementation.

This handler implements the mappings defined in the XQJ specification. In addition, it defines the following mappings, which are applied after those defined in XQJ:

For fromObject:

  • If the supplied object is an instance of javax.xml.transform.Source, a document node is constructed from the source and the resulting node is returned as the Item
  • If the supplied object is an instance of javax.xml.stream.XMLStreamReader, a document node is constructed from the XMLStreamReader and the resulting node is returned as the Item
  • If the supplied object is
  • Constructor Details

    • StandardObjectConverter

      public StandardObjectConverter(SaxonXQDataFactory factory)
      CreateCharacter an instance of the class
      Parameters:
      factory - the factory object
  • Method Details

    • toObject

      public Object toObject(XQItemAccessor xqItemAccessor) throws XQException
      Description copied from interface: ObjectConverter
      Convert an Item to a Java object
      Specified by:
      toObject in interface ObjectConverter
      Parameters:
      xqItemAccessor - the XQJ object representing the item to be converted
      Returns:
      the Java object that results from the conversion
      Throws:
      XQException - if no conversion is possible
    • convertToItem

      public Item convertToItem(Object value) throws XQException
      Convert a Java object to a Saxon Item
      Specified by:
      convertToItem in interface ObjectConverter
      Parameters:
      value - the Java object. If null is supplied, null is returned.
      Returns:
      the corresponding Item
      Throws:
      XQException - if the object cannot be converted
    • convertToItem

      public Item convertToItem(Object value, XQItemType type) throws XQException
      Convert a Java object to an Item, when a required type has been specified. Note that Saxon only calls this method when none of the standard conversions defined in the XQJ specification is able to handle the object.
      Specified by:
      convertToItem in interface ObjectConverter
      Parameters:
      value - the supplied Java object. If null is supplied, null is returned.
      type - the required XPath data type
      Returns:
      the Item that results from the conversion
      Throws:
      XQException - if the Java object cannot be converted to an XQItem