From: Anthony Geay Date: Mon, 4 Aug 2014 15:36:54 +0000 (+0200) Subject: Some debug to retrieve same behaviour than before refactoring. X-Git-Tag: V7_5_0a1~4^2~21 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=15a9ddc4958358a4d5f06ac749a3572f6d732e5f;p=modules%2Fyacs.git Some debug to retrieve same behaviour than before refactoring. --- diff --git a/src/runtime/SalomeContainerHelper.cxx b/src/runtime/SalomeContainerHelper.cxx index 9a9056863..fe84e2d64 100644 --- a/src/runtime/SalomeContainerHelper.cxx +++ b/src/runtime/SalomeContainerHelper.cxx @@ -50,6 +50,11 @@ std::string SalomeContainerMonoHelper::getType() const return TYPE_NAME; } +std::string SalomeContainerMonoHelper::getDftLaunchMode() const +{ + return std::string(DFT_LAUNCH_MODE); +} + SalomeContainerMonoHelper *SalomeContainerMonoHelper::deepCpyOnlyStaticInfo() const { return new SalomeContainerMonoHelper; @@ -102,6 +107,11 @@ std::string SalomeContainerMultiHelper::getType() const return TYPE_NAME; } +std::string SalomeContainerMultiHelper::getDftLaunchMode() const +{ + return std::string(DFT_LAUNCH_MODE); +} + SalomeContainerMultiHelper *SalomeContainerMultiHelper::deepCpyOnlyStaticInfo() const { return new SalomeContainerMultiHelper; diff --git a/src/runtime/SalomeContainerHelper.hxx b/src/runtime/SalomeContainerHelper.hxx index b14a78215..2237bad9e 100644 --- a/src/runtime/SalomeContainerHelper.hxx +++ b/src/runtime/SalomeContainerHelper.hxx @@ -41,6 +41,7 @@ namespace YACS { public: virtual std::string getType() const = 0; + virtual std::string getDftLaunchMode() const = 0; virtual SalomeContainerHelper *deepCpyOnlyStaticInfo() const = 0; virtual Engines::Container_var getContainer(const Task *askingNode) const = 0; virtual bool isAlreadyStarted(const Task *askingNode) const = 0; @@ -55,6 +56,7 @@ namespace YACS public: SalomeContainerMonoHelper(); std::string getType() const; + std::string getDftLaunchMode() const; SalomeContainerMonoHelper *deepCpyOnlyStaticInfo() const; Engines::Container_var getContainer(const Task *askingNode) const; bool isAlreadyStarted(const Task *askingNode) const; @@ -73,6 +75,7 @@ namespace YACS { public: std::string getType() const; + std::string getDftLaunchMode() const; SalomeContainerMultiHelper *deepCpyOnlyStaticInfo() const; Engines::Container_var getContainer(const Task *askingNode) const; bool isAlreadyStarted(const Task *askingNode) const; diff --git a/src/runtime/SalomeContainerTools.cxx b/src/runtime/SalomeContainerTools.cxx index 1976a9679..2dec1aa0e 100644 --- a/src/runtime/SalomeContainerTools.cxx +++ b/src/runtime/SalomeContainerTools.cxx @@ -226,7 +226,7 @@ std::string SalomeContainerTools::getContainerName() const void SalomeContainerTools::setContainerName(const std::string& name) { - _params.container_name=CORBA::string_dup(name.c_str()); + SetContainerNameOf(_params,name); } std::string SalomeContainerTools::getNotNullContainerName(const Container *contPtr, bool& isEmpty) const @@ -256,6 +256,11 @@ std::string SalomeContainerTools::getHostName() const return std::string(_params.resource_params.hostname); } +void SalomeContainerTools::SetContainerNameOf(Engines::ContainerParameters& params, const std::string& name) +{ + params.container_name=CORBA::string_dup(name.c_str()); +} + std::map SalomeContainerTools::getResourceProperties(const std::string& name) const { std::map properties; @@ -325,12 +330,16 @@ void SalomeContainerTools::Start(const std::vector& compoNames, Sal sct.addToComponentList(*iter); Engines::ContainerParameters myparams(sct.getParameters()); + { + std::string dftLauchMode(schelp->getDftLaunchMode()); + myparams.mode=CORBA::string_dup(dftLauchMode.c_str()); + } //If a container_name is given try to find an already existing container in naming service //If not found start a new container with the given parameters - if (dynamic_cast(schelp) && str != "") + if (dynamic_cast(schelp) && !isEmptyName) { - myparams.mode="getorstart"; + myparams.mode=CORBA::string_dup("getorstart"); } if (isEmptyName) @@ -338,6 +347,7 @@ void SalomeContainerTools::Start(const std::vector& compoNames, Sal shutdownLevel=1; } sct.setContainerName(str); + SetContainerNameOf(myparams,str); Engines::Container_var trueCont(Engines::Container::_nil()); if(!isEmptyName && shutdownLevel==999) { diff --git a/src/runtime/SalomeContainerTools.hxx b/src/runtime/SalomeContainerTools.hxx index deb6cdb5b..4d5d2b88d 100644 --- a/src/runtime/SalomeContainerTools.hxx +++ b/src/runtime/SalomeContainerTools.hxx @@ -55,6 +55,7 @@ namespace YACS std::string getNotNullContainerName(const Container *contPtr, bool& isEmpty) const; std::string getHostName() const; Engines::ContainerParameters getParameters() const { return _params; } + static void SetContainerNameOf(Engines::ContainerParameters& params, const std::string& name); public: static void Start(const std::vector& compoNames, SalomeContainerHelper *schelp, SalomeContainerTools& sct, int& shutdownLevel, const Container *cont, const Task *askingNode); static CORBA::Object_ptr LoadComponent(SalomeContainerHelper *launchModeType, Container *cont, Task *askingNode);