## org.jibx.runtime
Interface IUnmarshaller

All Known Implementing Classes:
  DiscardElementMapper, DiscardListMapper, Dom4JElementMapper, Dom4JListMapper, DomElementMapper, DomFragmentMapper, DomListMapper, HashMapperStringToComplex, HashMapperStringToSchemaType, IdDefRefMapperBase, IdRefMapperBase, ObjectArrayMapper, TypedArrayMapper

    public interface IUnmarshaller

Unmarshaller interface definition. This interface must be implemented by the handler for unmarshalling an object. Instances of classes implementing this interface must be serially reusable, meaning they can store state information while in the process of unmarshalling an object but must reset all state when called to unmarshal another object after the first one is done (even if the first object throws an exception during unmarshalling). The JiBX framework will only create one instance of an unmarshaller class for each mapped class using that unmarshaller. Generally the unmarshaller instance will not be called recursively, but this may happen in cases where the binding definition includes recursive mappings and the unmarshaller uses other unmarshallers (as opposed to handling all children directly).

Version:
  1.0
Author:
  Dennis M. Sosnoski

Method Summary
`boolean` `isPresent(IUnmarshallingContext ctx)` Check if instance present in XML.
`java.lang.Object` `unmarshal(java.lang.Object obj, IUnmarshallingContext ctx)` Unmarshal instance of handled class.

Method Detail

### isPresent

    boolean isPresent(IUnmarshallingContext ctx)
                      throws JiBXException

  Check if instance present in XML. This method can be called when the unmarshalling context is positioned at or just before the start of the data corresponding to an instance of this mapping. It verifies that the expected data is present.

  Parameters:
    `ctx` - unmarshalling context
  Returns:
    `true` if expected parse data found, `false` if not
  Throws:
    `JiBXException` - on error in unmarshalling process

### unmarshal

    java.lang.Object unmarshal(java.lang.Object obj,
                               IUnmarshallingContext ctx)
                               throws JiBXException

  Unmarshal instance of handled class. This method call is responsible for all handling of the unmarshalling of an object from XML text, including creating the instance of the handled class if an instance is not supplied. When it is called the unmarshalling context is always positioned at or just before the start tag corresponding to the start of the class data.

  Parameters:
    `obj` - object to be unmarshalled (may be `null`)
    `ctx` - unmarshalling context
  Returns:
    unmarshalled object (may be `null`)
  Throws:
    `JiBXException` - on error in unmarshalling process

Project Web Site |