summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/Application.cpp
diff options
context:
space:
mode:
authorMichi Henning <michi@zeroc.com>2007-02-08 03:47:33 +0000
committerMichi Henning <michi@zeroc.com>2007-02-08 03:47:33 +0000
commitb97e1dc601473c56a5c13ce5438e4f7f3514a285 (patch)
treecba3b8a70f17290b42d7c2f61ab96339eab7524d /cpp/src/Ice/Application.cpp
parent3.2b update (diff)
downloadice-b97e1dc601473c56a5c13ce5438e4f7f3514a285.tar.bz2
ice-b97e1dc601473c56a5c13ce5438e4f7f3514a285.tar.xz
ice-b97e1dc601473c56a5c13ce5438e4f7f3514a285.zip
Bug 1337.
Diffstat (limited to 'cpp/src/Ice/Application.cpp')
-rw-r--r--cpp/src/Ice/Application.cpp84
1 files changed, 53 insertions, 31 deletions
diff --git a/cpp/src/Ice/Application.cpp b/cpp/src/Ice/Application.cpp
index adcd5ddfb69..018400a5579 100644
--- a/cpp/src/Ice/Application.cpp
+++ b/cpp/src/Ice/Application.cpp
@@ -11,6 +11,7 @@
#include <IceUtil/StaticMutex.h>
#include <IceUtil/CtrlCHandler.h>
#include <IceUtil/Cond.h>
+#include <IceUtil/ArgVector.h>
#include <Ice/GC.h>
#include <memory>
@@ -321,37 +322,6 @@ Ice::Application::main(int argc, char* argv[], const char* configFile)
int
-Ice::Application::main(int argc, char* argv[], const char* configFile, const Ice::LoggerPtr& logger)
-{
- InitializationData initData;
- if(configFile)
- {
- try
- {
- initData.properties = createProperties();
- initData.properties->load(configFile);
- }
- catch(const IceUtil::Exception& ex)
- {
- cerr << argv[0] << ": " << ex << endl;
- return EXIT_FAILURE;
- }
- catch(const std::exception& ex)
- {
- cerr << argv[0] << ": std::exception: " << ex.what() << endl;
- return EXIT_FAILURE;
- }
- catch(...)
- {
- cerr << argv[0] << ": unknown exception" << endl;
- return EXIT_FAILURE;
- }
- }
- initData.logger = logger;
- return main(argc, argv, initData);
-}
-
-int
Ice::Application::main(int argc, char* argv[], const InitializationData& initData)
{
if(_communicator != 0)
@@ -488,6 +458,58 @@ Ice::Application::main(int argc, char* argv[], const InitializationData& initDat
return status;
}
+int
+Ice::Application::main(int argc, char* argv[], const char* configFile, const Ice::LoggerPtr& logger)
+{
+ InitializationData initData;
+ if(configFile)
+ {
+ try
+ {
+ initData.properties = createProperties();
+ initData.properties->load(configFile);
+ }
+ catch(const IceUtil::Exception& ex)
+ {
+ cerr << argv[0] << ": " << ex << endl;
+ return EXIT_FAILURE;
+ }
+ catch(const std::exception& ex)
+ {
+ cerr << argv[0] << ": std::exception: " << ex.what() << endl;
+ return EXIT_FAILURE;
+ }
+ catch(...)
+ {
+ cerr << argv[0] << ": unknown exception" << endl;
+ return EXIT_FAILURE;
+ }
+ }
+ initData.logger = logger;
+ return main(argc, argv, initData);
+}
+
+int
+Ice::Application::main(const StringSeq& args)
+{
+ ArgVector av(args);
+ return main(av.argc, av.argv);
+}
+
+int
+Ice::Application::main(const StringSeq& args, const char* configFile)
+{
+ ArgVector av(args);
+ return main(av.argc, av.argv, configFile);
+}
+
+int
+Ice::Application::main(const StringSeq& args, const InitializationData& initData)
+{
+ ArgVector av(args);
+ return main(av.argc, av.argv, initData);
+}
+
void
Ice::Application::interruptCallback(int)
{