diff --git a/src/xercesc/dom/impl/DOMDeepNodeListImpl.cpp b/src/xercesc/dom/impl/DOMDeepNodeListImpl.cpp index 2efb62054b9d99ec8505101c0cabb2e2fc6a28aa..6adc58a76dd255156e9f17d3fd3d4d7d5e67e94c 100644 --- a/src/xercesc/dom/impl/DOMDeepNodeListImpl.cpp +++ b/src/xercesc/dom/impl/DOMDeepNodeListImpl.cpp @@ -79,7 +79,7 @@ DOMDeepNodeListImpl::DOMDeepNodeListImpl(const DOMNode *rootNode, , fMatchURIandTagname(false) { fTagName = ((DOMDocumentImpl *)(castToNodeImpl(rootNode)->getOwnerDocument()))->getPooledString(tagName); - fMatchAll = (XMLString::compareString(fTagName, kAstr) == 0); + fMatchAll = XMLString::equals(fTagName, kAstr); } @@ -95,8 +95,8 @@ DOMDeepNodeListImpl::DOMDeepNodeListImpl(const DOMNode *rootNode, , fMatchURIandTagname(true) { fTagName = ((DOMDocumentImpl *)(castToNodeImpl(rootNode)->getOwnerDocument()))->getPooledString(localName); - fMatchAll = (XMLString::compareString(fTagName, kAstr) == 0); - fMatchAllURI = (XMLString::compareString(namespaceURI, kAstr) == 0); + fMatchAll = XMLString::equals(fTagName, kAstr); + fMatchAllURI = XMLString::equals(namespaceURI, kAstr); fNamespaceURI = ((DOMDocumentImpl *)(castToNodeImpl(rootNode)->getOwnerDocument()))->getPooledString(namespaceURI); } @@ -231,18 +231,15 @@ DOMNode *DOMDeepNodeListImpl::nextMatchingElementAfter(DOMNode *current) if (!fMatchURIandTagname) { //DOM Level 1 if (fMatchAll || - (XMLString::compareString(currElement->getTagName(), - fTagName) == 0)) + XMLString::equals(currElement->getTagName(), fTagName)) return current; } else { //DOM Level 2 if (!fMatchAllURI && - (XMLString::compareString(current -> getNamespaceURI(), - fNamespaceURI) != 0)) + !XMLString::equals(current->getNamespaceURI(), fNamespaceURI)) continue; if (fMatchAll || - (XMLString::compareString(current -> getLocalName(), - fTagName) == 0)) + XMLString::equals(current->getLocalName(), fTagName)) return current; } } diff --git a/src/xercesc/dom/impl/DOMDeepNodeListPool.c b/src/xercesc/dom/impl/DOMDeepNodeListPool.c index adf4607867c1719f7a9095ab74c93ebaacac79ca..da266cc45ab9c89161a98c5d52aebffbf8398697 100644 --- a/src/xercesc/dom/impl/DOMDeepNodeListPool.c +++ b/src/xercesc/dom/impl/DOMDeepNodeListPool.c @@ -359,7 +359,7 @@ findBucketElem(const void* const key1, const XMLCh* const key2, const XMLCh* con { //key2 and key3 are XMLCh*, compareString takes null pointer vs zero len string the same //but we need them to be treated as different keys in this case - if (fHash->equals(key1, curElem->fKey1) && (!XMLString::compareString(key2, curElem->fKey2)) && (!XMLString::compareString(key3, curElem->fKey3))) { + if (fHash->equals(key1, curElem->fKey1) && (XMLString::equals(key2, curElem->fKey2)) && (XMLString::equals(key3, curElem->fKey3))) { if (!key2 || !curElem->fKey2) { if (key2 || curElem->fKey2) { curElem = curElem->fNext; @@ -395,7 +395,7 @@ findBucketElem(const void* const key1, const XMLCh* const key2, const XMLCh* con { //key2 and key3 are XMLCh*, compareString takes null pointer vs zero len string the same //but we need them to be treated as different keys in this case - if (fHash->equals(key1, curElem->fKey1) && (!XMLString::compareString(key2, curElem->fKey2)) && (!XMLString::compareString(key3, curElem->fKey3))) { + if (fHash->equals(key1, curElem->fKey1) && (XMLString::equals(key2, curElem->fKey2)) && (XMLString::equals(key3, curElem->fKey3))) { if (!key2 || !curElem->fKey2) { if (key2 || curElem->fKey2) { curElem = curElem->fNext; diff --git a/src/xercesc/dom/impl/DOMDocumentTypeImpl.cpp b/src/xercesc/dom/impl/DOMDocumentTypeImpl.cpp index 386d6290185729b3516079bd6ad800563fe97893..97280e2d222fea767c4b3668954d851bb44434b5 100644 --- a/src/xercesc/dom/impl/DOMDocumentTypeImpl.cpp +++ b/src/xercesc/dom/impl/DOMDocumentTypeImpl.cpp @@ -495,7 +495,7 @@ bool DOMDocumentTypeImpl::isEqualNode(const DOMNode* arg) return false; } } - else if (XMLString::compareString(getPublicId(), argDT->getPublicId())) { + else if (!XMLString::equals(getPublicId(), argDT->getPublicId())) { return false; } @@ -504,7 +504,7 @@ bool DOMDocumentTypeImpl::isEqualNode(const DOMNode* arg) return false; } } - else if (XMLString::compareString(getSystemId(), argDT->getSystemId())) { + else if (!XMLString::equals(getSystemId(), argDT->getSystemId())) { return false; } @@ -513,7 +513,7 @@ bool DOMDocumentTypeImpl::isEqualNode(const DOMNode* arg) return false; } } - else if (XMLString::compareString(getInternalSubset(), argDT->getInternalSubset())) { + else if (!XMLString::equals(getInternalSubset(), argDT->getInternalSubset())) { return false; } diff --git a/src/xercesc/dom/impl/DOMElementImpl.cpp b/src/xercesc/dom/impl/DOMElementImpl.cpp index 24684a1d0b6d4441367633bc4be96162eb0dd42b..f5bb3eb139a95090afb7a6deb2e6334398d13b2a 100644 --- a/src/xercesc/dom/impl/DOMElementImpl.cpp +++ b/src/xercesc/dom/impl/DOMElementImpl.cpp @@ -478,7 +478,7 @@ const XMLCh* DOMElementImpl::getBaseURI() const DOMNode* attrNode = fAttributes->getNamedItem(xmlBaseString); if (attrNode) { const XMLCh* uri = attrNode->getNodeValue(); - if (XMLString::stringLen(uri) != 0 ) {// attribute value is always empty string + if (uri && *uri) {// attribute value is always empty string try { XMLUri temp(baseURI); XMLUri temp2(&temp, uri); diff --git a/src/xercesc/dom/impl/DOMImplementationImpl.cpp b/src/xercesc/dom/impl/DOMImplementationImpl.cpp index a1ba3a1a34609c68c6ecc8554e98a0f78f1d5d6f..076f3288680734fd87e1c57d7a8b9cd9e49d1fbc 100644 --- a/src/xercesc/dom/impl/DOMImplementationImpl.cpp +++ b/src/xercesc/dom/impl/DOMImplementationImpl.cpp @@ -148,10 +148,10 @@ bool DOMImplementationImpl::hasFeature(const XMLCh * feature, const XMLCh * if (!feature) return false; - bool anyVersion = (version == 0 || XMLString::stringLen(version) == 0); - bool version1_0 = (XMLString::compareString(version, g1_0) == 0); - bool version2_0 = (XMLString::compareString(version, g2_0) == 0); - bool version3_0 = (XMLString::compareString(version, g3_0) == 0); + bool anyVersion = (version == 0 || !*version); + bool version1_0 = XMLString::equals(version, g1_0); + bool version2_0 = XMLString::equals(version, g2_0); + bool version3_0 = XMLString::equals(version, g3_0); // Currently, we support only XML Level 1 version 1.0 if (XMLString::compareIString(feature, gXML) == 0 diff --git a/src/xercesc/dom/impl/DOMNamedNodeMapImpl.cpp b/src/xercesc/dom/impl/DOMNamedNodeMapImpl.cpp index 7931946e12ba27d4941af739bb24edaefb4b4601..cce5a9c91f52e271e6896a44233f5e7b3bcad76c 100644 --- a/src/xercesc/dom/impl/DOMNamedNodeMapImpl.cpp +++ b/src/xercesc/dom/impl/DOMNamedNodeMapImpl.cpp @@ -315,12 +315,12 @@ int DOMNamedNodeMapImpl::findNamePoint(const XMLCh *namespaceURI, DOMNode *node = fNodes -> elementAt(i); const XMLCh * nNamespaceURI = node->getNamespaceURI(); const XMLCh * nLocalName = node->getLocalName(); - if (XMLString::compareString(nNamespaceURI, namespaceURI)) //URI not match + if (!XMLString::equals(nNamespaceURI, namespaceURI)) //URI not match continue; else { - if (XMLString::compareString(localName, nLocalName) == 0 + if (XMLString::equals(localName, nLocalName) || - (nLocalName == 0 && (XMLString::compareString(localName, node->getNodeName()) == 0))) + (nLocalName == 0 && XMLString::equals(localName, node->getNodeName()))) return i; } } diff --git a/src/xercesc/dom/impl/DOMNodeIDMap.cpp b/src/xercesc/dom/impl/DOMNodeIDMap.cpp index 52a8a44375972cf509a5dbfa27a7e03396611e69..0bfe4e8af907d10fb22b317573ea97772025abdb 100644 --- a/src/xercesc/dom/impl/DOMNodeIDMap.cpp +++ b/src/xercesc/dom/impl/DOMNodeIDMap.cpp @@ -216,7 +216,7 @@ DOMAttr *DOMNodeIDMap::find(const XMLCh *id) } - if ((tableSlot != (DOMAttr *)-1) && XMLString::compareString(tableSlot->getValue(), id) == 0) + if ((tableSlot != (DOMAttr *)-1) && XMLString::equals(tableSlot->getValue(), id)) return tableSlot; currentHash += initalHash; // rehash diff --git a/src/xercesc/dom/impl/DOMStringPool.cpp b/src/xercesc/dom/impl/DOMStringPool.cpp index fbc81785ec2384523cfad699921aa128df8c0457..e5ac23c3ab8c9a5239d2f0f4727cb4976ae32fbf 100644 --- a/src/xercesc/dom/impl/DOMStringPool.cpp +++ b/src/xercesc/dom/impl/DOMStringPool.cpp @@ -129,7 +129,7 @@ const XMLCh *DOMStringPool::getPooledString(const XMLCh *in) pspe = &fHashTable[inHash]; while (*pspe != 0) { - if (XMLString::compareString((*pspe)->fString, in) == 0) + if (XMLString::equals((*pspe)->fString, in)) return (*pspe)->fString; pspe = &((*pspe)->fNext); } diff --git a/src/xercesc/internal/ReaderMgr.cpp b/src/xercesc/internal/ReaderMgr.cpp index 0ff4f112270efb0e3e2978ab8aa47fd153a5e51e..aedf5712d8e2161eb5aef257bdd1f8529c0b443d 100644 --- a/src/xercesc/internal/ReaderMgr.cpp +++ b/src/xercesc/internal/ReaderMgr.cpp @@ -845,7 +845,7 @@ bool ReaderMgr::pushReader( XMLReader* const reader const XMLEntityDecl* curDecl = fEntityStack->elementAt(index); if (curDecl) { - if (!XMLString::compareString(theName, curDecl->getName())) + if (XMLString::equals(theName, curDecl->getName())) { // Oops, already there so delete reader and return delete reader; diff --git a/src/xercesc/internal/VecAttrListImpl.cpp b/src/xercesc/internal/VecAttrListImpl.cpp index a1c643f6d7eeab35afb6ee2bec9ba6a99d5f25c3..1a8ed419dcdd3302eec4c0c8307789cf9c5da55f 100644 --- a/src/xercesc/internal/VecAttrListImpl.cpp +++ b/src/xercesc/internal/VecAttrListImpl.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.4 2002/09/24 20:02:20 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.3 2002/07/05 20:12:35 tng * [Bug 9788] VecAttrListImpl::getValue skips prefix if SAX namespace validation is on. * @@ -165,7 +168,7 @@ const XMLCh* VecAttrListImpl::getType(const XMLCh* const name) const { const XMLAttr* curElem = fVector->elementAt(index); - if (!XMLString::compareString(curElem->getQName(), name)) + if (XMLString::equals(curElem->getQName(), name)) return XMLAttDef::getAttTypeString(curElem->getType()); } return 0; @@ -181,7 +184,7 @@ const XMLCh* VecAttrListImpl::getValue(const XMLCh* const name) const { const XMLAttr* curElem = fVector->elementAt(index); - if (!XMLString::compareString(curElem->getQName(), name)) + if (XMLString::equals(curElem->getQName(), name)) return curElem->getValue(); } return 0; @@ -201,7 +204,7 @@ const XMLCh* VecAttrListImpl::getValue(const char* const name) const { const XMLAttr* curElem = fVector->elementAt(index); - if (!XMLString::compareString(curElem->getQName(), wideName)) + if (XMLString::equals(curElem->getQName(), wideName)) return curElem->getValue(); } return 0; diff --git a/src/xercesc/internal/VecAttributesImpl.cpp b/src/xercesc/internal/VecAttributesImpl.cpp index b5fb45dc078d05d801b2f559278d1e88c096e81c..3b487ac87114905efc05d1f9296edea1f51936a7 100644 --- a/src/xercesc/internal/VecAttributesImpl.cpp +++ b/src/xercesc/internal/VecAttributesImpl.cpp @@ -56,8 +56,11 @@ /* * $Log$ - * Revision 1.1 2002/02/01 22:21:58 peiyongz - * Initial revision + * Revision 1.2 2002/09/24 20:02:20 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * + * Revision 1.1.1.1 2002/02/01 22:21:58 peiyongz + * sane_include * * Revision 1.7 2001/10/05 17:57:39 peiyongz * [BUG# 3831]: -1 returned from getIndex() needs to be checked @@ -188,8 +191,8 @@ int VecAttributesImpl::getIndex(const XMLCh* const uri, const XMLCh* const local fScanner->getURIText(curElem->getURIId(), uriBuffer) ; - if ( (!XMLString::compareString(curElem->getName(), localPart)) && - (!XMLString::compareString(uriBuffer.getRawBuffer(), uri)) ) + if ( (XMLString::equals(curElem->getName(), localPart)) && + (XMLString::equals(uriBuffer.getRawBuffer(), uri)) ) return index ; } return -1; @@ -205,7 +208,7 @@ int VecAttributesImpl::getIndex(const XMLCh* const qName ) const { const XMLAttr* curElem = fVector->elementAt(index); - if (!XMLString::compareString(curElem->getQName(), qName)) + if (XMLString::equals(curElem->getQName(), qName)) return index ; } return -1; diff --git a/src/xercesc/internal/XMLScanner.cpp b/src/xercesc/internal/XMLScanner.cpp index 9dffb31f04f7716819813ae3121651fc364d03b1..7da22112fb1afebb3408a318d5c708714117e94d 100644 --- a/src/xercesc/internal/XMLScanner.cpp +++ b/src/xercesc/internal/XMLScanner.cpp @@ -1775,7 +1775,7 @@ void XMLScanner::scanEndTag(bool& gotData) // Make sure that its the end of the element that we expect XMLElementDecl* tempElement = topElem->fThisElement; if (fDoNamespaces && fGrammarType == Grammar::SchemaGrammarType) { - if ((topUri != uriId) || (XMLString::compareString(tempElement->getBaseName(), bbName.getRawBuffer()))) + if ((topUri != uriId) || (!XMLString::equals(tempElement->getBaseName(), bbName.getRawBuffer()))) { emitError ( @@ -1785,7 +1785,7 @@ void XMLScanner::scanEndTag(bool& gotData) } } else { - if (XMLString::compareString(tempElement->getFullName(), qnameBuf.getRawBuffer())) + if (!XMLString::equals(tempElement->getFullName(), qnameBuf.getRawBuffer())) { emitError ( @@ -2701,7 +2701,7 @@ bool XMLScanner::scanStartTag(bool& gotData) if (fValidate) { // If a DocType exists, then check if it matches the root name there. - if (fRootElemName && XMLString::compareString(fQNameBuf.getRawBuffer(), fRootElemName)) + if (fRootElemName && !XMLString::equals(fQNameBuf.getRawBuffer(), fRootElemName)) fValidator->emitError(XMLValid::RootElemNotLikeDocType); // Some validators may also want to check the root, call the @@ -3332,7 +3332,7 @@ bool XMLScanner::scanStartTagNS(bool& gotData) { const XMLCh* rawPtr = curDef.getFullName(); if (!XMLString::compareNString(rawPtr, XMLUni::fgXMLNSColonString, 6) - || !XMLString::compareString(rawPtr, XMLUni::fgXMLNSString)) + || XMLString::equals(rawPtr, XMLUni::fgXMLNSString)) updateNSMap(rawPtr, curDef.getValue()); } } @@ -3646,7 +3646,7 @@ bool XMLScanner::scanStartTagNS(bool& gotData) if (fValidate) { // If a DocType exists, then check if it matches the root name there. - if (fRootElemName && XMLString::compareString(qnameRawBuf, fRootElemName)) + if (fRootElemName && !XMLString::equals(qnameRawBuf, fRootElemName)) fValidator->emitError(XMLValid::RootElemNotLikeDocType); // Some validators may also want to check the root, call the @@ -3926,11 +3926,11 @@ void XMLScanner::scanXMLDecl(const DeclTypes type) emitError(XMLErrs::ExpectedDeclString); // See if it matches any of our expected strings - if (!XMLString::compareString(nameBuf.getRawBuffer(), XMLUni::fgVersionString)) + if (XMLString::equals(nameBuf.getRawBuffer(), XMLUni::fgVersionString)) curString = VersionString; - else if (!XMLString::compareString(nameBuf.getRawBuffer(), XMLUni::fgEncodingString)) + else if (XMLString::equals(nameBuf.getRawBuffer(), XMLUni::fgEncodingString)) curString = EncodingString; - else if (!XMLString::compareString(nameBuf.getRawBuffer(), XMLUni::fgStandaloneString)) + else if (XMLString::equals(nameBuf.getRawBuffer(), XMLUni::fgStandaloneString)) curString = StandaloneString; else curString = UnknownString; @@ -3968,7 +3968,7 @@ void XMLScanner::scanXMLDecl(const DeclTypes type) const XMLCh* rawValue = buffers[curString]->getRawBuffer(); if (curString == VersionString) { - if (XMLString::compareString(rawValue, XMLUni::fgSupportedVersion)) + if (!XMLString::equals(rawValue, XMLUni::fgSupportedVersion)) emitError(XMLErrs::UnsupportedXMLVersion, rawValue); } else if (curString == EncodingString) @@ -3978,9 +3978,9 @@ void XMLScanner::scanXMLDecl(const DeclTypes type) } else if (curString == StandaloneString) { - if (!XMLString::compareString(rawValue, XMLUni::fgYesString)) + if (XMLString::equals(rawValue, XMLUni::fgYesString)) fStandalone = true; - else if (!XMLString::compareString(rawValue, XMLUni::fgNoString)) + else if (XMLString::equals(rawValue, XMLUni::fgNoString)) fStandalone = false; else { @@ -4159,9 +4159,9 @@ XMLScanner::resolveQName( const XMLCh* const qName // to map to by the NS spec. xmlns gets mapped to a special place holder // URI that we define (so that it maps to something checkable.) // - if (!XMLString::compareString(prefixBuf.getRawBuffer(), XMLUni::fgXMLNSString)) + if (XMLString::equals(prefixBuf.getRawBuffer(), XMLUni::fgXMLNSString)) uriId = fXMLNSNamespaceId; - else if (!XMLString::compareString(prefixBuf.getRawBuffer(), XMLUni::fgXMLString)) + else if (XMLString::equals(prefixBuf.getRawBuffer(), XMLUni::fgXMLString)) uriId = fXMLNamespaceId; else { diff --git a/src/xercesc/internal/XMLScanner2.cpp b/src/xercesc/internal/XMLScanner2.cpp index 6e7810891f29a75fbe5a9b9cdcff886ed4d15036..d5786ab3213ce6dc891c6d609399fd3dcdc5ead6 100644 --- a/src/xercesc/internal/XMLScanner2.cpp +++ b/src/xercesc/internal/XMLScanner2.cpp @@ -206,8 +206,8 @@ XMLScanner::buildAttList(const RefVectorOf<KVStringPair>& providedAttrs // const bool isNSAttr = (uriId == fXMLNSNamespaceId) || (uriId == fXMLNamespaceId) - || !XMLString::compareString(suffPtr, XMLUni::fgXMLNSString) - || !XMLString::compareString(getURIText(uriId), SchemaSymbols::fgURI_XSI); + || XMLString::equals(suffPtr, XMLUni::fgXMLNSString) + || XMLString::equals(getURIText(uriId), SchemaSymbols::fgURI_XSI); // @@ -836,9 +836,9 @@ XMLScanner::resolvePrefix( const XMLCh* const prefix // to map to by the NS spec. xmlns gets mapped to a special place holder // URI that we define (so that it maps to something checkable.) // - if (!XMLString::compareString(prefix, XMLUni::fgXMLNSString)) + if (XMLString::equals(prefix, XMLUni::fgXMLNSString)) return fXMLNSNamespaceId; - else if (!XMLString::compareString(prefix, XMLUni::fgXMLString)) + else if (XMLString::equals(prefix, XMLUni::fgXMLString)) return fXMLNamespaceId; @@ -868,9 +868,9 @@ XMLScanner::resolvePrefix( const XMLCh* const prefix // to map to by the NS spec. xmlns gets mapped to a special place holder // URI that we define (so that it maps to something checkable.) // - if (!XMLString::compareString(prefix, XMLUni::fgXMLNSString)) + if (XMLString::equals(prefix, XMLUni::fgXMLNSString)) return fXMLNSNamespaceId; - else if (!XMLString::compareString(prefix, XMLUni::fgXMLString)) + else if (XMLString::equals(prefix, XMLUni::fgXMLString)) return fXMLNamespaceId; // @@ -1323,14 +1323,14 @@ void XMLScanner::scanRawAttrListforNameSpaces(const RefVectorOf<KVStringPair>* t // "xmlns", then use it to update the map. // if (!XMLString::compareNString(rawPtr, XMLUni::fgXMLNSColonString, 6) - || !XMLString::compareString(rawPtr, XMLUni::fgXMLNSString)) + || XMLString::equals(rawPtr, XMLUni::fgXMLNSString)) { const XMLCh* valuePtr = curPair->getValue(); updateNSMap(rawPtr, valuePtr); // if the schema URI is seen in the the valuePtr, set the boolean seeXsi - if (!XMLString::compareString(valuePtr, SchemaSymbols::fgURI_XSI)) { + if (XMLString::equals(valuePtr, SchemaSymbols::fgURI_XSI)) { fSeeXsi = true; } } @@ -1361,17 +1361,17 @@ void XMLScanner::scanRawAttrListforNameSpaces(const RefVectorOf<KVStringPair>* t const XMLCh* valuePtr = curPair->getValue(); const XMLCh* suffPtr = attName.getLocalPart(); - if (!XMLString::compareString(suffPtr, SchemaSymbols::fgXSI_SCHEMALOCACTION)) + if (XMLString::equals(suffPtr, SchemaSymbols::fgXSI_SCHEMALOCACTION)) parseSchemaLocation(valuePtr); - else if (!XMLString::compareString(suffPtr, SchemaSymbols::fgXSI_NONAMESPACESCHEMALOCACTION)) + else if (XMLString::equals(suffPtr, SchemaSymbols::fgXSI_NONAMESPACESCHEMALOCACTION)) resolveSchemaGrammar(valuePtr, XMLUni::fgZeroLenString); - if (!XMLString::compareString(suffPtr, SchemaSymbols::fgXSI_TYPE)) { + if (XMLString::equals(suffPtr, SchemaSymbols::fgXSI_TYPE)) { fXsiType.set(valuePtr); } - else if (!XMLString::compareString(suffPtr, SchemaSymbols::fgATT_NILL) + else if (XMLString::equals(suffPtr, SchemaSymbols::fgATT_NILL) && fValidator && fValidator->handlesSchema() - && !XMLString::compareString(valuePtr, SchemaSymbols::fgATTVAL_TRUE)) { + && XMLString::equals(valuePtr, SchemaSymbols::fgATTVAL_TRUE)) { ((SchemaValidator*)fValidator)->setNillable(true); } } @@ -1501,7 +1501,7 @@ void XMLScanner::resolveSchemaGrammar(const XMLCh* const loc, const XMLCh* const if (root != 0) { const XMLCh* newUri = root->getAttribute(SchemaSymbols::fgATT_TARGETNAMESPACE); - if (XMLString::compareString(newUri, uri)) { + if (!XMLString::equals(newUri, uri)) { if (fValidate) fValidator->emitError(XMLValid::WrongTargetNamespace, loc, uri); grammar = fGrammarResolver->getGrammar(newUri); @@ -3095,7 +3095,7 @@ bool XMLScanner::laxElementValidation(QName* element, ContentLeafNameTypeVector* if (type == ContentSpecNode::Leaf) { if (((uri == elementURI) - && !XMLString::compareString(fElemMap->getLocalPart(), element->getLocalPart())) + && XMLString::equals(fElemMap->getLocalPart(), element->getLocalPart())) || comparator.isEquivalentTo(element, fElemMap)) { nextState = cm->getNextState(currState, i); diff --git a/src/xercesc/parsers/AbstractDOMParser.cpp b/src/xercesc/parsers/AbstractDOMParser.cpp index 0ccf85d11225bb4d92d4e8030becd0642ab5179a..0c71e4b841f11a3fd2e37dc52a0fca4a4c6eef0a 100644 --- a/src/xercesc/parsers/AbstractDOMParser.cpp +++ b/src/xercesc/parsers/AbstractDOMParser.cpp @@ -568,7 +568,7 @@ void AbstractDOMParser::endEntityReference(const XMLEntityDecl& entDecl) // retrive the baseURI from the entity decl const XMLCh* baseURI = erImpl->getBaseURI(); - if (baseURI != 0 && XMLString::compareString(baseURI,fDocument->getDocumentURI())) { + if (baseURI != 0 && !XMLString::equals(baseURI,fDocument->getDocumentURI())) { if (fScanner -> getDoNamespaces()) { ((DOMElement*)fCurrentNode)->setAttributeNS(DOMNodeImpl::getXmlURIString(), baseString, baseURI); } else { @@ -656,15 +656,7 @@ void AbstractDOMParser::startDocument() fCurrentNode = fDocument; // set DOM error checking off fDocument->setErrorChecking(false); - - const XMLCh* systemId = fScanner->getLocator()->getSystemId(); - if (systemId) { - XMLBufBid bbURI(&fBufMgr); - XMLBuffer& bufURI = bbURI.getBuffer(); - XMLString::fixURI(systemId, bufURI); - - fDocument->setDocumentURI(bufURI.getRawBuffer()); - } + fDocument->setDocumentURI(fScanner->getLocator()->getSystemId()); fDocument->setActualEncoding(fScanner->getReaderMgr()->getCurrentEncodingStr()); } @@ -719,7 +711,7 @@ void AbstractDOMParser::startElement(const XMLElementDecl& elemDecl const XMLAttr* oneAttrib = attrList.elementAt(index); unsigned int attrURIId = oneAttrib -> getURIId(); namespaceURI = 0; - if (!XMLString::compareString(oneAttrib -> getName(), XMLNS)) //for xmlns=... + if (XMLString::equals(oneAttrib -> getName(), XMLNS)) //for xmlns=... attrURIId = fScanner->getXMLNSNamespaceId(); if (attrURIId != fScanner->getEmptyNamespaceId()) { //TagName has a prefix fScanner->getURIText(attrURIId, bufURI); //get namespaceURI @@ -810,7 +802,7 @@ void AbstractDOMParser::startElement(const XMLElementDecl& elemDecl unsigned int uriId = fScanner->resolveQName(qualifiedName, nameBuf, prefixBuf, ElemStack::Mode_Attribute); const XMLCh* namespaceURI = 0; - if (!XMLString::compareString(qualifiedName, XMLNS)) //for xmlns=... + if (XMLString::equals(qualifiedName, XMLNS)) //for xmlns=... uriId = fScanner->getXMLNSNamespaceId(); if (uriId != fScanner->getEmptyNamespaceId()) { //TagName has a prefix namespaceURI = fScanner->getURIText(uriId); @@ -892,7 +884,7 @@ void AbstractDOMParser::XMLDecl(const XMLCh* const version , const XMLCh* const standalone , const XMLCh* const actualEncStr) { - fDocument->setStandalone(!XMLString::compareString(XMLUni::fgYesString, standalone)); + fDocument->setStandalone(XMLString::equals(XMLUni::fgYesString, standalone)); fDocument->setVersion(version); fDocument->setEncoding(encoding); @@ -1180,7 +1172,7 @@ void AbstractDOMParser::endAttList XMLString::subString(prefix ,qualifiedName, 0, index); - if (!XMLString::compareString(prefix,XMLNS)) + if (XMLString::equals(prefix,XMLNS)) buf.append(XMLUni::fgXMLNSURIName); else buf.append(XMLUni::fgXMLURIName); @@ -1190,7 +1182,7 @@ void AbstractDOMParser::endAttList } else { // No prefix - if (!XMLString::compareString(qualifiedName,XMLNS)) + if (XMLString::equals(qualifiedName,XMLNS)) buf.append(XMLUni::fgXMLNSURIName); } @@ -1245,14 +1237,7 @@ void AbstractDOMParser::entityDecl entity->setPublicId(entityDecl.getPublicId()); entity->setSystemId(entityDecl.getSystemId()); entity->setNotationName(entityDecl.getNotationName()); - if (entityDecl.getBaseURI()) - { - XMLBufBid bbURI(&fBufMgr); - XMLBuffer& bufURI = bbURI.getBuffer(); - XMLString::fixURI(entityDecl.getBaseURI(), bufURI); - - entity->setBaseURI(bufURI.getRawBuffer()); - } + entity->setBaseURI(entityDecl.getBaseURI()); DOMEntityImpl *previousDef = (DOMEntityImpl *) fDocumentType->getEntities()->setNamedItem( entity ); @@ -1323,14 +1308,7 @@ void AbstractDOMParser::notationDecl DOMNotationImpl* notation = (DOMNotationImpl *)fDocument->createNotation(notDecl.getName()); notation->setPublicId(notDecl.getPublicId()); notation->setSystemId(notDecl.getSystemId()); - if (notDecl.getBaseURI()) - { - XMLBufBid bbURI(&fBufMgr); - XMLBuffer& bufURI = bbURI.getBuffer(); - XMLString::fixURI(notDecl.getBaseURI(), bufURI); - - notation->setBaseURI(bufURI.getRawBuffer()); - } + notation->setBaseURI(notDecl.getBaseURI()); DOMNode* rem = fDocumentType->getNotations()->setNamedItem( notation ); if (rem) diff --git a/src/xercesc/parsers/SAX2XMLReaderImpl.cpp b/src/xercesc/parsers/SAX2XMLReaderImpl.cpp index 3d09515822ee2db82ee4c34efa6ac8b423e80141..14e1c40b7d6c1579bcb2f87465d5552e2d4a2e45 100644 --- a/src/xercesc/parsers/SAX2XMLReaderImpl.cpp +++ b/src/xercesc/parsers/SAX2XMLReaderImpl.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.11 2002/09/24 20:00:32 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.10 2002/08/14 15:20:38 knoaman * [Bug 3111] Problem with LexicalHandler::startDTD() and LexicalHandler::endDTD(). * @@ -816,9 +819,9 @@ startElement( const XMLElementDecl& elemDecl for (unsigned int i = 0; i < attrCount; i++) { tempAttr = attrList.elementAt(i); - if (XMLString::compareString(tempAttr->getQName(), nsString) == 0) + if (XMLString::equals(tempAttr->getQName(), nsString)) nsURI = tempAttr->getValue(); - if (XMLString::compareString(tempAttr->getPrefix(), nsString) == 0) + if (XMLString::equals(tempAttr->getPrefix(), nsString)) { nsPrefix = tempAttr->getName(); nsURI = tempAttr->getValue(); diff --git a/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp b/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp index 9b5c4dfa198253d20e3f6758be022b8e55e61c56..a3c1e43485e8bc157a669f83b41ddd6b57837776 100644 --- a/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp +++ b/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp @@ -1,37 +1,37 @@ /* * The Apache Software License, Version 1.1 - * + * * Copyright (c) 1999-2000 The Apache Software Foundation. All rights * reserved. - * + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: - * + * * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * + * notice, this list of conditions and the following disclaimer. + * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. - * + * * 3. The end-user documentation included with the redistribution, - * if any, must include the following acknowledgment: + * if any, must include the following acknowledgment: * "This product includes software developed by the * Apache Software Foundation (http://www.apache.org/)." * Alternately, this acknowledgment may appear in the software itself, * if and wherever such third-party acknowledgments normally appear. - * + * * 4. The names "Xerces" and "Apache Software Foundation" must * not be used to endorse or promote products derived from this - * software without prior written permission. For written + * software without prior written permission. For written * permission, please contact apache\@apache.org. - * + * * 5. Products derived from this software may not be called "Apache", * nor may "Apache" appear in their name, without prior written * permission of the Apache Software Foundation. - * + * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE @@ -45,7 +45,7 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * ==================================================================== - * + * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software Foundation, and was * originally based on software copyright (c) 1999, International @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.3 2002/09/24 19:57:59 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.2 2002/09/23 22:14:37 peiyongz * Code sharing and Array boundary checking added * @@ -106,9 +109,9 @@ InMemMsgLoader::InMemMsgLoader(const XMLCh* const msgDomain) :fMsgDomain(0) { - if (XMLString::compareString(msgDomain, XMLUni::fgXMLErrDomain) - && XMLString::compareString(msgDomain, XMLUni::fgExceptDomain) - && XMLString::compareString(msgDomain, XMLUni::fgValidityDomain)) + if (!XMLString::equals(msgDomain, XMLUni::fgXMLErrDomain) + && !XMLString::equals(msgDomain, XMLUni::fgExceptDomain) + && !XMLString::equals(msgDomain, XMLUni::fgValidityDomain)) { XMLPlatformUtils::panic(XMLPlatformUtils::Panic_UnknownMsgDomain); } @@ -140,21 +143,21 @@ bool InMemMsgLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad XMLCh* outPtr = toFill; const XMLCh* srcPtr = 0; - if (!XMLString::compareString(fMsgDomain, XMLUni::fgXMLErrDomain)) + if (XMLString::equals(fMsgDomain, XMLUni::fgXMLErrDomain)) { if ( msgToLoad > gXMLErrArraySize) return false; else srcPtr = gXMLErrArray[msgToLoad - 1]; } - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgExceptDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgExceptDomain)) { if ( msgToLoad > gXMLExceptArraySize) return false; else srcPtr = gXMLExceptArray[msgToLoad - 1]; } - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgValidityDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgValidityDomain)) { if ( msgToLoad > gXMLValidityArraySize) return false; diff --git a/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.cpp b/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.cpp index 5420f625505dbd6ceae2d4b9a27671deaae54630..3653c036c0bc3ec378aa0782afb36f9913ade8b3 100644 --- a/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.cpp +++ b/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.4 2002/09/24 19:58:33 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.3 2002/09/23 21:05:40 peiyongz * remove debugging code * @@ -119,9 +122,9 @@ MsgCatalogLoader::MsgCatalogLoader(const XMLCh* const msgDomain) ,fMsgDomain(0) ,fMsgSet(0) { - if (XMLString::compareString(msgDomain, XMLUni::fgXMLErrDomain) - && XMLString::compareString(msgDomain, XMLUni::fgExceptDomain) - && XMLString::compareString(msgDomain, XMLUni::fgValidityDomain)) + if (!XMLString::equals(msgDomain, XMLUni::fgXMLErrDomain) + && !XMLString::equals(msgDomain, XMLUni::fgExceptDomain) + && !XMLString::equals(msgDomain, XMLUni::fgValidityDomain)) { XMLPlatformUtils::panic(XMLPlatformUtils::Panic_UnknownMsgDomain); } @@ -144,11 +147,11 @@ MsgCatalogLoader::MsgCatalogLoader(const XMLCh* const msgDomain) fMsgDomain = XMLString::replicate(msgDomain); - if (!XMLString::compareString(fMsgDomain, XMLUni::fgXMLErrDomain)) + if (XMLString::equals(fMsgDomain, XMLUni::fgXMLErrDomain)) fMsgSet = CatId_XMLErrs; - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgExceptDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgExceptDomain)) fMsgSet = CatId_XMLExcepts; - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgValidityDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgValidityDomain)) fMsgSet = CatId_XMLValid; } @@ -172,8 +175,8 @@ bool MsgCatalogLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad // catgets returns a pointer to msgString if it fails to locate the message // from the message catalog - if (XMLString::compareString(catMessage, msgString) == 0) - return false; + if (XMLString::equals(catMessage, msgString)) + return false; else { XMLString::transcode(catMessage, toFill, maxChars); diff --git a/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.cpp b/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.cpp index 424fd2ead735c43e816fb8b8e347ae73f5e4b9a1..289434c85f0a401b9bd4311f5489a34840a131bd 100644 --- a/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.cpp +++ b/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.cpp @@ -203,16 +203,16 @@ bool MsgCatalogLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad char * msgId; char * repTexts = NULL; int size = 0; - if (!XMLString::compareString(fMsgDomain, XMLUni::fgXMLErrDomain)) + if (XMLString::equals(fMsgDomain, XMLUni::fgXMLErrDomain)) { if(msgToLoad < 7) // Warning messages msgId = Warnings[msgToLoad - 2]; else // Fatal Errors msgId = Errors[msgToLoad - 9]; } - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgExceptDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgExceptDomain)) msgId = Exceptions[msgToLoad - 2]; - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgValidityDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgValidityDomain)) msgId = Invalid[msgToLoad - 2]; if (!localMsg(msgId, toFill, maxChars, repTexts, size)) @@ -233,16 +233,16 @@ bool MsgCatalogLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad char * msgId; int size=0; char* repTexts = PackingRepText(repText1, repText2, repText3, repText4, size); - if (!XMLString::compareString(fMsgDomain, XMLUni::fgXMLErrDomain)) + if (XMLString::equals(fMsgDomain, XMLUni::fgXMLErrDomain)) { if(msgToLoad < 7) msgId = Warnings[msgToLoad - 2]; else msgId = Errors[msgToLoad - 9]; } - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgExceptDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgExceptDomain)) msgId = Exceptions[msgToLoad - 2]; - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgValidityDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgValidityDomain)) msgId = Invalid[msgToLoad - 2]; // Call the other version to load up the message diff --git a/src/xercesc/util/MsgLoaders/Win32/Win32MsgLoader.cpp b/src/xercesc/util/MsgLoaders/Win32/Win32MsgLoader.cpp index b623c37ec556ace0c36b8974fc317bf5f38cd49c..72300a7499b174045b4aff77bebd57c9aa4918a8 100644 --- a/src/xercesc/util/MsgLoaders/Win32/Win32MsgLoader.cpp +++ b/src/xercesc/util/MsgLoaders/Win32/Win32MsgLoader.cpp @@ -126,11 +126,11 @@ Win32MsgLoader::Win32MsgLoader(const XMLCh* const msgDomain) : fMsgDomain = XMLString::replicate(msgDomain); // And precalc the id offset we use for this domain - if (!XMLString::compareString(fMsgDomain, XMLUni::fgXMLErrDomain)) + if (XMLString::equals(fMsgDomain, XMLUni::fgXMLErrDomain)) fDomainOfs = 0; - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgExceptDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgExceptDomain)) fDomainOfs = 0x2000; - else if (!XMLString::compareString(fMsgDomain, XMLUni::fgValidityDomain)) + else if (XMLString::equals(fMsgDomain, XMLUni::fgValidityDomain)) fDomainOfs = 0x4000; else XMLPlatformUtils::panic(XMLPlatformUtils::Panic_UnknownMsgDomain); diff --git a/src/xercesc/util/regx/BlockRangeFactory.cpp b/src/xercesc/util/regx/BlockRangeFactory.cpp index b40c1dff1aea3c6e95905876cc69e271eada688e..b3cb2f7302fd843ab4d0ee0358f375b0bc2ca6e4 100644 --- a/src/xercesc/util/regx/BlockRangeFactory.cpp +++ b/src/xercesc/util/regx/BlockRangeFactory.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.3 2002/09/24 19:59:36 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.2 2002/02/05 13:20:06 tng * [Bug 5716] Can't parse with Validation more than one file. * @@ -411,11 +414,11 @@ void BlockRangeFactory::buildRanges() { RangeToken* tok = tokFactory->createRange(); tok->addRange(blockRanges[i*2], blockRanges[(i*2)+1]); - if (!foundSpecial && !XMLString::compareString((XMLCh*)fgBlockNames[i] , (XMLCh*) fgBlockIsSpecials)) { + if (!foundSpecial && XMLString::equals((XMLCh*)fgBlockNames[i] , (XMLCh*) fgBlockIsSpecials)) { tok->addRange(0xFFF0, 0xFFFD); foundSpecial = true; } - if (!foundPrivate && !XMLString::compareString((XMLCh*)fgBlockNames[i] , (XMLCh*) fgBlockIsPrivateUse)) { + if (!foundPrivate && XMLString::equals((XMLCh*)fgBlockNames[i] , (XMLCh*) fgBlockIsPrivateUse)) { tok->addRange(0xF0000, 0xFFFFD); tok->addRange(0x100000, 0x10FFFD); foundPrivate = true; diff --git a/src/xercesc/validators/DTD/DTDScanner.cpp b/src/xercesc/validators/DTD/DTDScanner.cpp index ac8b656649da051d32a9180b8c637d6a6451fb94..4608efcf6eab93dc1d381ab5c9ef189ed93b16a3 100644 --- a/src/xercesc/validators/DTD/DTDScanner.cpp +++ b/src/xercesc/validators/DTD/DTDScanner.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.13 2002/09/24 20:10:30 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.12 2002/08/22 21:05:29 tng * [Bug 7475] Xerces-C++ reports validation error with Docbook. * @@ -657,7 +660,7 @@ DTDScanner::scanAttDef(DTDElementDecl& parentElem, XMLBuffer& bufToUse) // if attdef is xml:space, check correct enumeration (default|preserve) const XMLCh fgXMLSpace[] = { chLatin_x, chLatin_m, chLatin_l, chColon, chLatin_s, chLatin_p, chLatin_a, chLatin_c, chLatin_e, chNull }; - if (!XMLString::compareString(decl->getFullName(),fgXMLSpace)) { + if (XMLString::equals(decl->getFullName(),fgXMLSpace)) { const XMLCh fgPreserve[] = { chLatin_p, chLatin_r, chLatin_e, chLatin_s, chLatin_e, chLatin_r, chLatin_v, chLatin_e, chNull }; const XMLCh fgDefault[] = { chLatin_d, chLatin_e, chLatin_f, chLatin_a, chLatin_u, chLatin_l, chLatin_t, chNull }; bool ok = false; @@ -665,14 +668,14 @@ DTDScanner::scanAttDef(DTDElementDecl& parentElem, XMLBuffer& bufToUse) RefVectorOf<XMLCh>* enumVector = XMLString::tokenizeString(decl->getEnumeration()); int size = enumVector->size(); ok = (size == 1 && - (!XMLString::compareString(enumVector->elementAt(0), fgDefault) || - !XMLString::compareString(enumVector->elementAt(0), fgPreserve))) || + (XMLString::equals(enumVector->elementAt(0), fgDefault) || + XMLString::equals(enumVector->elementAt(0), fgPreserve))) || (size == 2 && - (!XMLString::compareString(enumVector->elementAt(0), fgDefault) && - !XMLString::compareString(enumVector->elementAt(1), fgPreserve))) || + (XMLString::equals(enumVector->elementAt(0), fgDefault) && + XMLString::equals(enumVector->elementAt(1), fgPreserve))) || (size == 2 && - (!XMLString::compareString(enumVector->elementAt(1), fgDefault) && - !XMLString::compareString(enumVector->elementAt(0), fgPreserve))); + (XMLString::equals(enumVector->elementAt(1), fgDefault) && + XMLString::equals(enumVector->elementAt(0), fgPreserve))); delete enumVector; } if (!ok) @@ -3661,7 +3664,7 @@ void DTDScanner::scanTextDecl() } // If its not our supported version, issue an error but continue - if (XMLString::compareString(bbVersion.getRawBuffer(), XMLUni::fgSupportedVersion)) + if (!XMLString::equals(bbVersion.getRawBuffer(), XMLUni::fgSupportedVersion)) fScanner->emitError(XMLErrs::UnsupportedXMLVersion, bbVersion.getRawBuffer()); } diff --git a/src/xercesc/validators/DTD/DTDValidator.cpp b/src/xercesc/validators/DTD/DTDValidator.cpp index 5a9902484708c8e9693fdceec6e5e6f0ec0e7b23..51b96934b98c5005839705f9c420dc059ef192b2 100644 --- a/src/xercesc/validators/DTD/DTDValidator.cpp +++ b/src/xercesc/validators/DTD/DTDValidator.cpp @@ -222,7 +222,7 @@ DTDValidator::validateAttrValue(const XMLAttDef* attDef // if (defType == XMLAttDef::Fixed && !preValidation) { - if (XMLString::compareString(attrValue, valueText)) + if (!XMLString::equals(attrValue, valueText)) emitError(XMLValid::NotSameAsFixedValue, fullName, attrValue, valueText); } diff --git a/src/xercesc/validators/schema/ComplexTypeInfo.hpp b/src/xercesc/validators/schema/ComplexTypeInfo.hpp index b30133a49a498d388c2a9bc7d1c40f500260ba2f..03fc9c16689b7a5824d150fd5ac83f278128b550 100644 --- a/src/xercesc/validators/schema/ComplexTypeInfo.hpp +++ b/src/xercesc/validators/schema/ComplexTypeInfo.hpp @@ -510,8 +510,7 @@ inline bool ComplexTypeInfo::contains(const XMLCh* const attName) { while (enumDefs.hasMoreElements()) { - if (XMLString::compareString(attName, - enumDefs.nextElement().getAttName()->getLocalPart()) == 0) { + if (XMLString::equals(attName, enumDefs.nextElement().getAttName()->getLocalPart())) { return true; } } diff --git a/src/xercesc/validators/schema/SchemaInfo.cpp b/src/xercesc/validators/schema/SchemaInfo.cpp index 2ab9ce3cae88f8a355addca0756382d3e7ec8b35..9c4a8ba46770e1ca0edffa7862db74371bc2db37 100644 --- a/src/xercesc/validators/schema/SchemaInfo.cpp +++ b/src/xercesc/validators/schema/SchemaInfo.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.8 2002/09/24 20:12:48 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.7 2002/06/21 11:52:24 knoaman * cleanup * @@ -237,7 +240,7 @@ SchemaInfo::getTopLevelComponent(const unsigned short compCategory, for (unsigned int i= 0; i < listLen; i++) { child = compList->elementAt(i); - if (!XMLString::compareString(child->getAttribute(SchemaSymbols::fgATT_NAME), name)) + if (XMLString::equals(child->getAttribute(SchemaSymbols::fgATT_NAME), name)) return child; } } @@ -245,19 +248,19 @@ SchemaInfo::getTopLevelComponent(const unsigned short compCategory, DOMElement* redefParent = (DOMElement*) child->getParentNode(); // Parent is not "redefine" - if (XMLString::compareString(redefParent->getLocalName(),SchemaSymbols::fgELT_REDEFINE)) + if (!XMLString::equals(redefParent->getLocalName(),SchemaSymbols::fgELT_REDEFINE)) redefParent = 0; while (child != 0) { - if (!XMLString::compareString(child->getLocalName(), compName)) { + if (XMLString::equals(child->getLocalName(), compName)) { compList->addElement(child); - if (!XMLString::compareString(child->getAttribute(SchemaSymbols::fgATT_NAME), name)) + if (XMLString::equals(child->getAttribute(SchemaSymbols::fgATT_NAME), name)) return child; } - else if (!XMLString::compareString(child->getLocalName(),SchemaSymbols::fgELT_REDEFINE) + else if (XMLString::equals(child->getLocalName(),SchemaSymbols::fgELT_REDEFINE) && (!fFailedRedefineList || !fFailedRedefineList->containsElement(child))) { // if redefine DOMElement* redefineChild = XUtil::getFirstChildElement(child); @@ -265,11 +268,11 @@ SchemaInfo::getTopLevelComponent(const unsigned short compCategory, while (redefineChild != 0) { if ((!fFailedRedefineList || !fFailedRedefineList->containsElement(redefineChild)) - && !XMLString::compareString(redefineChild->getLocalName(), compName)) { + && XMLString::equals(redefineChild->getLocalName(), compName)) { compList->addElement(redefineChild); - if (!XMLString::compareString(redefineChild->getAttribute(SchemaSymbols::fgATT_NAME), name)) + if (XMLString::equals(redefineChild->getAttribute(SchemaSymbols::fgATT_NAME), name)) return redefineChild; } diff --git a/src/xercesc/validators/schema/SchemaValidator.cpp b/src/xercesc/validators/schema/SchemaValidator.cpp index 28c858045258bd96e9cd75abc21da89b11d98823..4900e7761545b2bf119b57cdd407fa1442561f64 100644 --- a/src/xercesc/validators/schema/SchemaValidator.cpp +++ b/src/xercesc/validators/schema/SchemaValidator.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.16 2002/09/24 20:12:48 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.15 2002/09/16 20:37:08 tng * Infinite loop for malformed xml (e.g. simple has "XXXX") w/ setexitonfirstfatal(false). * @@ -272,7 +275,7 @@ int SchemaValidator::checkContent (XMLElementDecl* const elemDecl // character or element information item [children]. // if (fNil) { - if (childCount > 0 || XMLString::compareString(fDatatypeBuffer.getRawBuffer(), XMLUni::fgZeroLenString)) + if (childCount > 0 || !XMLString::equals(fDatatypeBuffer.getRawBuffer(), XMLUni::fgZeroLenString)) emitError(XMLValid::NilAttrNotEmpty, elemDecl->getFullName()); } @@ -318,7 +321,7 @@ int SchemaValidator::checkContent (XMLElementDecl* const elemDecl if (fNil) emitError(XMLValid::NilAttrNotEmpty, elemDecl->getFullName()); - if (!XMLString::compareString(value, XMLUni::fgZeroLenString)) { + if (XMLString::equals(value, XMLUni::fgZeroLenString)) { // if this element didn't specified any value // use default value if (getScanner()->getDocHandler()) @@ -341,7 +344,7 @@ int SchemaValidator::checkContent (XMLElementDecl* const elemDecl } else { // no default value, then check nillable - if (!XMLString::compareString(value, XMLUni::fgZeroLenString)) { + if (XMLString::equals(value, XMLUni::fgZeroLenString)) { if ((((SchemaElementDecl*)elemDecl)->getMiscFlags() & SchemaSymbols::NILLABLE) == 0) fCurrentDV->validate(value); } @@ -436,7 +439,7 @@ void SchemaValidator::validateAttrValue (const XMLAttDef* attDef if ((defType == XMLAttDef::Fixed || defType == XMLAttDef::Required_And_Fixed) && !preValidation) { const XMLCh* const valueText = attDef->getValue(); - if (XMLString::compareString(attrValue, valueText)) + if (!XMLString::equals(attrValue, valueText)) emitError(XMLValid::NotSameAsFixedValue, fullName, attrValue, valueText); } @@ -563,7 +566,7 @@ void SchemaValidator::validateElement(const XMLElementDecl* elemDef) if (!sGrammar) { // Check built-in simple types - if (!XMLString::compareString(uriStr, SchemaSymbols::fgURI_SCHEMAFORSCHEMA)) { + if (XMLString::equals(uriStr, SchemaSymbols::fgURI_SCHEMAFORSCHEMA)) { fXsiTypeValidator = fGrammarResolver->getDatatypeValidator(uriStr, localPart); @@ -622,7 +625,7 @@ void SchemaValidator::validateElement(const XMLElementDecl* elemDef) if (destType) { while (tempType) { - if (!XMLString::compareString(tempType->getTypeName(), destType->getTypeName())) + if (XMLString::equals(tempType->getTypeName(), destType->getTypeName())) break; tempType = tempType->getBaseComplexTypeInfo(); } @@ -1407,7 +1410,7 @@ SchemaValidator::checkNameAndTypeOK(SchemaGrammar* const currentGrammar, const XMLCh* derivedName = derivedSpecNode->getElement()->getLocalPart(); const XMLCh* baseName = baseSpecNode->getElement()->getLocalPart(); - if (XMLString::compareString(derivedName, baseName) || derivedURI != baseURI) { + if (!XMLString::equals(derivedName, baseName) || derivedURI != baseURI) { ThrowXML(RuntimeException, XMLExcepts::PD_NameTypeOK1); } @@ -1458,7 +1461,7 @@ SchemaValidator::checkNameAndTypeOK(SchemaGrammar* const currentGrammar, if (baseDefVal && (baseFlags & SchemaSymbols::FIXED) != 0 && ((derivedFlags & SchemaSymbols::FIXED) == 0 || - XMLString::compareString(derivedDefVal, baseDefVal))) { + !XMLString::equals(derivedDefVal, baseDefVal))) { ThrowXML1(RuntimeException, XMLExcepts::PD_NameTypeOK3, derivedName); } diff --git a/src/xercesc/validators/schema/SubstitutionGroupComparator.cpp b/src/xercesc/validators/schema/SubstitutionGroupComparator.cpp index 4ab22f5004e0405c215109d9a379884b70997a5f..3666c70eabb66e4cbb8609dac571a4c1ce5f49aa 100644 --- a/src/xercesc/validators/schema/SubstitutionGroupComparator.cpp +++ b/src/xercesc/validators/schema/SubstitutionGroupComparator.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.4 2002/09/24 20:12:48 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.3 2002/07/12 15:17:48 knoaman * For a given global element, store info about a substitution group element * as a SchemaElementDecl and not as a string. @@ -119,7 +122,7 @@ bool SubstitutionGroupComparator::isEquivalentTo(QName* const anElement return false; - if ((XMLString::compareString(anElement->getLocalPart(), exemplar->getLocalPart()) == 0) && + if (XMLString::equals(anElement->getLocalPart(), exemplar->getLocalPart()) && (anElement->getURI() == exemplar->getURI())) return true; // they're the same! @@ -161,7 +164,7 @@ bool SubstitutionGroupComparator::isEquivalentTo(QName* const anElement while (pElemDecl) //(substitutionGroupFullName) { - if ((XMLString::compareString(pElemDecl->getBaseName(), exemplar->getLocalPart()) == 0) && + if (XMLString::equals(pElemDecl->getBaseName(), exemplar->getLocalPart()) && (pElemDecl->getURI() == exemplar->getURI())) { // time to check for block value on element diff --git a/src/xercesc/validators/schema/XSDErrorReporter.cpp b/src/xercesc/validators/schema/XSDErrorReporter.cpp index 4fe2da4be3f4a3b972ebe22562d0a22708698669..4de23786f3d3622925e96564ff16a730dc90a828 100644 --- a/src/xercesc/validators/schema/XSDErrorReporter.cpp +++ b/src/xercesc/validators/schema/XSDErrorReporter.cpp @@ -56,6 +56,9 @@ /** * $Log$ + * Revision 1.3 2002/09/24 20:12:48 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.2 2002/05/22 20:54:14 knoaman * Prepare for DOM L3 : * - Make use of the XMLEntityHandler/XMLErrorReporter interfaces, instead of using @@ -197,7 +200,7 @@ void XSDErrorReporter::emitError(const unsigned int toEmit, XMLMsgLoader* msgLoader = gErrMsgLoader; XMLErrorReporter::ErrTypes errType = XMLErrs::errorType((XMLErrs::Codes) toEmit); - if (!XMLString::compareString(msgDomain, XMLUni::fgValidityDomain)) { + if (XMLString::equals(msgDomain, XMLUni::fgValidityDomain)) { errType = XMLValid::errorType((XMLValid::Codes) toEmit); msgLoader = gValidMsgLoader; @@ -244,7 +247,7 @@ void XSDErrorReporter::emitError(const unsigned int toEmit, XMLMsgLoader* msgLoader = gErrMsgLoader; XMLErrorReporter::ErrTypes errType = XMLErrs::errorType((XMLErrs::Codes) toEmit); - if (!XMLString::compareString(msgDomain, XMLUni::fgValidityDomain)) { + if (XMLString::equals(msgDomain, XMLUni::fgValidityDomain)) { errType = XMLValid::errorType((XMLValid::Codes) toEmit); msgLoader = gValidMsgLoader; diff --git a/src/xercesc/validators/schema/XUtil.cpp b/src/xercesc/validators/schema/XUtil.cpp index 3596109a07794be70071d478c58577395e2d2c53..f7b1b183abc115d3f7a2f9723bc77fd55a886573 100644 --- a/src/xercesc/validators/schema/XUtil.cpp +++ b/src/xercesc/validators/schema/XUtil.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.4 2002/09/24 20:12:48 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.3 2002/05/21 19:31:45 tng * DOM Reorganization: modify to use the new DOM interface and remove obsolete code in XUtil. * @@ -130,8 +133,8 @@ DOMElement* XUtil::getFirstChildElementNS(const DOMNode* const parent { for (unsigned int i = 0; i < length; i++) { - if (!XMLString::compareString(child->getNamespaceURI(), uriStr) && - !XMLString::compareString(child->getLocalName(), elemNames[i])) + if (XMLString::equals(child->getNamespaceURI(), uriStr) && + XMLString::equals(child->getLocalName(), elemNames[i])) return (DOMElement*)child; } } @@ -174,8 +177,8 @@ DOMElement* XUtil::getNextSiblingElementNS(const DOMNode* const node { for (unsigned int i = 0; i < length; i++) { - if (!XMLString::compareString(sibling->getNamespaceURI(), uriStr) && - !XMLString::compareString(sibling->getLocalName(), elemNames[i])) + if (XMLString::equals(sibling->getNamespaceURI(), uriStr) && + XMLString::equals(sibling->getLocalName(), elemNames[i])) return (DOMElement*)sibling; } } diff --git a/src/xercesc/validators/schema/XercesAttGroupInfo.cpp b/src/xercesc/validators/schema/XercesAttGroupInfo.cpp index 0e6a56195a09978e0a024ee183b41e774d2851d2..a5a122cbe9a9622f5dce26ef12b9837a363c3c1e 100644 --- a/src/xercesc/validators/schema/XercesAttGroupInfo.cpp +++ b/src/xercesc/validators/schema/XercesAttGroupInfo.cpp @@ -56,8 +56,11 @@ /* * $Log$ - * Revision 1.1 2002/02/01 22:22:50 peiyongz - * Initial revision + * Revision 1.2 2002/09/24 20:12:48 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * + * Revision 1.1.1.1 2002/02/01 22:22:50 peiyongz + * sane_include * * Revision 1.4 2001/11/20 20:21:49 knoaman * Add check for attribute derviation ok when redefining attribute group by restriction. @@ -113,7 +116,7 @@ bool XercesAttGroupInfo::containsAttribute(const XMLCh* const name, QName* attName = fAttributes->elementAt(i)->getAttName(); if (attName->getURI() == uri && - !XMLString::compareString(attName->getLocalPart(),name)) { + XMLString::equals(attName->getLocalPart(),name)) { return true; } } @@ -141,7 +144,7 @@ const SchemaAttDef* XercesAttGroupInfo::getAttDef(const XMLCh* const baseName, QName* attName = attDef->getAttName(); if (uriId == (int) attName->getURI() && - !XMLString::compareString(baseName, attName->getLocalPart())) { + XMLString::equals(baseName, attName->getLocalPart())) { return attDef; } diff --git a/src/xercesc/validators/schema/identity/IdentityConstraint.cpp b/src/xercesc/validators/schema/identity/IdentityConstraint.cpp index 1e370430d935b8d5d72dbed6234af1f1d72d7e39..c053970994b7a5e7371ef9cd6fe964a2e0460c8d 100644 --- a/src/xercesc/validators/schema/identity/IdentityConstraint.cpp +++ b/src/xercesc/validators/schema/identity/IdentityConstraint.cpp @@ -56,8 +56,11 @@ /* * $Log$ - * Revision 1.1 2002/02/01 22:22:50 peiyongz - * Initial revision + * Revision 1.2 2002/09/24 19:57:20 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * + * Revision 1.1.1.1 2002/02/01 22:22:50 peiyongz + * sane_include * * Revision 1.2 2001/11/15 17:10:19 knoaman * Particle derivation checking support. @@ -109,7 +112,7 @@ bool IdentityConstraint::operator ==(const IdentityConstraint& other) const { if (getType() != other.getType()) return false; - if (XMLString::compareString(fIdentityConstraintName, other.fIdentityConstraintName)) + if (!XMLString::equals(fIdentityConstraintName, other.fIdentityConstraintName)) return false; if (*fSelector != *(other.fSelector)) diff --git a/src/xercesc/validators/schema/identity/ValueStore.cpp b/src/xercesc/validators/schema/identity/ValueStore.cpp index c4e4b0014742225ea842ae20aba5ece6652cccf9..2cd850274bc5b5d1d247533d878595e79a698f9c 100644 --- a/src/xercesc/validators/schema/identity/ValueStore.cpp +++ b/src/xercesc/validators/schema/identity/ValueStore.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.3 2002/09/24 19:57:20 tng + * Performance: use XMLString::equals instead of XMLString::compareString + * * Revision 1.2 2002/02/18 06:26:50 jberry * Quiet codewarrior compiler warnings * @@ -251,7 +254,7 @@ bool ValueStore::contains(const FieldValueMap* const other) { } } } - + return false; } @@ -260,7 +263,7 @@ bool ValueStore::isDuplicateOf(DatatypeValidator* const dv1, const XMLCh* const // if either validator's null, fall back on string comparison if(!dv1 || !dv2) { - return ((XMLString::compareString(val1, val2)) == 0); + return (XMLString::equals(val1, val2)); } unsigned int val1Len = XMLString::stringLen(val1); @@ -283,7 +286,7 @@ bool ValueStore::isDuplicateOf(DatatypeValidator* const dv1, const XMLCh* const // As always we are obliged to compare by reference... if (dv1 == dv2) { return ((dv1->compare(val1, val2)) == 0); - } + } // see if this.fValidator is derived from value.fValidator: DatatypeValidator* tempVal = dv1; @@ -301,7 +304,7 @@ bool ValueStore::isDuplicateOf(DatatypeValidator* const dv1, const XMLCh* const } // if we're here it means the types weren't related. Must fall back to strings: - return ((XMLString::compareString(val1, val2)) == 0); + return (XMLString::equals(val1, val2)); } @@ -347,7 +350,7 @@ void ValueStore::endDcocumentFragment(ValueStoreCache* const valueStoreCache) { void ValueStore::reportNilError(IdentityConstraint* const ic) { if (fDoReportError && ic->getType() == IdentityConstraint::KEY) { - fScanner->getValidator()->emitError(XMLValid::IC_KeyMatchesNillable, + fScanner->getValidator()->emitError(XMLValid::IC_KeyMatchesNillable, ic->getElementName()); } }