Package com.saxonica.xqj

## Interface ObjectConverter

- All Known Implementing Classes:
    `StandardObjectConverter`

      public interface ObjectConverter

  This interface is based on the "CommonHandler" concept defined in early drafts of XQJ. It defines the data conversion routines used by the Saxon XQJ implementation to convert between native Java objects and XDM values. Most applications will use the Saxon-supplied implementation `StandardObjectConverter`, but it is possible to supply an alternative implementation using the method `SaxonXQDataFactory.setObjectConverter(com.saxonica.xqj.ObjectConverter)`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Item` | `convertToItem​(java.lang.Object value)` | Convert a Java object to an Item, when no information is available about the required type
    `Item` | `convertToItem​(java.lang.Object value, XQItemType type)` | Convert a Java object to an Item, when a required type has been specified.
    `java.lang.Object` | `toObject​(XQItemAccessor xqItemAccessor)` | Convert an Item to a Java object

- - ### Method Detail

    - #### toObject

          java.lang.Object toObject​(XQItemAccessor xqItemAccessor)
                             throws XQException

      Convert an Item to a Java object
      Parameters:
        `xqItemAccessor` - the XQJ object representing the item to be converted
      Returns:
        the Java object that results from the conversion
      Throws:
        `XQException`

    - #### convertToItem

          Item convertToItem​(java.lang.Object value)
                      throws XQException

      Convert a Java object to an Item, when no information is available about the required type
      Parameters:
        `value` - the supplied Java object. If null is supplied, null is returned.
      Returns:
        the Item that results from the conversion
      Throws:
        `XQException` - if the Java object cannot be converted to an XQItem

    - #### convertToItem

          Item convertToItem​(java.lang.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.
      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