cloneBody() isSimple() |
marshal() typeId() |
typeIdChar() XmlBindingBodyBase() |
XmlOLTypeCategory XmlType() |
#include <rwsf/xmlbinding/XmlBindingBodyBase.h>
rwsf::XmlBindingBodyBase is the base class for body classes.
Each time an rwsf::XmlBindingHandleBase instance is bound to an instance of this class, the handle instance increments the reference count inherited by the body instance. Each time a handle instance detaches from an instance of this class, the handle decrements the reference count. If the reference count reaches zero, the handle deletes the body instance.
The reference counting relieves clients of having to know when it is safe to delete a body instance.
enum XmlOLTypeCategory {simple, complex, message, soaparray};
Specifies all possible body types.
XmlBindingBodyBase();
Default constructor. Constructs a default body instance (reference count starts at 0).
virtual XmlBindingBodyBase* cloneBody() const = 0;
This method provides an interface function to clone the body.
virtual bool isSimple() const = 0;
Returns true if the object represents a simple type. All derived classes override this function.
virtual void marshal(rwsf::XmlWriter& writer, bool includeChildTypeAttributes, const rwsf::XmlName&, bool includeSelfTypeAttribute, bool nilValue) const
Virtual void. In the generated classes, creates an XML element from this object, using writer as the destination for the XML. When includeChildTypeAttributes is true, the element includes type attributes on each contained element. The elementName argument sets the name of the XML element. When includeSelfTypeAttribute is true, the element itself contains a type attribute.
The nilValue parameter controls the marshalling of schema elements with a nillable=true attribute. The nilValue parameter is set by the generated code when calling this method to create correct marshalling behavior. For information on how to control nillable elements in your code, see the Section 8.5.6, "nillable Elements," in the HydraExpress XML Binding Development Guide
Note that this method does not marshal the XML element directly. Rather, it calls a generated external marshaling class, passing all of its input parameters and a reference to this.
Throws a rwsf::Exception message "marshal called on an instance of XmlBindingBody."
virtual std::string typeId() const;
Returns the type ID of the object as a string. All derived classes override this function.
virtual const char* typeIdChar() const;
Returns the type ID of the object as a character array. All derived classes override this function.
virtual rwsf::XmlName XmlType() const
Returns the Xml:name of the object as a string. All gener-ated classes override this function.
virtual XmlOLTypeCategory XmlOLBodyTypeCategory() const = 0;
Pure virtual.
©2004-2007 Copyright Quovadx, Inc. All Rights Reserved.
Quovadx and Rogue Wave are registered trademarks of Quovadx, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.