SOAPTranscoder.h

00001 // $Id: SOAPTranscoder.h 21 2010-09-05 04:18:17Z cschwarz1 $
00002 
00003 #ifndef BASE_SOAP_SOAPTRANSCODER_H
00004 #define BASE_SOAP_SOAPTRANSCODER_H
00005 
00006 #include <xercesc/util/TransService.hpp>
00007 #include "SOAPException.h"
00008 
00009 namespace base_soap {
00011 
00015     class PPBASE_SOAP_EXPORT SOAPTranscoder {
00016     public:
00018 
00021         SOAPTranscoder(const char *charset);
00022 
00024         ~SOAPTranscoder();
00025 
00027 
00032         static xercesc::XMLTranscoder *createTranscoder(const char *charset);
00033 
00035 
00038         static void release(char **ch);
00039 
00041 
00044         static void release(XMLCh **ch);
00045 
00047 
00051         static XMLCh *stranscode(const char *src);
00052 
00054 
00058         static XMLCh *stranscode(const base::String &src);
00059 
00061 
00065         static char *stranscode(const XMLCh *src);
00066 
00068 
00072         XMLCh *transcode(const char *src);
00073 
00075 
00079         XMLCh *transcode(const base::String &src);
00080 
00082 
00086         char *transcode(const XMLCh *src);
00087 
00088     private:
00089         xercesc::XMLTranscoder *_transcoder;   
00090     };
00091 }
00092 
00093 #endif