cargilld 2003/12/15 09:23:49
Modified: c/src/xercesc/framework/psvi PSVIAttributeList.cpp
PSVIAttributeList.hpp XSComplexTypeDefinition.cpp
XSElementDeclaration.cpp XSIDCDefinition.cpp
XSModel.cpp XSMultiValueFacet.cpp
XSNamespaceItem.cpp XSSimpleTypeDefinition.cpp
XSTypeDefinition.cpp
Log:
psvi updates; cleanup revisits and bug fixes
Revision Changes Path
1.4 +5 -2 xml-xerces/c/src/xercesc/framework/psvi/PSVIAttributeList.cpp
Index: PSVIAttributeList.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/framework/psvi/PSVIAttributeList.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- PSVIAttributeList.cpp 26 Nov 2003 16:20:37 -0000 1.3
+++ PSVIAttributeList.cpp 15 Dec 2003 17:23:48 -0000 1.4
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.4 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.3 2003/11/26 16:20:37 neilg
* more complete implementation of PSVIAttributeList; remove some problematic
const-ness
*
@@ -77,7 +80,7 @@
fMemoryManager(manager)
, fAttrPos(0)
{
- fAttrList = new (fMemoryManager) ValueVectorOf<PSVIAttribute*> (10,
fMemoryManager, true);
+ fAttrList= new (fMemoryManager) RefVectorOf<PSVIAttribute> (10, true,
fMemoryManager);
}
/*
1.5 +7 -4 xml-xerces/c/src/xercesc/framework/psvi/PSVIAttributeList.hpp
Index: PSVIAttributeList.hpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/framework/psvi/PSVIAttributeList.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- PSVIAttributeList.hpp 2 Dec 2003 16:21:41 -0000 1.4
+++ PSVIAttributeList.hpp 15 Dec 2003 17:23:48 -0000 1.5
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.5 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.4 2003/12/02 16:21:41 neilg
* fix for ArrayIndexOutOfBoundsException in PSVIAttributeList; thanks to Pete Lloyd
*
@@ -201,8 +204,8 @@
// list of PSVIAttributes contained by this object
// fAttrPos
// current number of valid PSVIAttributes in fAttrList
- MemoryManager* fMemoryManager;
- ValueVectorOf<PSVIAttribute*>* fAttrList;
+ MemoryManager* fMemoryManager;
+ RefVectorOf<PSVIAttribute>* fAttrList;
unsigned int fAttrPos;
};
inline PSVIAttributeList::~PSVIAttributeList()
@@ -216,7 +219,7 @@
if(fAttrPos == fAttrList->size())
{
retAttr = new (fMemoryManager)PSVIAttribute(fMemoryManager);
- fAttrList->addElement(retAttr);
+ fAttrList->addElement(retAttr);
}
else
{
1.9 +4 -3
xml-xerces/c/src/xercesc/framework/psvi/XSComplexTypeDefinition.cpp
Index: XSComplexTypeDefinition.cpp
===================================================================
RCS file:
/home/cvs/xml-xerces/c/src/xercesc/framework/psvi/XSComplexTypeDefinition.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- XSComplexTypeDefinition.cpp 27 Nov 2003 16:42:00 -0000 1.8
+++ XSComplexTypeDefinition.cpp 15 Dec 2003 17:23:48 -0000 1.9
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.9 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.8 2003/11/27 16:42:00 neilg
* fixes for segfaults and infinite loops in schema component model implementation;
thanks to David Cargill
*
@@ -135,8 +138,7 @@
if (headAnnot)
{
- // REVISIT Size
- fXSAnnotationList = new (manager) RefVectorOf<XSAnnotation>(3, false,
manager);
+ fXSAnnotationList = new (manager) RefVectorOf<XSAnnotation>(1, false,
manager);
XSAnnotation* annot = headAnnot;
do
@@ -242,7 +244,6 @@
bool XSComplexTypeDefinition::derivedFromType(const XSTypeDefinition * const
ancestorType)
{
- // REVISIT: review
if (!ancestorType)
return false;
1.10 +3 -2 xml-xerces/c/src/xercesc/framework/psvi/XSElementDeclaration.cpp
Index: XSElementDeclaration.cpp
===================================================================
RCS file:
/home/cvs/xml-xerces/c/src/xercesc/framework/psvi/XSElementDeclaration.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- XSElementDeclaration.cpp 2 Dec 2003 01:27:01 -0000 1.9
+++ XSElementDeclaration.cpp 15 Dec 2003 17:23:48 -0000 1.10
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.10 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.9 2003/12/02 01:27:01 knoaman
* Properly set fAnnotation data member
*
@@ -190,8 +193,6 @@
if (fSchemaElementDecl->getMiscFlags() & SchemaSymbols::XSD_FIXED)
return XSConstants::VC_FIXED;
- // REVISIT: need to verify this... don't appear to set a DEFAULT flag so thought
- // this might work...
if (fSchemaElementDecl->getDefaultValue())
return XSConstants::VC_DEFAULT;
1.7 +5 -3 xml-xerces/c/src/xercesc/framework/psvi/XSIDCDefinition.cpp
Index: XSIDCDefinition.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/framework/psvi/XSIDCDefinition.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- XSIDCDefinition.cpp 21 Nov 2003 17:29:53 -0000 1.6
+++ XSIDCDefinition.cpp 15 Dec 2003 17:23:48 -0000 1.7
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.7 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.6 2003/11/21 17:29:53 knoaman
* PSVI update
*
@@ -105,9 +108,8 @@
, fXSAnnotationList(0)
{
if (headAnnot)
- {
- // REVISIT Size
- fXSAnnotationList = new (manager) RefVectorOf<XSAnnotation>(3, false,
manager);
+ {
+ fXSAnnotationList = new (manager) RefVectorOf<XSAnnotation>(1, false,
manager);
XSAnnotation* annot = headAnnot;
do
1.13 +24 -29 xml-xerces/c/src/xercesc/framework/psvi/XSModel.cpp
Index: XSModel.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/framework/psvi/XSModel.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- XSModel.cpp 13 Dec 2003 23:35:28 -0000 1.12
+++ XSModel.cpp 15 Dec 2003 17:23:48 -0000 1.13
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.13 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.12 2003/12/13 23:35:28 neilg
* fix bug 25494; thanks to Han Ming
*
@@ -217,8 +220,7 @@
namespaceItem->fHashMap[XSConstants::ATTRIBUTE_GROUP_DEFINITION
-1]->put((void *) xsAttrGroupDecl->getName(), xsAttrGroupDecl);
} // end of attribute group loop
- // Loop through top-level model group definitions in the grammar...
- // REVISIT: how to see if a model group definition is global or local?
+ // Loop through top-level model group definitions in the grammar...
RefHashTableOfEnumerator<XercesGroupInfo> modelGroupEnum =
RefHashTableOfEnumerator<XercesGroupInfo>
(namespaceItem->getSchemaGrammar()->getGroupInfoRegistry());
while (modelGroupEnum.hasMoreElements())
{
@@ -233,9 +235,6 @@
NameIdPoolEnumerator<XMLNotationDecl> notationEnum =
namespaceItem->getSchemaGrammar()->getNotationEnumerator();
while (notationEnum.hasMoreElements())
{
- // REVISIT: do we need to store mapping between XMLNotationDecl objects and
- // XSNotationDeclaration objects? PSVIElement may need it to
- // get the XSNotationDecl...
XMLNotationDecl& notationDecl = notationEnum.nextElement();
XSNotationDeclaration* xsNotationDecl =
fObjFactory->addOrFind(¬ationDecl, this);
@@ -283,8 +282,7 @@
// Populate XSNamedMaps by going through the components
for (unsigned int i=0; i<XSConstants::MULTIVALUE_FACET; i++)
- {
- // REVISIT: what size & modulus
+ {
switch (i+1)
{
case XSConstants::ATTRIBUTE_DECLARATION:
@@ -295,7 +293,7 @@
case XSConstants::NOTATION_DECLARATION:
fComponentMap[i] = new (fMemoryManager) XSNamedMap<XSObject>
(
- 29, // size
+ 20, // size
29, // modulus
fURIStringPool,
false, // adoptElems
@@ -315,14 +313,13 @@
break;
}
}
-
- // Revisit: size of vector
+
fNamespaceStringList = new (manager) RefArrayVectorOf <XMLCh>(10, true,
manager);
fXSNamespaceItemList = new (manager) RefVectorOf <XSNamespaceItem>(10,
true, manager);
fXSAnnotationList = new (manager) RefVectorOf <XSAnnotation> (10,
false, manager);
- fElementDeclarationVector = new (manager) RefVectorOf<XSElementDeclaration>
(10, false, manager);
- fAttributeDeclarationVector = new (manager) RefVectorOf<XSAttributeDeclaration>
(10, false, manager);
- fHashNamespace = new (manager) RefHashTableOf<XSNamespaceItem>
(29, false, manager);
+ fElementDeclarationVector = new (manager) RefVectorOf<XSElementDeclaration>
(30, false, manager);
+ fAttributeDeclarationVector = new (manager) RefVectorOf<XSAttributeDeclaration>
(20, false, manager);
+ fHashNamespace = new (manager) RefHashTableOf<XSNamespaceItem>
(11, false, manager);
// Loop through all grammars in the grammar pool to create the XSNamespaceItem's
// which will have access to Annotation Information which can be used later
when
@@ -386,8 +383,7 @@
unsigned int i;
// Populate XSNamedMaps by going through the components
for (i=0; i<XSConstants::MULTIVALUE_FACET; i++)
- {
- // REVISIT: what size & modulus
+ {
switch (i+1)
{
case XSConstants::ATTRIBUTE_DECLARATION:
@@ -398,7 +394,7 @@
case XSConstants::NOTATION_DECLARATION:
fComponentMap[i] = new (fMemoryManager) XSNamedMap<XSObject>
(
- 29, // size
+ 20, // size
29, // modulus
fURIStringPool,
false, // adoptElems
@@ -418,15 +414,14 @@
break;
}
}
-
- // Revisit: size of vector
+
fNamespaceStringList = new (manager) RefArrayVectorOf <XMLCh>(10, true,
manager);
fXSNamespaceItemList = new (manager) RefVectorOf <XSNamespaceItem>(10,
false, manager);
fDeleteNamespace = new (manager) RefVectorOf <XSNamespaceItem>(10,
true, manager);
fXSAnnotationList = new (manager) RefVectorOf <XSAnnotation> (10,
false, manager);
- fElementDeclarationVector = new (manager) RefVectorOf<XSElementDeclaration>
(10, false, manager);
- fAttributeDeclarationVector = new (manager) RefVectorOf<XSAttributeDeclaration>
(10, false, manager);
- fHashNamespace = new (manager) RefHashTableOf<XSNamespaceItem>
(29, false, manager);
+ fElementDeclarationVector = new (manager) RefVectorOf<XSElementDeclaration>
(30, false, manager);
+ fAttributeDeclarationVector = new (manager) RefVectorOf<XSAttributeDeclaration>
(20, false, manager);
+ fHashNamespace = new (manager) RefHashTableOf<XSNamespaceItem>
(11, false, manager);
if (fParent)
{
@@ -436,7 +431,7 @@
// Need to copy information from parent so it can be returned in this
object...
for (i=0; i<fParent->fXSNamespaceItemList->size(); i++)
{
- XSNamespaceItem* namespaceItem = fXSNamespaceItemList->elementAt(i);
+ XSNamespaceItem* namespaceItem =
fParent->fXSNamespaceItemList->elementAt(i);
fXSNamespaceItemList->addElement(namespaceItem);
XMLCh* NameSpace =
XMLString::replicate(namespaceItem->getSchemaNamespace(), manager);
@@ -607,7 +602,7 @@
namespaceItem = getNamespaceItem(emptyString);
if (namespaceItem)
- namespaceItem->getElementDeclaration(name);
+ return namespaceItem->getElementDeclaration(name);
return 0;
}
@@ -629,7 +624,7 @@
namespaceItem = getNamespaceItem(emptyString);
if (namespaceItem)
- namespaceItem->getAttributeDeclaration(name);
+ return namespaceItem->getAttributeDeclaration(name);
return 0;
}
@@ -652,7 +647,7 @@
namespaceItem = getNamespaceItem(emptyString);
if (namespaceItem)
- namespaceItem->getTypeDefinition(name);
+ return namespaceItem->getTypeDefinition(name);
return 0;
}
@@ -674,7 +669,7 @@
namespaceItem = getNamespaceItem(emptyString);
if (namespaceItem)
- namespaceItem->getAttributeGroup(name);
+ return namespaceItem->getAttributeGroup(name);
return 0;
}
@@ -696,7 +691,7 @@
namespaceItem = getNamespaceItem(emptyString);
if (namespaceItem)
- namespaceItem->getModelGroupDefinition(name);
+ return namespaceItem->getModelGroupDefinition(name);
return 0;
}
@@ -718,7 +713,7 @@
namespaceItem = getNamespaceItem(emptyString);
if (namespaceItem)
- namespaceItem->getNotationDeclaration(name);
+ return namespaceItem->getNotationDeclaration(name);
return 0;
}
1.7 +5 -3 xml-xerces/c/src/xercesc/framework/psvi/XSMultiValueFacet.cpp
Index: XSMultiValueFacet.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/framework/psvi/XSMultiValueFacet.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- XSMultiValueFacet.cpp 27 Nov 2003 16:42:00 -0000 1.6
+++ XSMultiValueFacet.cpp 15 Dec 2003 17:23:48 -0000 1.7
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.7 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.6 2003/11/27 16:42:00 neilg
* fixes for segfaults and infinite loops in schema component model implementation;
thanks to David Cargill
*
@@ -100,9 +103,8 @@
, fXSAnnotationList(0)
{
if (headAnnot)
- {
- // REVISIT Size
- fXSAnnotationList = new (manager) RefVectorOf<XSAnnotation>(3, false,
manager);
+ {
+ fXSAnnotationList = new (manager) RefVectorOf<XSAnnotation>(1, false,
manager);
XSAnnotation* annot = headAnnot;
do
1.7 +8 -5 xml-xerces/c/src/xercesc/framework/psvi/XSNamespaceItem.cpp
Index: XSNamespaceItem.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/framework/psvi/XSNamespaceItem.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- XSNamespaceItem.cpp 21 Nov 2003 22:34:45 -0000 1.6
+++ XSNamespaceItem.cpp 15 Dec 2003 17:23:48 -0000 1.7
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.7 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.6 2003/11/21 22:34:45 neilg
* More schema component model implementation, thanks to David Cargill.
* In particular, this cleans up and completes the XSModel, XSNamespaceItem,
@@ -102,8 +105,7 @@
{
// Populate XSNamedMaps by going through the components
for (unsigned int i=0; i<XSConstants::MULTIVALUE_FACET; i++)
- {
- // REVISIT: what size & modulus & adopt
+ {
switch (i+1)
{
case XSConstants::ATTRIBUTE_DECLARATION:
@@ -114,7 +116,7 @@
case XSConstants::NOTATION_DECLARATION:
fComponentMap[i] = new (fMemoryManager) XSNamedMap<XSObject>
(
- 29, // size
+ 20, // size
29, // modulus
fXSModel->getURIStringPool(),
false, // adoptElems
@@ -142,8 +144,7 @@
}
}
- // Revisit size
- fXSAnnotationList = new (manager) RefVectorOf <XSAnnotation> (10, false,
manager);
+ fXSAnnotationList = new (manager) RefVectorOf <XSAnnotation> (5, false,
manager);
}
XSNamespaceItem::~XSNamespaceItem()
1.8 +4 -7
xml-xerces/c/src/xercesc/framework/psvi/XSSimpleTypeDefinition.cpp
Index: XSSimpleTypeDefinition.cpp
===================================================================
RCS file:
/home/cvs/xml-xerces/c/src/xercesc/framework/psvi/XSSimpleTypeDefinition.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- XSSimpleTypeDefinition.cpp 25 Nov 2003 18:08:31 -0000 1.7
+++ XSSimpleTypeDefinition.cpp 15 Dec 2003 17:23:48 -0000 1.8
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.8 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.7 2003/11/25 18:08:31 knoaman
* Misc. PSVI updates. Thanks to David Cargill.
*
@@ -193,11 +196,7 @@
}
const XMLCh *XSSimpleTypeDefinition::getLexicalFacetValue(FACET facetName)
-{
- // REVISIT
- // We have a vector of Facets. To do a search is a linear operation. Would
- // be faster to store them in mutiple formats (vector & hashtable). Will
- // initially process them in just a vector...
+{
unsigned int size = fXSFacetList->size();
for (unsigned int i=0; i<size; i++)
{
@@ -263,8 +262,6 @@
bool XSSimpleTypeDefinition::derivedFromType(const XSTypeDefinition * const
ancestorType)
{
- // REVISIT: review
-
if (!ancestorType)
return false;
1.8 +6 -2 xml-xerces/c/src/xercesc/framework/psvi/XSTypeDefinition.cpp
Index: XSTypeDefinition.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/framework/psvi/XSTypeDefinition.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- XSTypeDefinition.cpp 25 Nov 2003 18:08:31 -0000 1.7
+++ XSTypeDefinition.cpp 15 Dec 2003 17:23:48 -0000 1.8
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.8 2003/12/15 17:23:48 cargilld
+ * psvi updates; cleanup revisits and bug fixes
+ *
* Revision 1.7 2003/11/25 18:08:31 knoaman
* Misc. PSVI updates. Thanks to David Cargill.
*
@@ -119,8 +122,9 @@
bool XSTypeDefinition::derivedFrom(const XMLCh *typeNamespace,
const XMLCh *name)
-{
- // REVISIT: review
+{
+ // REVISIT: review
+ // look up object... ask Neil...
if (!name)
return false;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]