Interface for XML decoder libraries, responsible for configuring a
Interface for accessing the context of an XML document being decoded.
Contains XML-related information specific to a single XML element.
Interface for XML encoder libraries, responsible for configuring a
Interface for XML mapping libraries, responsible for configuring a
Interface for object factories that can create objects for a specific XML Schema type or element.
It separates the creation of objects from the XML parsing and object initialization.
The use of this class has been deprecated.
Main class for unmarshalling an XML document into a Java object graph, using
Utility class for marshalling Java object graphs into XML documents, using
An XML configuration class which is used by the XML binding framework to decide for which interface or super class of a class a marshaller will be searched, in case no marshaller is available for the class itself.
Contains a set of object factories that can be used to create a Java instance representing an element from the XML document.
This class provides two additional constants that can be used when working with
A type-safe enumeration, representing all possible scopes to be used in XML document contexts.
com.luciad.format.xml.schemapackages. It is advised to use the framework in this package for new projects.
ILcdXMLUnmarshallerclasses for each of the supported XML elements.
ILcdXMLDecoderLibrarythat instantiates all unmarshallers and registers them on a
TLcdXMLDecoderinstance with this library.
ILcdXMLUnmarshalleris the core interface for XML unmarshalling. Implementations of this interface are responsible for unmarshalling (deserializing) XML data into newly created Java object graphs. The actual parsing of the XML content is done via a StAX
XMLStreamReaderwhich is passed to the unmarshaller. Typically, an unmarshaller is capable of unmarshalling instances of one specific XML element into instances of one specific Java class. See the class documentation of
ILcdXMLUnmarshallerfor more information on how to implement a basic unmarshaller.
TLcdXMLUnmarshallerProvideracts as the central repository on which unmarshallers for all supported elements should be registered; unmarshallers can then query the unmarshaller provider to retrieve unmarshallers for each of their children. As the order in which unmarshallers are registered on the unmarshaller provider is unspecified, it cannot be garantueed that unmarshallers for child elements are available already at the moment an unmarshaller is created. Unmarshallers should therefore only retrieve child unmarshallers from the unmarshaller provider from within their unmarshal methods, not from within their constructor.
TLcdXMLDecoderis the main decoder class from which the unmarshalling process is initiated. It has a
TLcdXMLUnmarshallerProviderwhich provides the decoder with the necessary unmarshallers. It takes care of setting up an input stream and XMLStreamWriter, looking up an unmarshaller for the XML document's root element in the
TLcdXMLUnmarshallerProviderand delegates the unmarshalling process to this unmarshaller.
ILcdXMLDecoderLibraryallows to group unmarshallers into larger building blocks. A decoder library is responsible for instantiating all of its unmarshallers and configure them on the unmarshaller provider of the XML decoder. Libraries are the main API building blocks for distributing sets of unmarshallers; they remove the need to put all individual unmarshaller classes in a public API. To support large and complex XML document hierarchies, multiple libraries can be combined and configured together on a single XML decoder.
ILcdXMLMarshallerclasses for each of the supported XML elements.
ILcdXMLEncoderLibrarythat groups all marshallers and registers them on a
TLcdXMLEncoderinstance with this library.
ILcdXMLMarshallerLibaryare similar in use to their unmarshaller counterparts.
TLcdXMLJavaClassResolverwhich provides functionality for mapping a Java class to another class or an interface. Whenever no marshaller is found for the class to be marshalled, this resolver will make a list of all Java classes/interfaces this class extends or implements, and choose one of them to bind against, based on a priority list. This allows to register marshallers on the marshaller provider for super classes or interfaces only, and let the class resolver take care of the mapping of derived classes to one of these base classes/interfaces.