A class to manage life cycle of SALOME components. More...
#include <SALOME_LifeCycleCORBA.hxx>
Public Member Functions | |
| SALOME_LifeCycleCORBA (SALOME_NamingService *ns=0) | |
| Constructor. More... | |
| virtual | ~SALOME_LifeCycleCORBA () |
| Destructor. More... | |
| Engines::EngineComponent_ptr | FindComponent (const Engines::ContainerParameters ¶ms, const char *componentName, int studyId=0) |
| Find an already existing and registered component instance. More... | |
| Engines::EngineComponent_ptr | LoadComponent (const Engines::ContainerParameters ¶ms, const char *componentName, int studyId=0) |
| Load a component instance on a container defined by its parameters. More... | |
| Engines::EngineComponent_ptr | FindOrLoad_Component (const Engines::ContainerParameters ¶ms, const char *componentName, int studyId=0) |
| Find an already existing and registered component instance or load a new component instance on a container defined by its parameters. More... | |
| Engines::EngineComponent_ptr | FindOrLoad_Component (const char *containerName, const char *componentName) |
| Find an already existing and registered component instance or load a new component instance on a container defined by name. More... | |
| Engines::EngineComponent_ptr | Load_ParallelComponent (const Engines::ContainerParameters ¶ms, const char *componentName, int studyId) |
| Load a parallel component instance. More... | |
| bool | isKnownComponentClass (const char *componentName) |
| Check if the component class is known in module catalog. More... | |
| int | NbProc (const Engines::ContainerParameters ¶ms) |
| Engines::ContainerManager_ptr | getContainerManager () |
| Get the container manager. More... | |
| Engines::ResourcesManager_ptr | getResourcesManager () |
| Get the resources manager. More... | |
| SALOME_NamingService * | namingService () |
| get the naming service used by the life cycle More... | |
| CORBA::ORB_ptr | orb () |
| get the orb used by the life cycle More... | |
| void | copyFile (const char *hostSrc, const char *fileSrc, const char *hostDest, const char *fileDest) |
| copy a file from a source host to a destination host More... | |
| void | shutdownServers () |
| shutdown all the SALOME servers except SALOME_Session_Server and omniNames More... | |
Static Public Member Functions | |
| static void | preSet (Engines::ResourceParameters &outparams) |
| Initialisation of a given Engines::ResourceParameters with default values. More... | |
| static void | preSet (Engines::ContainerParameters &outparams) |
| Initialisation of a given Engines::ContainerParameters with default values. More... | |
| static void | killOmniNames () |
| shutdown omniNames More... | |
Protected Member Functions | |
| Engines::EngineComponent_ptr | _FindComponent (const Engines::ContainerParameters ¶ms, const char *componentName, int studyId, const Engines::ResourceList &listOfResources) |
| Establish if a component called "componentName" in a container called "containerName" exists among the list of resources in "listOfMachines". More... | |
| Engines::EngineComponent_ptr | _LoadComponent (const Engines::ContainerParameters ¶ms, const char *componentName, int studyId) |
| Load a component instance. More... | |
Protected Attributes | |
| SALOME_NamingService * | _NS |
| SALOME_NamingService * | _NSnew |
| Engines::ContainerManager_var | _ContManager |
| Engines::ResourcesManager_var | _ResManager |
| SALOME_LifeCycleCORBA::SALOME_LifeCycleCORBA | ( | SALOME_NamingService * | ns = 0 | ) |
|
virtual |
Destructor.
References _NSnew.
|
protected |
Establish if a component called "componentName" in a container called "containerName" exists among the list of resources in "listOfMachines".
Find an already existing and registered component instance.
This method uses Naming Service to find the component.
| params | machine parameters like type or name... |
| componentName | the name of component class |
| studyId | default = 0 : multistudy instance |
| listOfMachines | list of machine address |
References _NS, _ResManager, Engines::ContainerParameters::container_name, NbProc(), and SALOME_NamingService::ResolveComponent().
Referenced by FindComponent(), and FindOrLoad_Component().
|
protected |
Load a component instance.
| params | machine parameters like type or name... |
| componentName | the name of component class |
| studyId | default = 0 : multistudy instance |
References _ContManager, Engines::ContainerParameters::container_name, MESSAGE, Engines::ContainerParameters::mode, and NbProc().
Referenced by FindOrLoad_Component(), and LoadComponent().
| void SALOME_LifeCycleCORBA::copyFile | ( | const char * | hostSrc, |
| const char * | fileSrc, | ||
| const char * | hostDest, | ||
| const char * | fileDest | ||
| ) |
copy a file from a source host to a destination host
| hostSrc | the source host |
| fileSrc | the file to copy from the source host to the destination host |
| hostDest | the destination host |
| fileDest | the destination file |
References getContainerManager(), SALOME_FileTransferCORBA::getLocalFile(), Engines::ResourceParameters::hostname, Engines::ContainerParameters::mode, preSet(), and Engines::ContainerParameters::resource_params.
| Engines::EngineComponent_ptr SALOME_LifeCycleCORBA::FindComponent | ( | const Engines::ContainerParameters & | params, |
| const char * | componentName, | ||
| int | studyId = 0 |
||
| ) |
Find an already existing and registered component instance.
| params | container parameters like type or name... |
| componentName | the name of component class |
| studyId | default = 0 : multistudy instance |
References _FindComponent(), _ResManager, Engines::ResourceParameters::can_run_containers, Engines::ResourceParameters::componentList, isKnownComponentClass(), and Engines::ContainerParameters::resource_params.
| Engines::EngineComponent_ptr SALOME_LifeCycleCORBA::FindOrLoad_Component | ( | const Engines::ContainerParameters & | params, |
| const char * | componentName, | ||
| int | studyId = 0 |
||
| ) |
Find an already existing and registered component instance or load a new component instance on a container defined by its parameters.
| params | container parameters like type or name... |
| componentName | the name of component class |
| studyId | default = 0 : multistudy instance |
References _FindComponent(), _LoadComponent(), _ResManager, Engines::ResourceParameters::can_run_containers, Engines::ResourceParameters::componentList, isKnownComponentClass(), Engines::ResourceParameters::resList, and Engines::ContainerParameters::resource_params.
Referenced by FindOrLoad_Component(), SALOMEDS_DriverFactory_i::GetDriverByType(), main(), TEST_getLifeCycleCORBA(), KernelHelpersUnitTests::TEST_getLifeCycleCORBA(), LifeCycleCORBATest::testFindOrLoad_Component_LaunchContainer(), LifeCycleCORBATest::testFindOrLoad_Component_LaunchContainerHostname(), LifeCycleCORBATest::testFindOrLoad_Component_ParamsContainerName(), LifeCycleCORBATest::testFindOrLoad_Component_ParamsEmpty(), LifeCycleCORBATest::testFindOrLoad_Component_ParamsLocalContainer(), LifeCycleCORBATest::testFindOrLoad_Component_ParamsRemoteComputer(), LifeCycleCORBATest::testFindOrLoad_Component_ParamsRemoteComputer2(), LifeCycleCORBATest::testFindOrLoad_Component_PythonInCppContainer(), LifeCycleCORBATest::testFindOrLoad_Component_PythonSameInstance(), LifeCycleCORBATest::testFindOrLoad_Component_RemoteComputer(), LifeCycleCORBATest::testFindOrLoad_Component_SameContainer(), LifeCycleCORBATest::testFindOrLoad_Component_SameInstance(), LifeCycleCORBATest::testFindOrLoad_Component_UnknownInCatalog(), LifeCycleCORBATest::testFindOrLoad_Component_UnknownMachine(), and SALOMEDSTest::testStudyBuilder().
| Engines::EngineComponent_ptr SALOME_LifeCycleCORBA::FindOrLoad_Component | ( | const char * | containerName, |
| const char * | componentName | ||
| ) |
Find an already existing and registered component instance or load a new component instance on a container defined by name.
| containerName | the name of container, under one of the forms
|
| componentName | the name of component class |
References Engines::ContainerParameters::container_name, FindOrLoad_Component(), Engines::ResourceParameters::hostname, isKnownComponentClass(), Engines::ContainerParameters::isMPI, MESSAGE, preSet(), Engines::ContainerParameters::resource_params, and SCRUTE.
| Engines::ContainerManager_ptr SALOME_LifeCycleCORBA::getContainerManager | ( | ) |
Get the container manager.
References _ContManager.
Referenced by copyFile(), and SALOME_FileTransferCORBA::getLocalFile().
| Engines::ResourcesManager_ptr SALOME_LifeCycleCORBA::getResourcesManager | ( | ) |
Get the resources manager.
References _ResManager.
Referenced by SALOME_FileTransferCORBA::getLocalFile().
Check if the component class is known in module catalog.
| componentName | the name of component class |
References _NS, ASSERT, INFOS, MESSAGE, and SALOME_NamingService::Resolve().
Referenced by FindComponent(), FindOrLoad_Component(), and LoadComponent().
|
static |
shutdown omniNames
References MESSAGE.
| Engines::EngineComponent_ptr SALOME_LifeCycleCORBA::Load_ParallelComponent | ( | const Engines::ContainerParameters & | params, |
| const char * | componentName, | ||
| int | studyId | ||
| ) |
Load a parallel component instance.
| params | machine parameters like type or name... |
| componentName | the name of component class |
| studyId | default = 0 : multistudy instance |
References _ContManager, Engines::ResourceParameters::componentList, INFOS, MESSAGE, Engines::ContainerParameters::mode, and Engines::ContainerParameters::resource_params.
| Engines::EngineComponent_ptr SALOME_LifeCycleCORBA::LoadComponent | ( | const Engines::ContainerParameters & | params, |
| const char * | componentName, | ||
| int | studyId = 0 |
||
| ) |
Load a component instance on a container defined by its parameters.
| params | container parameters like type or name... |
| componentName | the name of component class |
| studyId | default = 0 : multistudy instance |
References _LoadComponent(), _ResManager, Engines::ResourceParameters::can_run_containers, Engines::ResourceParameters::componentList, isKnownComponentClass(), Engines::ResourceParameters::resList, and Engines::ContainerParameters::resource_params.
| SALOME_NamingService * SALOME_LifeCycleCORBA::namingService | ( | ) |
| int SALOME_LifeCycleCORBA::NbProc | ( | const Engines::ContainerParameters & | params | ) |
References Engines::ContainerParameters::isMPI, and Engines::ContainerParameters::nb_proc.
Referenced by _FindComponent(), and _LoadComponent().
| CORBA::ORB_ptr SALOME_LifeCycleCORBA::orb | ( | ) |
get the orb used by the life cycle
References _NS, and SALOME_NamingService::orb().
Referenced by SALOME_LifeCycleCORBA(), and shutdownServers().
|
static |
Initialisation of a given Engines::ResourceParameters with default values.
References Engines::ResourceParameters::can_launch_batch_jobs, Engines::ResourceParameters::can_run_containers, Engines::ResourceParameters::cpu_clock, Engines::ResourceParameters::hostname, Engines::ResourceParameters::mem_mb, Engines::ResourceParameters::name, Engines::ResourceParameters::nb_node, Engines::ResourceParameters::nb_proc, Engines::ResourceParameters::nb_proc_per_node, Engines::ResourceParameters::OS, and Engines::ResourceParameters::policy.
Referenced by copyFile(), FindOrLoad_Component(), SALOME_FileTransferCORBA::getLocalFile(), LifeCycleCORBATest::GetRemoteHost(), preSet(), NamingServiceTest::testBuildContainerNameForNSParams(), NamingServiceTest::testContainerNameParams(), LifeCycleCORBATest::testFindOrLoad_Component_ParamsContainerName(), LifeCycleCORBATest::testFindOrLoad_Component_ParamsEmpty(), LifeCycleCORBATest::testFindOrLoad_Component_ParamsLocalContainer(), LifeCycleCORBATest::testFindOrLoad_Component_ParamsRemoteComputer(), and LifeCycleCORBATest::testFindOrLoad_Component_ParamsRemoteComputer2().
|
static |
Initialisation of a given Engines::ContainerParameters with default values.
References Engines::ContainerParameters::container_name, Engines::ContainerParameters::isMPI, Engines::ContainerParameters::mode, Engines::ContainerParameters::nb_proc, Engines::ContainerParameters::parallelLib, preSet(), Engines::ContainerParameters::resource_params, and Engines::ContainerParameters::workingdir.
| void SALOME_LifeCycleCORBA::shutdownServers | ( | ) |
shutdown all the SALOME servers except SALOME_Session_Server and omniNames
References _NS, Kernel_Utils::GetHostname(), SALOMESDS::DataServerManager::NAME_IN_NS, orb(), and SALOME_NamingService::Resolve().
|
protected |
Referenced by _LoadComponent(), getContainerManager(), Load_ParallelComponent(), and SALOME_LifeCycleCORBA().
|
protected |
Referenced by _FindComponent(), isKnownComponentClass(), namingService(), orb(), SALOME_LifeCycleCORBA(), and shutdownServers().
|
protected |
Referenced by SALOME_LifeCycleCORBA(), and ~SALOME_LifeCycleCORBA().
|
protected |
Referenced by _FindComponent(), FindComponent(), FindOrLoad_Component(), getResourcesManager(), LoadComponent(), and SALOME_LifeCycleCORBA().