peiyongz 2003/09/25 15:24:28 Modified: c/src/xercesc/util QName.cpp XMLAbstractDoubleFloat.cpp XMLBigDecimal.cpp XMLDateTime.cpp Log: Using writeString/readString Revision Changes Path 1.10 +10 -25 xml-xerces/c/src/xercesc/util/QName.cpp Index: QName.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/QName.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- QName.cpp 25 Sep 2003 15:22:34 -0000 1.9 +++ QName.cpp 25 Sep 2003 22:24:28 -0000 1.10 @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.10 2003/09/25 22:24:28 peiyongz + * Using writeString/readString + * * Revision 1.9 2003/09/25 15:22:34 peiyongz * Implementation of Serialization * @@ -501,18 +504,9 @@ if (serEng.isStoring()) { - int bufferLen = 0; + serEng.writeString(fPrefix, fPrefixBufSz, XSerializeEngine::toWriteBufferLen); - //note: buffer size is different from actual string length - serEng<<fPrefixBufSz; - bufferLen = XMLString::stringLen(fPrefix); - serEng<<bufferLen; - serEng.write(fPrefix, bufferLen); - - serEng<<fLocalPartBufSz; - bufferLen = XMLString::stringLen(fLocalPart); - serEng<<bufferLen; - serEng.write(fLocalPart, bufferLen); + serEng.writeString(fLocalPart, fLocalPartBufSz, XSerializeEngine::toWriteBufferLen); //do not serialize rawName @@ -520,26 +514,17 @@ } else { - int bufferLen = 0; + int dataLen = 0; + + serEng.readString(fPrefix, (int&)fPrefixBufSz, dataLen, XSerializeEngine::toReadBufferLen); - serEng>>fPrefixBufSz; - fPrefix = (XMLCh*) fMemoryManager->allocate((fPrefixBufSz+1) * sizeof(XMLCh)); - serEng>>bufferLen; - serEng.read(fPrefix, bufferLen); - fPrefix[bufferLen] = 0; - - serEng>>fLocalPartBufSz; - fLocalPart = (XMLCh*) fMemoryManager->allocate((fLocalPartBufSz+1) * sizeof(XMLCh)); - serEng>>bufferLen; - serEng.read(fLocalPart, bufferLen); - fLocalPart[bufferLen] = 0; + serEng.readString(fLocalPart, (int&)fLocalPartBufSz, dataLen, XSerializeEngine::toReadBufferLen); //force raw name rebuilt - fRawNameBufSz = 0; + fRawNameBufSz = 0; fRawName = 0; serEng>>fURIId; - } } 1.16 +6 -9 xml-xerces/c/src/xercesc/util/XMLAbstractDoubleFloat.cpp Index: XMLAbstractDoubleFloat.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/XMLAbstractDoubleFloat.cpp,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- XMLAbstractDoubleFloat.cpp 25 Sep 2003 15:23:25 -0000 1.15 +++ XMLAbstractDoubleFloat.cpp 25 Sep 2003 22:24:28 -0000 1.16 @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.16 2003/09/25 22:24:28 peiyongz + * Using writeString/readString + * * Revision 1.15 2003/09/25 15:23:25 peiyongz * add sizeof(XMLCh) when allocating memory * @@ -448,9 +451,7 @@ serEng << fDataConverted; serEng << fSign; - int rawDataLen = XMLString::stringLen(fRawData); - serEng << rawDataLen; - serEng.write(fRawData, rawDataLen); + serEng.writeString(fRawData); // Do not serialize fFormattedString @@ -466,11 +467,7 @@ serEng >> fDataConverted; serEng >> fSign; - int rawDataLen = 0; - serEng >> rawDataLen; - fRawData = (XMLCh*) fMemoryManager->allocate((rawDataLen+1) * sizeof(XMLCh)); - serEng.read(fRawData, rawDataLen); - fRawData[rawDataLen] = 0; + serEng.readString(fRawData); // Set it to 0 force it to re-format if needed fFormattedString = 0; 1.13 +9 -16 xml-xerces/c/src/xercesc/util/XMLBigDecimal.cpp Index: XMLBigDecimal.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/XMLBigDecimal.cpp,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- XMLBigDecimal.cpp 25 Sep 2003 15:23:25 -0000 1.12 +++ XMLBigDecimal.cpp 25 Sep 2003 22:24:28 -0000 1.13 @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.13 2003/09/25 22:24:28 peiyongz + * Using writeString/readString + * * Revision 1.12 2003/09/25 15:23:25 peiyongz * add sizeof(XMLCh) when allocating memory * @@ -389,14 +392,10 @@ serEng<<fSign; serEng<<fTotalDigits; serEng<<fScale; - serEng<<fRawDataLen; - - serEng.write(fRawData, fRawDataLen); + serEng<<fRawDataLen; // we purposely write this seperatly - int intValLen = XMLString::stringLen(fIntVal); - serEng<<intValLen; - - serEng.write(fIntVal, intValLen); + serEng.writeString(fRawData); + serEng.writeString(fIntVal); } else @@ -406,15 +405,9 @@ serEng>>fScale; serEng>>fRawDataLen; - fRawData = (XMLCh*) fMemoryManager->allocate((fRawDataLen+1) * sizeof(XMLCh)); - serEng.read(fRawData, fRawDataLen); - fRawData[fRawDataLen] = 0; - - int intValLen = 0; - serEng>>intValLen; - fIntVal = (XMLCh*) fMemoryManager->allocate((intValLen+1) * sizeof(XMLCh)); - serEng.read(fIntVal, intValLen); - fIntVal[intValLen] = 0; + serEng.readString(fRawData); + serEng.readString(fIntVal); + } } 1.16 +7 -13 xml-xerces/c/src/xercesc/util/XMLDateTime.cpp Index: XMLDateTime.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/XMLDateTime.cpp,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- XMLDateTime.cpp 25 Sep 2003 15:22:54 -0000 1.15 +++ XMLDateTime.cpp 25 Sep 2003 22:24:28 -0000 1.16 @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.16 2003/09/25 22:24:28 peiyongz + * Using writeString/readString + * * Revision 1.15 2003/09/25 15:22:54 peiyongz * Solve HP complier error * @@ -1464,12 +1467,8 @@ serEng<<fStart; serEng<<fEnd; - serEng<<fBufferMaxLen; - - int bufferLen = XMLString::stringLen(fBuffer); - serEng<<bufferLen; - serEng.write(fBuffer, bufferLen); + serEng.writeString(fBuffer, fBufferMaxLen, XSerializeEngine::toWriteBufferLen); } else { @@ -1485,14 +1484,9 @@ serEng>>fStart; serEng>>fEnd; - serEng>>fBufferMaxLen; - - fBuffer = (XMLCh*) fMemoryManager->allocate((fBufferMaxLen+1) * sizeof(XMLCh)); - int bufferLen = 0; - serEng>>bufferLen; - serEng.read(fBuffer, bufferLen); - fBuffer[bufferLen] = 0; + int dataLen = 0; + serEng.readString(fBuffer, fBufferMaxLen, dataLen ,XSerializeEngine::toReadBufferLen); }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]