xmltooling::AbstractXMLObjectUnmarshaller Class Reference

A mix-in to implement object unmarshalling. More...

#include <xmltooling/io/AbstractXMLObjectUnmarshaller.h>

Inheritance diagram for xmltooling::AbstractXMLObjectUnmarshaller:

xmltooling::AbstractXMLObject xmltooling::XMLObject List of all members.

Public Member Functions

XMLObjectunmarshall (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.

Detailed Description

A mix-in to implement object unmarshalling.


Member Function Documentation

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.

Parameters:
attribute the attribute being unmarshalled
Exceptions:
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.

Parameters:
child pointer to the child XMLObject
childRoot root element of the child (must not be stored, just a hint)
Exceptions:
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.

Parameters:
element the DOM element to unmarshall
bindDocument true iff the resulting XMLObject should take ownership of the DOM's Document
Returns:
the unmarshalled XMLObject
Exceptions:
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.

Parameters:
domElement the DOM Element whose attributes will be unmarshalled
Exceptions:
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.

Parameters:
domElement the DOM Element whose children will be unmarshalled
Exceptions:
UnmarshallingException thrown if an error occurs unmarshalling the child elements


The documentation for this class was generated from the following file:
Generated on Mon Oct 19 14:18:34 2009 for xmltooling by  doxygen 1.4.7