00001 /* **************************************************************** 00002 **************************************************************** 00003 * Com++ Professional (c) 2009 C++ World 00004 * http://www.cplusplusworld.com/ mailto:compp@cplusplusworld.com 00005 **************************************************************** 00006 **************************************************************** 00007 */ 00008 00009 #ifndef SSRV_H 00010 #define SSRV_H 00011 00012 #include "ComPlusPlus/SocketTcp.h" 00013 #include "ComPlusPlus/Thread.h" 00014 #include "ComPlusPlus/SSrvContext.h" 00015 #include "ComPlusPlus/SSrvProperties.h" 00016 00017 namespace compp { 00018 class SSrv : public compp::Thread { 00019 00020 public: 00021 SSrv( ); 00022 SSrv( const SSrvProperties & prop); 00023 SSrv( const std::string & IPAddr, const int port, const SSrvProperties & prop); 00024 SSrv( const int port ); 00025 SSrv( const std::string & IPAddr, const int port ); 00026 virtual~SSrv( ); 00027 00028 void commenceWork (); 00029 void setPort ( const int p ) { port = p ;} 00030 void setIPAddr ( const std::string & s ) { IPAddr = s ; } 00031 void SetProperties( const SSrvProperties & prop); 00032 virtual std::string executeTransaction ( const std::string & request, SSrvContext & Context ); 00033 00034 void *Run (void*v); 00035 00036 00037 protected: 00038 00039 std::string IPAddr; 00040 int port; 00041 compp::SocketTcp Server ; 00042 00043 SSrvProperties ServerProperties; 00044 00045 }; 00046 } 00047 00048 #endif
1.6.3