ACE_Service_Repository.
#include <ace/Service_Manager.h>
class ACE_Service_Manager : public ACE_Service_Object {
public:ACE_Service_Manager (void);~ACE_Service_Manager (void);protected:virtual int reconfigure_services (void);virtual int list_services (void);virtual int init (int argc, ASYS_TCHAR *argv[]);virtual int info (ASYS_TCHAR **info_string, size_t length) const;virtual int fini (void);virtual int suspend (void);virtual int resume (void);void dump (void) const;ACE_ALLOC_HOOK_DECLARE;private:int open (const ACE_INET_Addr &sia);virtual ACE_HANDLE get_handle (void) const;virtual int handle_input (ACE_HANDLE fd);virtual int handle_close (ACE_HANDLE fd, ACE_Reactor_Mask);virtual int handle_signal (int signum, siginfo_t *, ucontext_t *);ACE_SOCK_Stream client_stream_;ACE_SOCK_Acceptor acceptor_;int debug_;int signum_;static u_short DEFAULT_PORT_;};
ACE_Reactor::instance in order to trigger reconfigurations.
This scheme can certainly be improved.
ACE_Service_Manager (void);
~ACE_Service_Manager (void);
virtual int reconfigure_services (void);
virtual int list_services (void);
virtual int init (int argc, ASYS_TCHAR *argv[]);
virtual int info (ASYS_TCHAR **info_string, size_t length) const;
virtual int fini (void);
virtual int suspend (void);
virtual int resume (void);
void dump (void) const;
ACE_ALLOC_HOOK_DECLARE;
virtual ACE_HANDLE get_handle (void) const;
virtual int handle_input (ACE_HANDLE fd);
virtual int handle_close (ACE_HANDLE fd, ACE_Reactor_Mask);
virtual int handle_signal (int signum, siginfo_t *, ucontext_t *);
ACE_SOCK_Stream client_stream_;
ACE_SOCK_Acceptor acceptor_;
int debug_;
int signum_;
static u_short DEFAULT_PORT_;