#include <xmltooling/io/AbstractXMLObjectUnmarshaller.h>
Inheritance diagram for xmltooling::AbstractXMLObjectUnmarshaller:
Public Member Functions | |
XMLObject * | unmarshall (xercesc::DOMElement *element, bool bindDocument=false) |
Unmarshalls the given W3C DOM element into the XMLObject. | |
Protected Member Functions | |
virtual void | unmarshallAttributes (const xercesc::DOMElement *domElement) |
Unmarshalls the attributes from the given DOM Element into the XMLObject. | |
virtual void | unmarshallContent (const xercesc::DOMElement *domElement) |
Unmarshalls a given Element's child nodes. | |
virtual void | processChildElement (XMLObject *child, const xercesc::DOMElement *childRoot) |
Called after a child element has been unmarshalled so that it can be added to the parent XMLObject. | |
virtual void | processAttribute (const xercesc::DOMAttr *attribute) |
Called after an attribute has been unmarshalled so that it can be added to the XMLObject. |
virtual void xmltooling::AbstractXMLObjectUnmarshaller::processAttribute | ( | const xercesc::DOMAttr * | attribute | ) | [protected, virtual] |
Called after an attribute has been unmarshalled so that it can be added to the XMLObject.
attribute | the attribute being unmarshalled |
UnmarshallingException | thrown if there is a problem adding the attribute to the XMLObject |
virtual void xmltooling::AbstractXMLObjectUnmarshaller::processChildElement | ( | XMLObject * | child, | |
const xercesc::DOMElement * | childRoot | |||
) | [protected, virtual] |
Called after a child element has been unmarshalled so that it can be added to the parent XMLObject.
child | pointer to the child XMLObject | |
childRoot | root element of the child (must not be stored, just a hint) |
UnmarshallingException | thrown if there is a problem adding the child to the parent |
XMLObject* xmltooling::AbstractXMLObjectUnmarshaller::unmarshall | ( | xercesc::DOMElement * | element, | |
bool | bindDocument = false | |||
) | [virtual] |
Unmarshalls the given W3C DOM element into the XMLObject.
The root of a given XML construct should be unmarshalled with the bindDocument parameter set to true.
element | the DOM element to unmarshall | |
bindDocument | true iff the resulting XMLObject should take ownership of the DOM's Document |
UnmarshallingException | thrown if an error occurs unmarshalling the DOM element into the XMLObject |
Implements xmltooling::XMLObject.
virtual void xmltooling::AbstractXMLObjectUnmarshaller::unmarshallAttributes | ( | const xercesc::DOMElement * | domElement | ) | [protected, virtual] |
Unmarshalls the attributes from the given DOM Element into the XMLObject.
If the attribute is an XML namespace declaration the namespace is added via XMLObject::addNamespace(). If it is a schema type (xsi:type) the schema type is added via XMLObject::setSchemaType(). All other attributes are passed to the processAttribute hook.
domElement | the DOM Element whose attributes will be unmarshalled |
UnmarshallingException | thrown if there is a problem unmarshalling an attribute |
virtual void xmltooling::AbstractXMLObjectUnmarshaller::unmarshallContent | ( | const xercesc::DOMElement * | domElement | ) | [protected, virtual] |
Unmarshalls a given Element's child nodes.
The resulting XMLObject children and content are passed to processChildElement() or processText() for further processing.
domElement | the DOM Element whose children will be unmarshalled |
UnmarshallingException | thrown if an error occurs unmarshalling the child elements |