X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FLauncher%2FSALOME_Launcher.hxx;h=9fcbc2023bdd0d8fcd1b0cf5f7e7270d189415ff;hb=0f51fb65f0bb9dba3b9b686ed5bd7cc5a0e22229;hp=cf4f5795d56090d8aa3fabeaee867fa486aa49a8;hpb=718e0abe0126e5e53b3ba41fff1028efcf5bc887;p=modules%2Fkernel.git diff --git a/src/Launcher/SALOME_Launcher.hxx b/src/Launcher/SALOME_Launcher.hxx index cf4f5795d..9fcbc2023 100644 --- a/src/Launcher/SALOME_Launcher.hxx +++ b/src/Launcher/SALOME_Launcher.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -25,14 +25,14 @@ #include "SALOME_Launcher_defs.hxx" -#include +#include "SALOME_NamingService.hxx" +#include "SALOMEconfig.h" #include CORBA_CLIENT_HEADER(SALOME_Launcher) #include "Launcher.hxx" #include #include -class SALOME_NamingService; class SALOME_ContainerManager; class SALOME_ResourcesManager; @@ -43,18 +43,22 @@ class SALOMELAUNCHER_EXPORT SALOME_Launcher: public: SALOME_Launcher(CORBA::ORB_ptr orb, PortableServer::POA_var poa); + SALOME_Launcher(CORBA::ORB_ptr orb, PortableServer::POA_var poa, SALOME_NamingService_Abstract *externalNS); virtual ~SALOME_Launcher(); - // Main methods CORBA::Long createJob (const Engines::JobParameters & job_parameters); void launchJob (CORBA::Long job_id); char * getJobState (CORBA::Long job_id); char * getAssignedHostnames (CORBA::Long job_id); // Get names or ids of hosts assigned to the job + void exportInputFiles(CORBA::Long job_id); void getJobResults(CORBA::Long job_id, const char * directory); + void clearJobWorkingDir(CORBA::Long job_id); CORBA::Boolean getJobDumpState(CORBA::Long job_id, const char * directory); CORBA::Boolean getJobWorkFile(CORBA::Long job_id, const char * work_file, const char * directory); void stopJob (CORBA::Long job_id); void removeJob (CORBA::Long job_id); + char * dumpJob(CORBA::Long job_id); + CORBA::Long restoreJob(const char * dumpedJob); // Useful methods CORBA::Long createJobWithFile(const char * xmlExecuteFile, const char * clusterName); @@ -73,24 +77,39 @@ public: // Save and load methods virtual void loadJobs(const char* jobs_file); virtual void saveJobs(const char* jobs_file); - + + void DeclareUsingSalomeSession(); static const char *_LauncherNameInNS; + static JobParameters_cpp + JobParameters_CORBA2CPP(const Engines::JobParameters& job_parameters); + + static Engines::JobParameters_var + JobParameters_CPP2CORBA(const JobParameters_cpp& job_parameters); + protected: // Internal methods virtual void notifyObservers(const std::string & event_name, const std::string & event_data); - + void init(CORBA::ORB_ptr orb, PortableServer::POA_var poa); protected: CORBA::ORB_var _orb; PortableServer::POA_var _poa; SALOME_ContainerManager *_ContManager; SALOME_ResourcesManager *_ResManager; - SALOME_NamingService *_NS; + SALOME_NamingService_Abstract *_NS = nullptr; std::list _observers; Launcher_cpp _l; }; +/*! + * Methods to be used in SSL mode to skip NS. + */ +namespace KERNEL +{ + SALOMELAUNCHER_EXPORT SALOME_Launcher *getLauncherSA(); +} + #endif