00001 /*------------------------------------------------------------------------------ 00002 Name: I_CallbackServer.h 00003 Project: xmlBlaster.org 00004 Copyright: xmlBlaster.org, see xmlBlaster-LICENSE file 00005 Comment: Interface for clients, used by xmlBlaster to send messages back 00006 ------------------------------------------------------------------------------*/ 00007 00008 00025 #ifndef _CLIENT_PROTOCOL_I_CALLBACKSERVER 00026 #define _CLIENT_PROTOCOL_I_CALLBACKSERVER 00027 00028 #include <util/xmlBlasterDef.h> 00029 #include <string> 00030 #include <client/I_Callback.h> 00031 #include <client/protocol/I_ProgressListener.h> 00032 00033 namespace org { namespace xmlBlaster { namespace client { namespace protocol { 00034 00035 class Dll_Export I_CallbackServer 00036 { 00037 public: 00038 00039 virtual ~I_CallbackServer() 00040 { 00041 } 00042 00051 virtual void initialize(const std::string& name, org::xmlBlaster::client::I_Callback &client) = 0; 00052 00057 virtual std::string getCbProtocol() = 0; 00058 00064 virtual std::string getCbAddress() = 0; 00065 00070 virtual bool shutdownCb() = 0; 00071 00078 virtual org::xmlBlaster::client::protocol::I_ProgressListener* registerProgressListener(org::xmlBlaster::client::protocol::I_ProgressListener *listener) = 0; 00079 }; 00080 00081 }}}} // namespaces 00082 00083 #endif