summaryrefslogtreecommitdiff
path: root/cpp/demo/Ice/invoke/Client.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/demo/Ice/invoke/Client.cpp')
-rw-r--r--cpp/demo/Ice/invoke/Client.cpp35
1 files changed, 10 insertions, 25 deletions
diff --git a/cpp/demo/Ice/invoke/Client.cpp b/cpp/demo/Ice/invoke/Client.cpp
index 038d09da54a..d209180f66e 100644
--- a/cpp/demo/Ice/invoke/Client.cpp
+++ b/cpp/demo/Ice/invoke/Client.cpp
@@ -17,8 +17,8 @@ class InvokeClient : public Ice::Application
{
public:
+ InvokeClient();
virtual int run(int, char*[]);
- virtual void interruptCallback(int);
private:
@@ -50,6 +50,15 @@ operator<<(ostream& out, Demo::Color c)
return out;
}
+InvokeClient::InvokeClient() :
+ //
+ // Since this is an interactive demo we don't want any signal
+ // handling.
+ //
+ Application(Ice::NoSignalHandling)
+{
+}
+
int
InvokeClient::run(int argc, char* argv[])
{
@@ -59,12 +68,6 @@ InvokeClient::run(int argc, char* argv[])
return EXIT_FAILURE;
}
- //
- // Since this is an interactive demo we want the custom interrupt
- // callback to be called when the process is interrupted.
- //
- callbackOnInterrupt();
-
Ice::ObjectPrx obj = communicator()->propertyToProxy("Printer.Proxy");
menu();
@@ -306,24 +309,6 @@ InvokeClient::run(int argc, char* argv[])
}
void
-InvokeClient::interruptCallback(int)
-{
- try
- {
- communicator()->destroy();
- }
- catch(const IceUtil::Exception& ex)
- {
- cerr << appName() << ": " << ex << endl;
- }
- catch(...)
- {
- cerr << appName() << ": unknown exception" << endl;
- }
- exit(EXIT_SUCCESS);
-}
-
-void
InvokeClient::menu()
{
cout <<