diff options
Diffstat (limited to 'cppe/src/IceE/Initialize.cpp')
-rw-r--r-- | cppe/src/IceE/Initialize.cpp | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/cppe/src/IceE/Initialize.cpp b/cppe/src/IceE/Initialize.cpp index 1cf8d21602a..dd2536e93d3 100644 --- a/cppe/src/IceE/Initialize.cpp +++ b/cppe/src/IceE/Initialize.cpp @@ -123,14 +123,7 @@ Ice::getDefaultProperties(int& argc, char* argv[]) } CommunicatorPtr -Ice::initialize(int& argc, char* argv[], Int version) -{ - PropertiesPtr properties = getDefaultProperties(argc, argv); - return initializeWithProperties(argc, argv, properties, version); -} - -CommunicatorPtr -Ice::initializeWithProperties(int& argc, char* argv[], const PropertiesPtr& properties, Int version) +Ice::initialize(int& argc, char* argv[], InitializationData initData, Int version) { #ifndef ICE_IGNORE_VERSION // @@ -150,15 +143,28 @@ Ice::initializeWithProperties(int& argc, char* argv[], const PropertiesPtr& prop } #endif + if(!initData.properties) + { + initData.properties = getDefaultProperties(argc, argv); + } + StringSeq args = argsToStringSeq(argc, argv); - args = properties->parseIceCommandLineOptions(args); + args = initData.properties->parseIceCommandLineOptions(args); stringSeqToArgs(args, argc, argv); - CommunicatorPtr communicator = new Communicator(properties); + CommunicatorPtr communicator = new Communicator(initData); communicator->finishSetup(argc, argv); return communicator; } +CommunicatorPtr +Ice::initializeWithProperties(int& argc, char* argv[], const PropertiesPtr& properties, Int version) +{ + InitializationData initData; + initData.properties = properties; + return initialize(argc, argv, initData, version); +} + InstancePtr IceInternal::getInstance(const CommunicatorPtr& communicator) { |