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().