summaryrefslogtreecommitdiff
path: root/cpp/demo/Freeze/phonebook/Client.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/demo/Freeze/phonebook/Client.cpp')
-rw-r--r--cpp/demo/Freeze/phonebook/Client.cpp38
1 files changed, 13 insertions, 25 deletions
diff --git a/cpp/demo/Freeze/phonebook/Client.cpp b/cpp/demo/Freeze/phonebook/Client.cpp
index afdc0d2d0d4..0c695d5c527 100644
--- a/cpp/demo/Freeze/phonebook/Client.cpp
+++ b/cpp/demo/Freeze/phonebook/Client.cpp
@@ -14,8 +14,11 @@ using namespace std;
class PhoneBookClient : public Ice::Application
{
+public:
+
+ PhoneBookClient();
+
virtual int run(int argc, char* argv[]);
- virtual void interruptCallback(int);
};
int
@@ -25,33 +28,18 @@ main(int argc, char* argv[])
return app.main(argc, argv, "config.client");
}
-int
-PhoneBookClient::run(int argc, char* argv[])
-{
+PhoneBookClient::PhoneBookClient() :
//
- // Since this is an interactive demo we want the custom interrupt
- // callback to be called when the process is interrupted.
+ // Since this is an interactive demo we don't want any signal
+ // handling.
//
- callbackOnInterrupt();
-
- int runParser(int, char*[], const Ice::CommunicatorPtr&);
- return runParser(argc, argv, communicator());
+ Application(Ice::NoSignalHandling)
+{
}
-void
-PhoneBookClient::interruptCallback(int)
+int
+PhoneBookClient::run(int argc, char* argv[])
{
- try
- {
- communicator()->destroy();
- }
- catch(const IceUtil::Exception& ex)
- {
- cerr << appName() << ": " << ex << endl;
- }
- catch(...)
- {
- cerr << appName() << ": unknown exception" << endl;
- }
- exit(EXIT_SUCCESS);
+ int runParser(int, char*[], const Ice::CommunicatorPtr&);
+ return runParser(argc, argv, communicator());
}