summaryrefslogtreecommitdiff
path: root/cpp/demo/Ice/session/Server.cpp
diff options
context:
space:
mode:
authorMatthew Newhook <matthew@zeroc.com>2005-04-21 01:00:54 +0000
committerMatthew Newhook <matthew@zeroc.com>2005-04-21 01:00:54 +0000
commit69127ef1995165a1a78027318bfb55856f5b055e (patch)
tree7057a8d6fa6196af02f368505ccc888f3404f4cb /cpp/demo/Ice/session/Server.cpp
parentOptional modules in ICEE (diff)
downloadice-69127ef1995165a1a78027318bfb55856f5b055e.tar.bz2
ice-69127ef1995165a1a78027318bfb55856f5b055e.tar.xz
ice-69127ef1995165a1a78027318bfb55856f5b055e.zip
edits to session demo.
Diffstat (limited to 'cpp/demo/Ice/session/Server.cpp')
-rw-r--r--cpp/demo/Ice/session/Server.cpp60
1 files changed, 21 insertions, 39 deletions
diff --git a/cpp/demo/Ice/session/Server.cpp b/cpp/demo/Ice/session/Server.cpp
index c7f74357301..e663475dfd8 100644
--- a/cpp/demo/Ice/session/Server.cpp
+++ b/cpp/demo/Ice/session/Server.cpp
@@ -13,57 +13,39 @@
using namespace std;
using namespace Demo;
-// XXX Change to use Ice::Application.
+class SessionServer : public Ice::Application
+{
+public:
+
+ virtual int run(int, char*[]);
+
+private:
+
+ void menu();
+ string trim(const string&);
+};
+
+int
+main(int argc, char* argv[])
+{
+ SessionServer app;
+ return app.main(argc, argv, "config");
+}
int
-run(int argc, char* argv[], const Ice::CommunicatorPtr& communicator)
+SessionServer::run(int argc, char* argv[])
{
- Ice::ObjectAdapterPtr adapter = communicator->createObjectAdapter("SessionFactory");
+ Ice::ObjectAdapterPtr adapter = communicator()->createObjectAdapter("SessionFactory");
ReapThreadPtr reaper = ReapThread::instance();
reaper->start();
adapter->add(new SessionFactoryI, Ice::stringToIdentity("SessionFactory"));
adapter->activate();
- communicator->waitForShutdown();
+ communicator()->waitForShutdown();
reaper->terminate();
reaper->getThreadControl().join();
return EXIT_SUCCESS;
}
-
-int
-main(int argc, char* argv[])
-{
- int status;
- Ice::CommunicatorPtr communicator;
-
- try
- {
- Ice::PropertiesPtr properties = Ice::createProperties();
- properties->load("config");
- communicator = Ice::initializeWithProperties(argc, argv, properties);
- status = run(argc, argv, communicator);
- }
- catch(const Ice::Exception& ex)
- {
- cerr << ex << endl;
- status = EXIT_FAILURE;
- }
-
- if(communicator)
- {
- try
- {
- communicator->destroy();
- }
- catch(const Ice::Exception& ex)
- {
- cerr << ex << endl;
- status = EXIT_FAILURE;
- }
- }
-
- return status;
-}