xmltooling
1.4.2
|
A factory interface for obtaining an XMLObject. More...
#include <xmltooling/XMLObjectBuilder.h>
Public Member Functions | |
virtual XMLObject * | buildObject (const XMLCh *nsURI, const XMLCh *localName, const XMLCh *prefix=0, const QName *schemaType=0) const =0 |
Creates an empty XMLObject with a particular element name. | |
XMLObject * | buildFromQName (const QName &q) const |
Creates an empty XMLObject with a particular element name. | |
XMLObject * | buildFromElement (xercesc::DOMElement *element, bool bindDocument=false) const |
Creates an unmarshalled XMLObject from a DOM Element. | |
XMLObject * | buildFromDocument (xercesc::DOMDocument *doc, bool bindDocument=true) const |
Creates an unmarshalled XMLObject from the root of a DOM Document. | |
Static Public Member Functions | |
static XMLObject * | buildOneFromElement (xercesc::DOMElement *element, bool bindDocument=false) |
Creates an unmarshalled XMLObject using the default build method, if a builder can be found. | |
static const XMLObjectBuilder * | getBuilder (const QName &key) |
Retrieves an XMLObjectBuilder using the key it was registered with. | |
static const XMLObjectBuilder * | getBuilder (const xercesc::DOMElement *element) |
Retrieves an XMLObjectBuilder for a given DOM element. | |
static const XMLObjectBuilder * | getDefaultBuilder () |
Retrieves the default XMLObjectBuilder for DOM elements. | |
static const std::map< QName, XMLObjectBuilder * > & | getBuilders () |
Gets an immutable list of all the builders currently registered. | |
static void | registerBuilder (const QName &builderKey, XMLObjectBuilder *builder) |
Registers a new builder for the given key. | |
static void | registerDefaultBuilder (XMLObjectBuilder *builder) |
Registers a default builder. | |
static void | deregisterBuilder (const QName &builderKey) |
Deregisters a builder. | |
static void | deregisterDefaultBuilder () |
Deregisters default builder. | |
static void | destroyBuilders () |
Unregisters and destroys all registered builders. |
A factory interface for obtaining an XMLObject.
XMLObject* xmltooling::XMLObjectBuilder::buildFromDocument | ( | xercesc::DOMDocument * | doc, |
bool | bindDocument = true |
||
) | const |
XMLObject* xmltooling::XMLObjectBuilder::buildFromElement | ( | xercesc::DOMElement * | element, |
bool | bindDocument = false |
||
) | const |
XMLObject* xmltooling::XMLObjectBuilder::buildFromQName | ( | const QName & | q | ) | const |
virtual XMLObject* xmltooling::XMLObjectBuilder::buildObject | ( | const XMLCh * | nsURI, |
const XMLCh * | localName, | ||
const XMLCh * | prefix = 0 , |
||
const QName * | schemaType = 0 |
||
) | const [pure virtual] |
Creates an empty XMLObject with a particular element name.
The results are undefined if localName is nullptr or empty.
The caller is responsible for freeing the resulting object.
nsURI | namespace URI for element |
localName | local name of element |
prefix | prefix of element name |
schemaType | xsi:type of the object |
Implemented in xmlsignature::SignatureBuilder, and xmltooling::UnknownElementBuilder.
static XMLObject* xmltooling::XMLObjectBuilder::buildOneFromElement | ( | xercesc::DOMElement * | element, |
bool | bindDocument = false |
||
) | [static] |
Creates an unmarshalled XMLObject using the default build method, if a builder can be found.
The caller is responsible for freeing the resulting object.
element | the unmarshalling source |
bindDocument | true iff the new XMLObject should take ownership of the DOM Document |
static void xmltooling::XMLObjectBuilder::deregisterBuilder | ( | const QName & | builderKey | ) | [static] |
Deregisters a builder.
builderKey | the key for the builder to be deregistered |
static const XMLObjectBuilder* xmltooling::XMLObjectBuilder::getBuilder | ( | const QName & | key | ) | [static] |
Retrieves an XMLObjectBuilder using the key it was registered with.
key | the key used to register the builder |
static const XMLObjectBuilder* xmltooling::XMLObjectBuilder::getBuilder | ( | const xercesc::DOMElement * | element | ) | [static] |
Retrieves an XMLObjectBuilder for a given DOM element.
If no match is found, the default builder is returned, if any.
element | the element for which to locate a builder |
static const std::map<QName,XMLObjectBuilder*>& xmltooling::XMLObjectBuilder::getBuilders | ( | ) | [static] |
Gets an immutable list of all the builders currently registered.
static const XMLObjectBuilder* xmltooling::XMLObjectBuilder::getDefaultBuilder | ( | ) | [static] |
Retrieves the default XMLObjectBuilder for DOM elements.
static void xmltooling::XMLObjectBuilder::registerBuilder | ( | const QName & | builderKey, |
XMLObjectBuilder * | builder | ||
) | [static] |
Registers a new builder for the given key.
builderKey | the key used to retrieve this builder later |
builder | the builder |
static void xmltooling::XMLObjectBuilder::registerDefaultBuilder | ( | XMLObjectBuilder * | builder | ) | [static] |
Registers a default builder.
builder | the default builder |