return TYPE_NAME;
}
+std::string SalomeContainerMonoHelper::getDftLaunchMode() const
+{
+ return std::string(DFT_LAUNCH_MODE);
+}
+
SalomeContainerMonoHelper *SalomeContainerMonoHelper::deepCpyOnlyStaticInfo() const
{
return new SalomeContainerMonoHelper;
return TYPE_NAME;
}
+std::string SalomeContainerMultiHelper::getDftLaunchMode() const
+{
+ return std::string(DFT_LAUNCH_MODE);
+}
+
SalomeContainerMultiHelper *SalomeContainerMultiHelper::deepCpyOnlyStaticInfo() const
{
return new SalomeContainerMultiHelper;
{
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;
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;
{
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;
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
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<std::string,std::string> SalomeContainerTools::getResourceProperties(const std::string& name) const
{
std::map<std::string,std::string> properties;
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<SalomeContainerMonoHelper *>(schelp) && str != "")
+ if (dynamic_cast<SalomeContainerMonoHelper *>(schelp) && !isEmptyName)
{
- myparams.mode="getorstart";
+ myparams.mode=CORBA::string_dup("getorstart");
}
if (isEmptyName)
shutdownLevel=1;
}
sct.setContainerName(str);
+ SetContainerNameOf(myparams,str);
Engines::Container_var trueCont(Engines::Container::_nil());
if(!isEmptyName && shutdownLevel==999)
{
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<std::string>& compoNames, SalomeContainerHelper *schelp, SalomeContainerTools& sct, int& shutdownLevel, const Container *cont, const Task *askingNode);
static CORBA::Object_ptr LoadComponent(SalomeContainerHelper *launchModeType, Container *cont, Task *askingNode);