tng 2003/01/30 13:56:23 Modified: c/src/xercesc/validators/datatype AbstractNumericFacetValidator.cpp AbstractNumericValidator.cpp DateTimeValidator.cpp DecimalDatatypeValidator.cpp Log: Performance: call getRawData instead of toString Revision Changes Path 1.9 +13 -16 xml-xerces/c/src/xercesc/validators/datatype/AbstractNumericFacetValidator.cpp Index: AbstractNumericFacetValidator.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/datatype/AbstractNumericFacetValidator.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- AbstractNumericFacetValidator.cpp 25 Jan 2003 16:33:25 -0000 1.8 +++ AbstractNumericFacetValidator.cpp 30 Jan 2003 21:56:22 -0000 1.9 @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.9 2003/01/30 21:56:22 tng + * Performance: call getRawData instead of toString + * * Revision 1.8 2003/01/25 16:33:25 peiyongz * wrong error code. * @@ -115,30 +118,24 @@ const int AbstractNumericFacetValidator::INDETERMINATE = 2; #define REPORT_FACET_ERROR(val1, val2, except_code) \ - XMLCh* value1 = (val1)->toString(); \ - ArrayJanitor<XMLCh> jan1(value1); \ - XMLCh* value2 = (val2)->toString(); \ - ArrayJanitor<XMLCh> jan2(value2); \ ThrowXML2(InvalidDatatypeFacetException \ , except_code \ - , value2 \ - , value1); + , val1->getRawData() \ + , val2->getRawData()); #define FROM_BASE_VALUE_SPACE(val, facetFlag, except_code) \ if ((thisFacetsDefined & facetFlag) != 0) \ { \ - XMLCh* value1 = (val)->toString(); \ - ArrayJanitor<XMLCh> jan(value1); \ try \ { \ - numBase->checkContent(value1, false); \ + numBase->checkContent(val->getRawData(), false); \ } \ catch ( XMLException& ) \ { \ ThrowXML1(InvalidDatatypeFacetException \ , except_code \ - , value1); \ + , val->getRawData()); \ } \ } @@ -538,13 +535,13 @@ } /** - * Schema Errata + * Schema Errata * E2-16 maxExclusive - * + * * derived type's maxExclusive must either be * 1) equal to base' maxExclusive or * 2) from the base type value space - * + * */ if (result != 0) { @@ -622,9 +619,9 @@ } /** - * Schema Errata + * Schema Errata * E2-16 maxExclusive - * + * * derived type's minExclusive must either be * 1) equal to base' minxExclusive or * 2) from the base type value space 1.3 +6 -7 xml-xerces/c/src/xercesc/validators/datatype/AbstractNumericValidator.cpp Index: AbstractNumericValidator.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/datatype/AbstractNumericValidator.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- AbstractNumericValidator.cpp 4 Nov 2002 14:53:27 -0000 1.2 +++ AbstractNumericValidator.cpp 30 Jan 2003 21:56:22 -0000 1.3 @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2003/01/30 21:56:22 tng + * Performance: call getRawData instead of toString + * * Revision 1.2 2002/11/04 14:53:27 tng * C++ Namespace Support. * @@ -80,14 +83,10 @@ XERCES_CPP_NAMESPACE_BEGIN #define REPORT_VALUE_ERROR(val1, val2, except_code) \ - XMLCh* value1 = (val1)->toString(); \ - ArrayJanitor<XMLCh> jan1(value1); \ - XMLCh* value2 = (val2)->toString(); \ - ArrayJanitor<XMLCh> jan2(value2); \ ThrowXML2(InvalidDatatypeValueException \ , except_code \ - , value1 \ - , value2); + , val1->getRawData() \ + , val2->getRawData()); // --------------------------------------------------------------------------- // Constructors and Destructor 1.4 +7 -7 xml-xerces/c/src/xercesc/validators/datatype/DateTimeValidator.cpp Index: DateTimeValidator.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/datatype/DateTimeValidator.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- DateTimeValidator.cpp 27 Nov 2002 21:26:55 -0000 1.3 +++ DateTimeValidator.cpp 30 Jan 2003 21:56:22 -0000 1.4 @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.4 2003/01/30 21:56:22 tng + * Performance: call getRawData instead of toString + * * Revision 1.3 2002/11/27 21:26:55 peiyongz * Schema Errat E2-24 Duration 'T': allow SchemaDateTimeException be * propogated to client. @@ -93,14 +96,10 @@ // Macro // --------------------------------------------------------------------------- #define REPORT_VALUE_ERROR(val1, val2, except_code) \ - XMLCh* value1 = (val1)->toString(); \ - ArrayJanitor<XMLCh> jan1(value1); \ - XMLCh* value2 = (val2)->toString(); \ - ArrayJanitor<XMLCh> jan2(value2); \ ThrowXML2(InvalidDatatypeValueException \ , except_code \ - , value1 \ - , value2); + , val1->getRawData() \ + , val2->getRawData()); // --------------------------------------------------------------------------- // Constructors and Destructor 1.6 +7 -8 xml-xerces/c/src/xercesc/validators/datatype/DecimalDatatypeValidator.cpp Index: DecimalDatatypeValidator.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/datatype/DecimalDatatypeValidator.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- DecimalDatatypeValidator.cpp 18 Dec 2002 14:17:55 -0000 1.5 +++ DecimalDatatypeValidator.cpp 30 Jan 2003 21:56:22 -0000 1.6 @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.6 2003/01/30 21:56:22 tng + * Performance: call getRawData instead of toString + * * Revision 1.5 2002/12/18 14:17:55 gareth * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. * @@ -521,14 +524,12 @@ if ( (thisFacetsDefined & DatatypeValidator::FACET_FRACTIONDIGITS) != 0 ) { if ( theData->getScale() > fFractionDigits ) - { - XMLCh* value = theData->toString(); - ArrayJanitor<XMLCh> jan(value); + { XMLString::binToText(theData->getScale(), value1, BUF_LEN, 10); XMLString::binToText(fFractionDigits, value2, BUF_LEN, 10); ThrowXML3(InvalidDatatypeFacetException , XMLExcepts::VALUE_exceed_fractDigit - , value + , theData->getRawData() , value1 , value2); } @@ -537,14 +538,12 @@ if ( (thisFacetsDefined & DatatypeValidator::FACET_TOTALDIGITS) != 0 ) { if ( theData->getTotalDigit() > fTotalDigits ) - { - XMLCh* value = theData->toString(); - ArrayJanitor<XMLCh> jan(value); + { XMLString::binToText(theData->getTotalDigit(), value1, BUF_LEN, 10); XMLString::binToText(fTotalDigits, value2, BUF_LEN, 10); ThrowXML3(InvalidDatatypeFacetException , XMLExcepts::VALUE_exceed_totalDigit - , value + , theData->getRawData() , value1 , value2); }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]