tng 2003/01/09 07:36:11
Modified: c/src/xercesc/util TransService.cpp
Log:
Use transService to open the transcode if intrinsic is not found.
Revision Changes Path
1.10 +58 -53 xml-xerces/c/src/xercesc/util/TransService.cpp
Index: TransService.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/TransService.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- TransService.cpp 6 Dec 2002 18:43:48 -0000 1.9
+++ TransService.cpp 9 Jan 2003 15:36:11 -0000 1.10
@@ -115,7 +115,7 @@
}
// ---------------------------------------------------------------------------
-// XLMTransService: Constructors and destructor
+// XMLTransService: Constructors and destructor
// ---------------------------------------------------------------------------
XMLTransService::XMLTransService()
{
@@ -164,7 +164,7 @@
}
// ---------------------------------------------------------------------------
-// XLMTranscoder: Non-virtual API
+// XMLTransService: Non-virtual API
// ---------------------------------------------------------------------------
XMLTranscoder*
XMLTransService::makeNewTranscoderFor( const char* const encodingName
@@ -242,7 +242,7 @@
//
// We can only make transcoder if the passed encodingEnum is under this range
//
- if (encodingEnum < XMLRecognizer::EBCDIC || encodingEnum >
XMLRecognizer::XERCES_XMLCH) {
+ if (encodingEnum < XMLRecognizer::Encodings_Min || encodingEnum >
XMLRecognizer::Encodings_Max) {
resValue = XMLTransService::InternalFailure;
return 0;
}
@@ -256,61 +256,20 @@
return temp;
}
else {
- resValue = XMLTransService::InternalFailure;
- return 0;
- }
-
-}
-
-
-// ---------------------------------------------------------------------------
-// XLMTranscoder: Public Destructor
-// ---------------------------------------------------------------------------
-XMLTranscoder::~XMLTranscoder()
-{
- delete [] fEncodingName;
-}
-
-
-// ---------------------------------------------------------------------------
-// XLMTranscoder: Hidden Constructors
-// ---------------------------------------------------------------------------
-XMLTranscoder::XMLTranscoder(const XMLCh* const encodingName
- , const unsigned int blockSize) :
- fEncodingName(0)
- , fBlockSize(blockSize)
-{
- fEncodingName = XMLString::replicate(encodingName);
-}
+ XMLTranscoder* temp =
makeNewXMLTranscoder(XMLRecognizer::nameForEncoding(encodingEnum), resValue,
blockSize);
+ // if successful, set resValue to OK
+ // if failed, the makeNewXMLTranscoder has already set the proper failing
resValue
+ if (temp) resValue = XMLTransService::Ok;
-// ---------------------------------------------------------------------------
-// XLMTranscoder: Protected helpers
-// ---------------------------------------------------------------------------
-void XMLTranscoder::checkBlockSize(const unsigned int toCheck)
-{
-// if (toCheck > fBlockSize)
-// ThrowXML(TranscodingException, XMLExcepts::Trans_BadBlockSize);
-}
-
+ return temp;
+ }
-// ---------------------------------------------------------------------------
-// XLMLCPTranscoder: Public Destructor
-// ---------------------------------------------------------------------------
-XMLLCPTranscoder::XMLLCPTranscoder()
-{
}
// ---------------------------------------------------------------------------
-// XLMTranscoder: Hidden Constructors
-// ---------------------------------------------------------------------------
-XMLLCPTranscoder::~XMLLCPTranscoder()
-{
-}
-
-// ---------------------------------------------------------------------------
-// XLMTranscoder: Hidden Init Method
+// XMLTransTransService: Hidden Init Method
//
// This is called by platform utils during startup.
// ---------------------------------------------------------------------------
@@ -550,7 +509,7 @@
}
// ---------------------------------------------------------------------------
-// XLMTransService: IANA encoding setting
+// XMLTransService: IANA encoding setting
// ---------------------------------------------------------------------------
void XMLTransService::strictIANAEncoding(const bool newState)
{
@@ -560,6 +519,52 @@
bool XMLTransService::isStrictIANAEncoding()
{
return gStrictIANAEncoding;
+}
+
+// ---------------------------------------------------------------------------
+// XMLTranscoder: Public Destructor
+// ---------------------------------------------------------------------------
+XMLTranscoder::~XMLTranscoder()
+{
+ delete [] fEncodingName;
+}
+
+
+// ---------------------------------------------------------------------------
+// XMLTranscoder: Hidden Constructors
+// ---------------------------------------------------------------------------
+XMLTranscoder::XMLTranscoder(const XMLCh* const encodingName
+ , const unsigned int blockSize) :
+ fEncodingName(0)
+ , fBlockSize(blockSize)
+{
+ fEncodingName = XMLString::replicate(encodingName);
+}
+
+
+// ---------------------------------------------------------------------------
+// XMLTranscoder: Protected helpers
+// ---------------------------------------------------------------------------
+void XMLTranscoder::checkBlockSize(const unsigned int toCheck)
+{
+// if (toCheck > fBlockSize)
+// ThrowXML(TranscodingException, XMLExcepts::Trans_BadBlockSize);
+}
+
+
+// ---------------------------------------------------------------------------
+// XMLLCPTranscoder: Public Destructor
+// ---------------------------------------------------------------------------
+XMLLCPTranscoder::XMLLCPTranscoder()
+{
+}
+
+
+// ---------------------------------------------------------------------------
+// XMLLCPTranscoder: Hidden Constructors
+// ---------------------------------------------------------------------------
+XMLLCPTranscoder::~XMLLCPTranscoder()
+{
}
XERCES_CPP_NAMESPACE_END
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]