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(&notationDecl, 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]

Reply via email to