summaryrefslogtreecommitdiff
path: root/ace/Service_Manager.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/Service_Manager.h')
-rw-r--r--ace/Service_Manager.h120
1 files changed, 0 insertions, 120 deletions
diff --git a/ace/Service_Manager.h b/ace/Service_Manager.h
deleted file mode 100644
index ad62bb63b4c..00000000000
--- a/ace/Service_Manager.h
+++ /dev/null
@@ -1,120 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Service_Manager.h
- *
- * $Id$
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SERVICE_MANAGER_H
-#define ACE_SERVICE_MANAGER_H
-#include "ace/pre.h"
-
-#include "ace/SOCK_Stream.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK_Acceptor.h"
-#include "ace/INET_Addr.h"
-#include "ace/Service_Object.h"
-
-/**
- * @class ACE_Service_Manager
- *
- * @brief Provide a standard ACE service for managing all the services
- * configured in an <ACE_Service_Repository>.
- *
- * This implementation is simple and just handles each client
- * request one at a time. There are currently 3 types of requests:
- * + List services: If the string "help" is sent, return a list of all
- * the services supported by the Service Configurator.
- * + Reconfigure: If the string "reconfigure" is sent trigger a
- * reconfiguration, which will re-read the local <svc.conf> file.
- * + Process directive: If neither "help" nor "reconfigure" is sent,
- * simply treat the incoming string as a process directive and pass
- * it along to <ACE_Service_Config::process_directive>. This allows
- * remote configuration via command-line instructions like
- * % echo suspend My_Remote_Service | telnet hostname 3911
- *
- * Each request is associated with a new connection, which is closed
- * when the request is processed. In addition, you must be using the
- * singleton <ACE_Reactor::instance> in order to trigger
- * reconfigurations.
- */
-class ACE_Export ACE_Service_Manager : public ACE_Service_Object
-{
-public:
- // = Initialization and termination hooks.
- /// Constructor.
- ACE_Service_Manager (void);
-
- /// Destructor.
- ~ACE_Service_Manager (void);
-
-protected:
- // = Perform the various meta-services.
-
- /// Trigger a reconfiguration of the Service Configurator by
- //re-reading its local <svc.conf> file.
- virtual int reconfigure_services (void);
-
- /// Determine all the services offered by this daemon and return the
- /// information back to the client.
- virtual int list_services (void);
-
- // = Dynamic linking hooks.
- virtual int init (int argc, ACE_TCHAR *argv[]);
- virtual int info (ACE_TCHAR **info_string, size_t length) const;
- virtual int fini (void);
-
- // = Scheduling hooks.
- virtual int suspend (void);
- virtual int resume (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- int open (const ACE_INET_Addr &sia);
-
- // = Demultiplexing hooks.
- 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 *);
-
- /// Handle one request.
- virtual void process_request (ACE_TCHAR *request);
-
- /// Connection to the client (we only support one client connection
- /// at a time).
- ACE_SOCK_Stream client_stream_;
-
- /// Acceptor instance.
- ACE_SOCK_Acceptor acceptor_;
-
- /// Keep track of the debugging level.
- int debug_;
-
- /// The signal used to trigger reconfiguration.
- int signum_;
-
- /// Default port for the Acceptor to listen on.
- static u_short DEFAULT_PORT_;
-};
-
-#if defined (__ACE_INLINE__)
-#include "ace/Service_Manager.i"
-#endif /* __ACE_INLINE__ */
-
-#include "ace/post.h"
-#endif /* _SERVICE_MANAGER_H */