Ignore:
Timestamp:
Nov 18, 2013, 5:53:53 AM (6 years ago)
Author:
cameron
Message:

Updates to xercesc sources

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icXML/icXML-devel/src/xercesc/framework/psvi/PSVIAttributeList.hpp

    r2722 r3565  
    128128     * @return null if the attribute PSVI does not exist
    129129     */
    130     PSVIAttribute *getAttributePSVIByName(const XMLCh *attrName
    131                     , const XMLCh * attrNamespace);
     130    PSVIAttribute *getAttributePSVIByName(const XMLCh *attrName, const XMLCh * attrNamespace);
    132131
    133132    //@}
     
    146145      * @return             new, uninitialized, PSVIAttribute object
    147146      */
    148     PSVIAttribute *getPSVIAttributeToFill(
    149             const XMLCh * attrName
    150             , const XMLCh * attrNS);
     147    PSVIAttribute *getPSVIAttributeToFill(const XMLCh * attrName, const XMLCh * attrNS);
     148
     149    PSVIAttribute *getPSVIAttributeToFill(const XMLSize_t index, const XMLCh * attrName, const XMLCh * attrNS);
     150
     151
     152    void setPSVIMaxAttributeCount(const XMLSize_t maxAttributeCount);
    151153
    152154    /**
     
    154156      */
    155157    void reset();
     158
     159    void setAttributeCount(XMLSize_t attributeCount);
    156160
    157161    //@}
     
    174178    //  list of PSVIAttributes contained by this object
    175179    // fAttrPos
    176     //  current number of initialized PSVIAttributes in fAttrList
     180    //  current number of initialized PSVIAttributes in fAttrList   
     181    RefVectorOf<PSVIAttributeStorage>   fAttrList;
     182    XMLSize_t                           fAttrCount;
    177183    MemoryManager*                      fMemoryManager;
    178     RefVectorOf<PSVIAttributeStorage>*  fAttrList;
    179     XMLSize_t                           fAttrPos;
    180184};
    181185
    182186inline PSVIAttributeList::~PSVIAttributeList()
    183187{
    184     delete fAttrList;
    185 }
    186 
    187 inline PSVIAttribute *PSVIAttributeList::getPSVIAttributeToFill(
    188             const XMLCh *attrName
    189             , const XMLCh * attrNS)
    190 {
    191     PSVIAttributeStorage* storage = 0;
    192     if(fAttrPos == fAttrList->size())
    193     {
    194         storage = new (fMemoryManager) PSVIAttributeStorage();
    195         storage->fPSVIAttribute = new (fMemoryManager) PSVIAttribute(fMemoryManager);
    196         fAttrList->addElement(storage);
    197     }
    198     else
    199     {
    200         storage = fAttrList->elementAt(fAttrPos);
    201     }
     188
     189}
     190
     191inline PSVIAttribute *PSVIAttributeList::getPSVIAttributeToFill(const XMLSize_t index, const XMLCh *attrName, const XMLCh * attrNS)
     192{
     193    PSVIAttributeStorage* storage = fAttrList.elementAt(index);
    202194    storage->fAttributeName = attrName;
    203195    storage->fAttributeNamespace = attrNS;
    204     fAttrPos++;
    205196    return storage->fPSVIAttribute;
    206197}
    207198
     199inline void PSVIAttributeList::setAttributeCount(const XMLSize_t attributeCount)
     200{
     201    fAttrCount = attributeCount;
     202}
     203
     204inline void PSVIAttributeList::setPSVIMaxAttributeCount(const XMLSize_t maxAttributeCount)
     205{
     206    if (unlikely(maxAttributeCount > fAttrList.size()))
     207    {
     208        XMLSize_t count = maxAttributeCount - fAttrList.size();
     209        do
     210        {
     211            PSVIAttributeStorage * storage = new (fMemoryManager) PSVIAttributeStorage();
     212            storage->fPSVIAttribute = new (fMemoryManager) PSVIAttribute(fMemoryManager);
     213            fAttrList.addElement(storage);
     214        }
     215        while (--count);
     216    }
     217}
     218
    208219inline void PSVIAttributeList::reset()
    209220{
    210     fAttrPos = 0;
     221    fAttrCount = 0;
     222}
     223
     224inline PSVIAttribute *PSVIAttributeList::getPSVIAttributeToFill(const XMLCh *, const XMLCh *)
     225{
     226    DEPRECATED_FEATURE_IN_ICXML;
    211227}
    212228
Note: See TracChangeset for help on using the changeset viewer.