00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #if !defined(_IMESSAGEDATA_H___OF_AXIS_INCLUDED_)
00018 #define _IMESSAGEDATA_H___OF_AXIS_INCLUDED_
00019
00020 #ifdef __cplusplus
00021
00022 #include "WSDDService.h"
00023 #include "IAdminUtils.h"
00024
00025 #include <string>
00026 using namespace std;
00027
00028 #include "IHandlerSoapDeSerializer.h"
00029 #include "IHandlerSoapSerializer.h"
00030 class IDeployerUtils;
00031 #endif
00032
00033 #include "IWrapperSoapDeSerializer.h"
00034 #include "IWrapperSoapSerializer.h"
00035
00036 typedef struct
00037 {
00038 const AxisChar* (AXISCALL* getOperationName)(void* pObj);
00039 void (AXISCALL* getSoapSerializer)(void* pObj,
00040 IWrapperSoapSerializer_C* pIWSS);
00041 void (AXISCALL* getSoapDeSerializer)(void* pObj,
00042 IWrapperSoapDeSerializer_C* pIWSDS);
00043 } IMessageDataFunctions;
00044
00045 typedef struct
00046 {
00047 void* _object;
00048 IMessageDataFunctions* _functions;
00049 } IMessageData_C;
00050
00051 #ifndef __cplusplus
00052 typedef IMessageData_C IMessageData;
00053 #else
00054
00055
00056
00057
00058
00059
00060 class IMessageData
00061 {
00062
00063 friend class AxisAdminServiceWrapper;
00064 public:
00065 virtual ~IMessageData(){};
00066 private:
00067 virtual void getAdminUtils(IAdminUtils** pIAdminUtils)=0;
00068 public:
00069 virtual int setProperty(AxisChar* pachName, const AxisChar* pachValue)=0;
00070 virtual const AxisChar* getProperty(AxisChar* sName)=0;
00071 virtual const AxisChar* AXISCALL getOperationName()=0;
00072 virtual void AXISCALL getSoapSerializer(IWrapperSoapSerializer** pIWSS)=0;
00073 virtual void AXISCALL getSoapDeSerializer
00074 (IWrapperSoapDeSerializer** pIWSDS)=0;
00075 virtual void getSoapSerializer
00076 (IHandlerSoapSerializer** pIHandlerSoapSerializer)=0;
00077 virtual void getSoapDeSerializer
00078 (IHandlerSoapDeSerializer** pIHandlerSoapDeSerializer)=0;
00079 virtual void setUserName(string& m_sUserName)=0;
00080 virtual string& getUserName()=0;
00081 virtual void setService(const WSDDService* argService) = 0;
00082 virtual const WSDDService* getService() = 0;
00083 virtual bool isPastPivot()=0;
00084 virtual int setPastPivotState(bool bState)=0;
00085
00086
00087 public:
00088 static IMessageDataFunctions ms_VFtable;
00089 static const AxisChar* AXISCALL s_GetOperationName(void* pObj)
00090 { return ((IMessageData*)pObj)->getOperationName();};
00091 static void AXISCALL s_GetSoapSerializer(void* pObj,
00092 IWrapperSoapSerializer_C* pIWSS)
00093 { ((IMessageData*)pObj)->getSoapSerializer
00094 ((IWrapperSoapSerializer**)&(pIWSS->_object));
00095 pIWSS->_functions = &(IWrapperSoapSerializer::ms_VFtable);};
00096 static void AXISCALL s_GetSoapDeSerializer(void* pObj,
00097 IWrapperSoapDeSerializer_C* pIWSDS)
00098 { ((IMessageData*)pObj)->getSoapDeSerializer
00099 ((IWrapperSoapDeSerializer**)&(pIWSDS->_object));
00100 pIWSDS->_functions = &(IWrapperSoapDeSerializer::ms_VFtable);};
00101 static void s_Initialize()
00102 {
00103 ms_VFtable.getOperationName = s_GetOperationName;
00104 ms_VFtable.getSoapSerializer = s_GetSoapSerializer;
00105 ms_VFtable.getSoapDeSerializer = s_GetSoapDeSerializer;
00106 }
00107 };
00108
00109 #endif
00110
00111 #endif
00112
00113
00114
00115
00116
00117