Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

SAXDBOBJDefinitionBuilder Class Reference

#include <dbobjdefinition.hpp>

Collaboration diagram for SAXDBOBJDefinitionBuilder:

Collaboration graph
[legend]
List of all members.

Detailed Description

Sax contentHandler definition tree builder class.

Definition at line 825 of file dbobjdefinition.hpp.

Public Methods

 SAXDBOBJDefinitionBuilder (XMLFlowContext *p_pContext)
 Constructor.

 ~SAXDBOBJDefinitionBuilder ()
 Destructor.

DBOBJDefinitionNodegetDefinition () const
 After parse, returns root node of the definition tree.

void startElement (const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname, const Attributes &attrs)
 Receive notification of the beginning of an element. Builds definition nodes and fields and attach them to the definition tree.

void endElement (const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname)
 Receive notification of the end of an element. Builds primary keys and keylinks.

void characters (const XMLCh *const chars, const unsigned int length)
void startDocument ()
void endDocument ()
void startPrefixMapping (const XMLCh *const prefix, const XMLCh *const uri)
void endPrefixMapping (const XMLCh *const prefix)
void processingInstruction (const XMLCh *const target, const XMLCh *const data)
void ignorableWhitespace (const XMLCh *const chars, const unsigned int length)
void setDocumentLocator (const Locator *const locator)
void skippedEntity (const XMLCh *const name)

Static Public Methods

DBOBJDefinitionNodebuildDBOBJDefinition (XMLFlowContext *p_pContext, XMLStreamProvider *p_pInput)
 Launches input buffer parse and construction of definition tree.


Constructor & Destructor Documentation

SAXDBOBJDefinitionBuilder::SAXDBOBJDefinitionBuilder XMLFlowContext   p_pContext
 

Constructor.

Definition at line 1114 of file dbobjdefinition.cpp.

References DEBUG_CREATE.

Referenced by buildDBOBJDefinition().

SAXDBOBJDefinitionBuilder::~SAXDBOBJDefinitionBuilder  
 

Destructor.

Definition at line 1124 of file dbobjdefinition.cpp.

References DEBUG_DEL, VAarray< char * >::empty(), VAarray< DBOBJDefinitionNode * >::empty(), VAarray< char * >::pop(), VAarray< DBOBJDefinitionNode * >::pop(), and releaseCharBuffer().


Member Function Documentation

DBOBJDefinitionNode * SAXDBOBJDefinitionBuilder::buildDBOBJDefinition XMLFlowContext   p_pContext,
XMLStreamProvider   p_pInput
[static]
 

Launches input buffer parse and construction of definition tree.

Parameters:
p_pInputXMLStreamBuffer (XMLStreamBuffer*) XMl Buffer containing definition tree's XML stream.

Definition at line 1059 of file dbobjdefinition.cpp.

References CATCH_XML_FLOW_ERROR_RELEASE_AND_RETURN, DEBUG_IN, DEBUG_OUT, getDefinition(), MAKE_XMLFLOW_EXCEPTION, ON_XML_FLOW_ERROR_DO, ON_XML_FLOW_ERROR_THROW, PREP_CATCH_XML_FLOW_ERROR, SAXDBOBJDefinitionBuilder(), and WATCH_XML_FLOW_ERROR.

Referenced by DBOBJStreamerFactory::buildDefinition().

void SAXDBOBJDefinitionBuilder::characters const XMLCh *const    chars,
const unsigned int    length
[inline]
 

Definition at line 904 of file dbobjdefinition.hpp.

void SAXDBOBJDefinitionBuilder::endDocument   [inline]
 

Definition at line 906 of file dbobjdefinition.hpp.

void SAXDBOBJDefinitionBuilder::endElement const XMLCh *const    uri,
const XMLCh *const    localname,
const XMLCh *const    qname
 

Receive notification of the end of an element. Builds primary keys and keylinks.

Parameters:
uri The URI of the asscioated namespace for this element
localname The local part of the element name
qname The QName of this element
Exceptions:
SAXException Any SAX exception, possibly wrapping another exception.
XMLFlowException ERRCODE_CAUSE_MISSINGREF

Definition at line 1268 of file dbobjdefinition.cpp.

References DBOBJDefinitionNode::addKeyLink(), DBOBJDefinitionNode::addPkey(), CATCH_XML_FLOW_ERROR_RELEASE_AND_RETURN, DEBUG_ECHO, DEBUG_IN, DEBUG_OUT, DBOBJDefinitionNode::getName(), XMLFlowContext::getTranscoder(), ON_XML_FLOW_ERROR_THROW, VAarray< char * >::pop(), VAarray< DBOBJDefinitionNode * >::pop(), PREP_CATCH_XML_FLOW_ERROR, releaseCharBuffer(), THROW_XMLFLOW_EXCEPTION, WATCH_XML_FLOW_ERROR, XMLPROCESSOR_MAX_TAG_SIZE, and XSTR().

void SAXDBOBJDefinitionBuilder::endPrefixMapping const XMLCh *const    prefix [inline]
 

Definition at line 908 of file dbobjdefinition.hpp.

DBOBJDefinitionNode * SAXDBOBJDefinitionBuilder::getDefinition   const
 

After parse, returns root node of the definition tree.

Returns:
(DBOBJDefinitionNode*) Root node of the parsed definition tree.

Definition at line 1139 of file dbobjdefinition.cpp.

References DEBUG_FUNC.

Referenced by buildDBOBJDefinition().

void SAXDBOBJDefinitionBuilder::ignorableWhitespace const XMLCh *const    chars,
const unsigned int    length
[inline]
 

Definition at line 910 of file dbobjdefinition.hpp.

void SAXDBOBJDefinitionBuilder::processingInstruction const XMLCh *const    target,
const XMLCh *const    data
[inline]
 

Definition at line 909 of file dbobjdefinition.hpp.

void SAXDBOBJDefinitionBuilder::setDocumentLocator const Locator *const    locator [inline]
 

Definition at line 911 of file dbobjdefinition.hpp.

void SAXDBOBJDefinitionBuilder::skippedEntity const XMLCh *const    name [inline]
 

Definition at line 912 of file dbobjdefinition.hpp.

void SAXDBOBJDefinitionBuilder::startDocument   [inline]
 

Definition at line 905 of file dbobjdefinition.hpp.

void SAXDBOBJDefinitionBuilder::startElement const XMLCh *const    uri,
const XMLCh *const    localname,
const XMLCh *const    qname,
const Attributes &    attrs
 

Receive notification of the beginning of an element. Builds definition nodes and fields and attach them to the definition tree.

Parameters:
uri The URI of the asscioated namespace for this element
localname The local part of the element name
qname The QName of this element
attrs The attributes attached to the element, if any.
Exceptions:
SAXException Any SAX exception, possibly wrapping another exception.

Definition at line 1151 of file dbobjdefinition.cpp.

References DBOBJDefinitionNode::addChild(), DBOBJDefinitionNode::addField(), DBOBJDEFFIELD_ATTR, DBOBJDEFFIELD_MAP_DATE, DBOBJDefinitionField, DBOBJDefinitionNode, DEBUG_IN, DEBUG_OUT, VAarray< DBOBJDefinitionNode * >::empty(), DBOBJDefinitionField::getMap(), DBOBJDefinitionField::getName(), DBStreamerFactory::getSQLSyntax(), XMLFlowContext::getTranscoder(), VAarray< DBOBJDefinitionNode * >::push(), VAarray< char * >::push(), SAX_getAttrValue(), DBOBJDefinitionField::setAttribute(), DBOBJDefinitionNode::setCheckPost(), DBOBJDefinitionNode::setCheckPre(), DBOBJDefinitionField::setDateFormat(), DBOBJDefinitionField::setDBAlias(), DBOBJDefinitionField::setDBField(), DBOBJDefinitionField::setDBSpecProps(), DBOBJDefinitionNode::setDBtable(), DBOBJDefinitionNode::setDistinct(), DBOBJDefinitionField::setDValue(), DBOBJDefinitionField::setHidden(), DBOBJDefinitionField::setIValue(), DBOBJDefinitionNode::setLocked(), DBOBJDefinitionField::setMap(), DBOBJDefinitionField::setName(), DBOBJDefinitionNode::setName(), DBOBJDefinitionNode::setOnDelete(), DBOBJDefinitionNode::setOnInsert(), DBOBJDefinitionNode::setOnUpdate(), DBOBJDefinitionNode::setRestrict(), DBOBJDefinitionField::setUValue(), DBOBJDefinitionField::setValue(), SQL_SYNTAX_MSSQL, SQL_SYNTAX_ORA, VAarray< DBOBJDefinitionNode * >::top(), XMLPROCESSOR_MAX_ATTRVAL_SIZE, XMLPROCESSOR_MAX_TAG_SIZE, and XSTR().

void SAXDBOBJDefinitionBuilder::startPrefixMapping const XMLCh *const    prefix,
const XMLCh *const    uri
[inline]
 

Definition at line 907 of file dbobjdefinition.hpp.


The documentation for this class was generated from the following files:
Generated on Sat Oct 4 13:24:40 2003 for XDFLengine by doxygen1.3-rc2