From feaddec0f36bb3249ae81d7142dd8675169ceae8 Mon Sep 17 00:00:00 2001 From: rnv Date: Thu, 14 Apr 2022 19:01:10 +0300 Subject: [PATCH] #29456 [EDF] (2022-T1) Finalization of SSL implementation --- src/CMakeLists.txt | 1 - src/SMESHClient/SMESH_Client.cxx | 42 +++++------- src/SMESHGUI/SMESHGUI.cxx | 1 - src/SMESH_I/CMakeLists.txt | 2 - src/SMESH_I/SMESH_Component_Generator.cxx | 64 ------------------- src/SMESH_I/SMESH_Component_Generator.hxx | 29 --------- src/SMESH_SWIG/SMeshHelper.cxx | 10 --- src/SMESH_SWIG/SMeshHelper.h | 2 - src/SMESH_SWIG/SMeshHelper.i | 5 -- src/SalomeSessionless/CMakeLists.txt | 25 -------- .../MeshJobManager_SalomeSessionless.py | 28 -------- .../SMESH_SalomeSessionless.py | 28 -------- 12 files changed, 16 insertions(+), 221 deletions(-) delete mode 100644 src/SMESH_I/SMESH_Component_Generator.cxx delete mode 100644 src/SMESH_I/SMESH_Component_Generator.hxx delete mode 100644 src/SalomeSessionless/CMakeLists.txt delete mode 100644 src/SalomeSessionless/MeshJobManager_SalomeSessionless.py delete mode 100644 src/SalomeSessionless/SMESH_SalomeSessionless.py diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c38097315..f63de3a1d 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -40,7 +40,6 @@ SET(SUBDIRS_COMMON StdMeshers_I SMESH_PY Tools - SalomeSessionless ) IF(SALOME_SMESH_ENABLE_MEFISTO) diff --git a/src/SMESHClient/SMESH_Client.cxx b/src/SMESHClient/SMESH_Client.cxx index 6e0c37a5a..4370946ae 100644 --- a/src/SMESHClient/SMESH_Client.cxx +++ b/src/SMESHClient/SMESH_Client.cxx @@ -28,7 +28,6 @@ #include "SMESHDS_Mesh.hxx" #include "SMESHDS_Script.hxx" #include "SMESH_Mesh.hxx" -#include "SMESH_Component_Generator.hxx" #include "SALOME_NamingService.hxx" #include "SALOME_Fake_NamingService.hxx" @@ -790,39 +789,30 @@ SMESH_Client::GetSMESHGen(CORBA::ORB_ptr theORB, if(CORBA::is_nil(aMeshGen.in())) { - Engines::EngineComponent_var isCompoInSSLMode = GetSMESHInstanceHasThis(); - if( CORBA::is_nil(isCompoInSSLMode) ) - { #ifdef WIN32 - long aClientPID = (long)_getpid(); + long aClientPID = (long)_getpid(); #else - long aClientPID = (long)getpid(); + long aClientPID = (long)getpid(); #endif - std::unique_ptr aNamingService; - if(getSSLMode()) - { - aNamingService.reset(new SALOME_Fake_NamingService); - } - else - { - aNamingService.reset(new SALOME_NamingService(theORB)); - } - SALOME_LifeCycleCORBA aLifeCycleCORBA(aNamingService.get()); - Engines::EngineComponent_var aComponent = aLifeCycleCORBA.FindOrLoad_Component("FactoryServer","SMESH"); - aMeshGen = SMESH::SMESH_Gen::_narrow(aComponent); - - std::string aClientHostName = Kernel_Utils::GetHostname(); - Engines::Container_var aServerContainer = aMeshGen->GetContainerRef(); - CORBA::String_var aServerHostName = aServerContainer->getHostName(); - CORBA::Long aServerPID = aServerContainer->getPID(); - aMeshGen->SetEmbeddedMode((aClientPID == aServerPID) && (aClientHostName == aServerHostName.in())); + std::unique_ptr aNamingService; + if(getSSLMode()) + { + aNamingService.reset(new SALOME_Fake_NamingService); } else { - aMeshGen = SMESH::SMESH_Gen::_narrow(isCompoInSSLMode); + aNamingService.reset(new SALOME_NamingService(theORB)); } - + SALOME_LifeCycleCORBA aLifeCycleCORBA(aNamingService.get()); + Engines::EngineComponent_var aComponent = aLifeCycleCORBA.FindOrLoad_Component("FactoryServer","SMESH"); + aMeshGen = SMESH::SMESH_Gen::_narrow(aComponent); + + std::string aClientHostName = Kernel_Utils::GetHostname(); + Engines::Container_var aServerContainer = aMeshGen->GetContainerRef(); + CORBA::String_var aServerHostName = aServerContainer->getHostName(); + CORBA::Long aServerPID = aServerContainer->getPID(); + aMeshGen->SetEmbeddedMode((aClientPID == aServerPID) && (aClientHostName == aServerHostName.in())); } theIsEmbeddedMode = aMeshGen->IsEmbeddedMode(); return aMeshGen; diff --git a/src/SMESHGUI/SMESHGUI.cxx b/src/SMESHGUI/SMESHGUI.cxx index 7023bf427..ed5652524 100644 --- a/src/SMESHGUI/SMESHGUI.cxx +++ b/src/SMESHGUI/SMESHGUI.cxx @@ -109,7 +109,6 @@ #include "SMESH_ControlsDef.hxx" #include "SMESH_ScalarBarActor.h" #include "SMESH_TypeFilter.hxx" -#include "SMESH_Component_Generator.hxx" // SALOME GUI includes #include diff --git a/src/SMESH_I/CMakeLists.txt b/src/SMESH_I/CMakeLists.txt index 0ce820e3a..fb7318601 100644 --- a/src/SMESH_I/CMakeLists.txt +++ b/src/SMESH_I/CMakeLists.txt @@ -113,7 +113,6 @@ SET(SMESHEngine_HEADERS SMESH_PreMeshInfo.hxx SMESH_MeshPartDS.hxx SMESH.hxx - SMESH_Component_Generator.hxx MG_ADAPT_i.hxx SMESH_Homard_i.hxx ) @@ -143,7 +142,6 @@ SET(SMESHEngine_SOURCES SMESH_NoteBook.cxx SMESH_Measurements_i.cxx SMESH_PreMeshInfo.cxx - SMESH_Component_Generator.cxx MG_ADAPT_i.cxx SMESH_Homard_i.cxx ) diff --git a/src/SMESH_I/SMESH_Component_Generator.cxx b/src/SMESH_I/SMESH_Component_Generator.cxx deleted file mode 100644 index 0a1a1d9c2..000000000 --- a/src/SMESH_I/SMESH_Component_Generator.cxx +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright (C) 2021 CEA/DEN, EDF R&D, OPEN CASCADE -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// - -#include "SMESH_Component_Generator.hxx" - -#include "SMESH_Gen_No_Session_i.hxx" -#include "SALOME_Container_i.hxx" -#include "SALOME_KernelServices.hxx" - -#include "SALOME_Fake_NamingService.hxx" - -#include - -static Engines::EngineComponent_var _unique_compo; - -Engines::EngineComponent_var RetrieveSMESHInstance() -{ - if (CORBA::is_nil(_unique_compo)) - { - CORBA::ORB_var orb; - { - int argc(0); - orb = CORBA::ORB_init(argc, nullptr); - } - CORBA::Object_var obj = orb->resolve_initial_references("RootPOA"); - PortableServer::POA_var poa = PortableServer::POA::_narrow(obj); - PortableServer::POAManager_var pman = poa->the_POAManager(); - CORBA::PolicyList policies; - policies.length(0); - auto *cont(KERNEL::getContainerSA()); - PortableServer::ObjectId *conId(cont->getCORBAId()); - // - pman->activate(); - // - SMESH_Gen_i::SetNS(new SALOME_Fake_NamingService); - // - SMESH_Gen_No_Session_i *servant = new SMESH_Gen_No_Session_i(orb, poa, conId, "SMESH_inst_2", "SMESH"); - PortableServer::ObjectId *zeId = servant->getId(); - CORBA::Object_var zeRef = poa->id_to_reference(*zeId); - _unique_compo = Engines::EngineComponent::_narrow(zeRef); - } - return _unique_compo; -} - -Engines::EngineComponent_var GetSMESHInstanceHasThis() -{ - return _unique_compo; -} diff --git a/src/SMESH_I/SMESH_Component_Generator.hxx b/src/SMESH_I/SMESH_Component_Generator.hxx deleted file mode 100644 index db796a531..000000000 --- a/src/SMESH_I/SMESH_Component_Generator.hxx +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (C) 2021 CEA/DEN, EDF R&D, OPEN CASCADE -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// - -#pragma once - -#include "SMESH.hxx" - -#include "SALOMEconfig.h" - -#include CORBA_SERVER_HEADER(SMESH_Gen) - -SMESH_I_EXPORT Engines::EngineComponent_var RetrieveSMESHInstance(); -SMESH_I_EXPORT Engines::EngineComponent_var GetSMESHInstanceHasThis(); diff --git a/src/SMESH_SWIG/SMeshHelper.cxx b/src/SMESH_SWIG/SMeshHelper.cxx index 92991e20c..c053da46e 100644 --- a/src/SMESH_SWIG/SMeshHelper.cxx +++ b/src/SMESH_SWIG/SMeshHelper.cxx @@ -21,21 +21,11 @@ #include "SALOME_KernelServices.hxx" -#include "SMESH_Component_Generator.hxx" - #include #include #include - -std::string BuildSMESHInstanceInternal() -{ - Engines::EngineComponent_var zeRef = RetrieveSMESHInstance(); - CORBA::String_var ior = KERNEL::getORB()->object_to_string(zeRef); - return std::string(ior.in()); -} - std::string GetMGLicenseKeyImpl(const char* gmfFile) { smIdType nbVertex, nbEdge, nbFace, nbVol; diff --git a/src/SMESH_SWIG/SMeshHelper.h b/src/SMESH_SWIG/SMeshHelper.h index 9c912869e..009217d4a 100644 --- a/src/SMESH_SWIG/SMeshHelper.h +++ b/src/SMESH_SWIG/SMeshHelper.h @@ -21,6 +21,4 @@ #include -std::string BuildSMESHInstanceInternal(); - std::string GetMGLicenseKeyImpl(const char* gmfFile); diff --git a/src/SMESH_SWIG/SMeshHelper.i b/src/SMESH_SWIG/SMeshHelper.i index d1220cb90..0bc9be162 100644 --- a/src/SMESH_SWIG/SMeshHelper.i +++ b/src/SMESH_SWIG/SMeshHelper.i @@ -27,11 +27,6 @@ %inline { - std::string BuildSMESHInstance() - { - return BuildSMESHInstanceInternal(); - } - std::string GetMGLicenseKey(const char* gmfFile) { return GetMGLicenseKeyImpl( gmfFile ); diff --git a/src/SalomeSessionless/CMakeLists.txt b/src/SalomeSessionless/CMakeLists.txt deleted file mode 100644 index dc1c5dc95..000000000 --- a/src/SalomeSessionless/CMakeLists.txt +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright (C) 2021 CEA/DEN, EDF R&D, OPEN CASCADE -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# - -SET(_bin_SCRIPTS - SMESH_SalomeSessionless.py - MeshJobManager_SalomeSessionless.py -) - -SALOME_INSTALL_SCRIPTS("${_bin_SCRIPTS}" ${SALOME_INSTALL_PYTHON} DEF_PERMS) diff --git a/src/SalomeSessionless/MeshJobManager_SalomeSessionless.py b/src/SalomeSessionless/MeshJobManager_SalomeSessionless.py deleted file mode 100644 index 50f5d1fab..000000000 --- a/src/SalomeSessionless/MeshJobManager_SalomeSessionless.py +++ /dev/null @@ -1,28 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2021 CEA/DEN, EDF R&D, OPEN CASCADE -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# - -def buildInstance(orb): - import SMeshPadderHelper - padder_ior = SMeshPadderHelper.BuildPadderMeshJobManagerInstance() - import MESHJOB - import CORBA - orb=CORBA.ORB_init(['']) - padderInst = orb.string_to_object(padder_ior) - return padderInst, orb diff --git a/src/SalomeSessionless/SMESH_SalomeSessionless.py b/src/SalomeSessionless/SMESH_SalomeSessionless.py deleted file mode 100644 index d4676dee9..000000000 --- a/src/SalomeSessionless/SMESH_SalomeSessionless.py +++ /dev/null @@ -1,28 +0,0 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2021 CEA/DEN, EDF R&D, OPEN CASCADE -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# - -def buildInstance(orb): - import SMeshHelper - smesh_ior = SMeshHelper.BuildSMESHInstance() - import SMESH - import CORBA - orb=CORBA.ORB_init(['']) - smeshInst = orb.string_to_object(smesh_ior) - return smeshInst, orb