00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #if !defined(_MESSAGEDATA_H____OF_AXIS_INCLUDED_)
00018 #define _MESSAGEDATA_H____OF_AXIS_INCLUDED_
00019
00020 #include "IMessageData.h"
00021 #include "AdminUtils.h"
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 struct ltstr
00032 {
00033 bool operator()(const char* s1, const char* s2) const
00034 {
00035 return strcmp(s1, s2) < 0;
00036 }
00037 };
00038
00039 class MessageData : public IMessageData
00040 {
00041 public:
00042 MessageData();
00043 virtual ~MessageData();
00044 public:
00045 IWrapperSoapSerializer* m_pSZ;
00046 IWrapperSoapDeSerializer* m_pDZ;
00047 private:
00048 void getAdminUtils(IAdminUtils** pIAdminUtils);
00049 public:
00050 const AxisChar* getProperty(AxisChar* pachName);
00051 int setProperty(AxisChar* pachName, const AxisChar* pachValue);
00052 void setOperationName(const AxisChar* pchOperation)
00053 {m_sOperationName = pchOperation;};
00054 void getSoapDeSerializer
00055 (IHandlerSoapDeSerializer** pIHandlerSoapDeSerializer);
00056 const AxisChar* AXISCALL getOperationName()
00057 {return m_sOperationName.c_str();};
00058 void AXISCALL getSoapSerializer(IWrapperSoapSerializer** pIWSS);
00059 void AXISCALL getSoapDeSerializer(IWrapperSoapDeSerializer** pIWSDS);
00060 void getSoapSerializer(IHandlerSoapSerializer** pIHandlerSoapSerializer);
00061 IWrapperSoapDeSerializer* getSoapDeserializer();
00062 int setPastPivotState(bool bState);
00063 bool isPastPivot();
00064 void setDeSerializer(IWrapperSoapDeSerializer* pDZ);
00065 void setSerializer(IWrapperSoapSerializer* pSZ);
00066 void setUserName(string& m_sUserName);
00067 string& getUserName();
00068 void setService(const WSDDService* argService);
00069 const WSDDService* getService();
00070 AXIS_PROTOCOL_TYPE m_Protocol;
00071
00072 protected:
00073 string m_sUserName;
00074 string m_sOperationName;
00075 const WSDDService* m_Service;
00076
00077 private:
00078 static AdminUtils m_AdminUtil;
00079 bool m_bPastPivotState;
00080 map <AxisChar*, AxisChar*, ltstr> m_Properties;
00081 static const AxisChar* m_pachBlankPropertyValue;
00082 };
00083
00084 #endif
00085