00001 00023 /* 00024 #ifndef TSOAPOBJECTCREATOR_H 00025 #include "TSOAPObjectCreator.h" 00026 #endif // TSOAPOBJECTCREATOR_H 00027 */ 00028 00029 #ifndef TSOAPOBJECTCREATOR_H 00030 #define TSOAPOBJECTCREATOR_H 00031 00032 #if !defined(SOAPOBJECTCREATOR_H) 00033 #include "SOAPObjectCreator.h" 00034 #endif // !defined(SOAPOBJECTCREATOR_H) 00035 00036 template <class T> 00037 class TSOAPObjectCreator : public SOAPObjectCreator 00038 { 00039 public: 00040 TSOAPObjectCreator( std::string szObjectName ) : 00041 m_szObjectName( szObjectName ) {} 00042 virtual SOAPObject* newSOAPObject() { return new T; } 00043 virtual std::string createdObjectName() 00044 { return m_szObjectName; } 00045 00046 private: 00047 std::string m_szObjectName; 00048 }; 00049 00050 00051 #endif // TSOAPOBJECTCREATOR_H