summaryrefslogtreecommitdiff
path: root/examples/C++NPv2/Server_Shutdown.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/C++NPv2/Server_Shutdown.cpp')
-rw-r--r--examples/C++NPv2/Server_Shutdown.cpp98
1 files changed, 0 insertions, 98 deletions
diff --git a/examples/C++NPv2/Server_Shutdown.cpp b/examples/C++NPv2/Server_Shutdown.cpp
deleted file mode 100644
index f0d6df0cdfd..00000000000
--- a/examples/C++NPv2/Server_Shutdown.cpp
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
-** $Id$
-**
-** Copyright 2002 Addison Wesley. All Rights Reserved.
-*/
-
-#include "ace/Event_Handler.h"
-#include "ace/Reactor.h"
-#include "ace/Service_Object.h"
-#include "ace/Thread_Manager.h"
-#include "ace/OS_NS_string.h"
-
-// FUZZ: disable check_for_streams_include
-#include "ace/streams.h"
-
-#if defined (ACE_WIN32) && (!defined (ACE_HAS_STANDARD_CPP_LIBRARY) || \
- (ACE_HAS_STANDARD_CPP_LIBRARY == 0) || \
- defined (ACE_USES_OLD_IOSTREAMS))
-# include <stdio.h>
-#else
-# include <string>
-#endif
-
-#include "SLDEX_export.h"
-
-
-class Quit_Handler : public ACE_Event_Handler {
- friend class ace_dewarn_gplusplus;
-public:
- Quit_Handler (ACE_Reactor *r) : ACE_Event_Handler (r) {}
-
- virtual int handle_exception (ACE_HANDLE) {
- reactor ()->end_reactor_event_loop ();
- return -1; // Trigger call to handle_close() method.
- }
-
- virtual int handle_close (ACE_HANDLE, ACE_Reactor_Mask)
- { delete this; return 0; }
-
-private:
-
- // Private destructor ensures dynamic allocation.
- virtual ~Quit_Handler () {}
-};
-
-
-static ACE_THR_FUNC_RETURN controller (void *arg) {
- ACE_Reactor *reactor = static_cast<ACE_Reactor *> (arg);
-
- Quit_Handler *quit_handler = 0;
- ACE_NEW_RETURN (quit_handler, Quit_Handler (reactor), 0);
-
-#if defined (ACE_WIN32) && (!defined (ACE_HAS_STANDARD_CPP_LIBRARY) || \
- (ACE_HAS_STANDARD_CPP_LIBRARY == 0) || \
- defined (ACE_USES_OLD_IOSTREAMS))
- for (;;) {
- char user_input[80];
- fgets (user_input, sizeof (user_input), stdin);
- if (ACE_OS::strcmp (user_input, "quit") == 0) {
- reactor->notify (quit_handler);
- break;
- }
- }
-#else
- for (;;) {
- std::string user_input;
- std::getline (cin, user_input, '\n');
- if (user_input == "quit") {
- reactor->notify (quit_handler);
- break;
- }
- }
-#endif
-
- return 0;
-}
-
-
-class Server_Shutdown : public ACE_Service_Object {
-public:
- virtual int init (int, ACE_TCHAR *[]) {
- reactor_ = ACE_Reactor::instance ();
- return ACE_Thread_Manager::instance ()->spawn
- (controller, reactor_, THR_DETACHED);
- }
-
- virtual int fini () {
- Quit_Handler *quit_handler = 0;
- ACE_NEW_RETURN (quit_handler,
- Quit_Handler (reactor_), -1);
- return reactor_->notify (quit_handler);
- }
-
-private:
- ACE_Reactor *reactor_;
-};
-
-ACE_FACTORY_DEFINE (SLDEX, Server_Shutdown)