From: rnv Date: Thu, 14 Apr 2022 15:48:33 +0000 (+0300) Subject: #29456 [EDF] (2022-T1) Finalization of SSL implementation X-Git-Tag: V9_9_0b1^2 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=refs%2Fheads%2Frnv%2F29456;p=modules%2Fmed.git #29456 [EDF] (2022-T1) Finalization of SSL implementation --- diff --git a/src/MEDCalc/CMakeLists.txt b/src/MEDCalc/CMakeLists.txt index 7e222f844..4e7afd6fd 100644 --- a/src/MEDCalc/CMakeLists.txt +++ b/src/MEDCalc/CMakeLists.txt @@ -19,7 +19,6 @@ ADD_SUBDIRECTORY(cmp) ADD_SUBDIRECTORY(res) -ADD_SUBDIRECTORY(swig) IF(SALOME_BUILD_GUI) ADD_SUBDIRECTORY(gui) diff --git a/src/MEDCalc/cmp/CMakeLists.txt b/src/MEDCalc/cmp/CMakeLists.txt index 6a518b822..717737e88 100644 --- a/src/MEDCalc/cmp/CMakeLists.txt +++ b/src/MEDCalc/cmp/CMakeLists.txt @@ -52,7 +52,6 @@ SET(COMMON_SOURCES MEDFactory_i.cxx MEDFactory_No_Session_i.cxx MEDFactory_Session_i.cxx - MEDFactory_Component_Generator.cxx ) @@ -68,7 +67,6 @@ SET(MEDEngine_SOURCES MED.cxx MED_Session.cxx MED_No_Session.cxx - MED_Component_Generator.cxx ) SET(COMMON_LIBS diff --git a/src/MEDCalc/cmp/MEDFactoryClient.cxx b/src/MEDCalc/cmp/MEDFactoryClient.cxx index 56bf3bbb3..9fa94f1c5 100644 --- a/src/MEDCalc/cmp/MEDFactoryClient.cxx +++ b/src/MEDCalc/cmp/MEDFactoryClient.cxx @@ -22,7 +22,6 @@ #include #include "MEDFactoryClient.hxx" -#include "MEDFactory_Component_Generator.hxx" namespace MEDFactoryClient { @@ -32,18 +31,9 @@ namespace MEDFactoryClient { MEDCALC::MEDFactory_ptr getFactory() { static MEDCALC::MEDFactory_ptr engine; if(CORBA::is_nil(engine)){ - SALOME_NamingService_Abstract *ns = KERNEL::getNamingService(); - if (dynamic_cast(ns)) { - Engines::EngineComponent_var component = - KERNEL::getLifeCycleCORBA()->FindOrLoad_Component( "FactoryServer","MEDFactory" ); - engine = MEDCALC::MEDFactory::_narrow(component); - } - else { - Engines::EngineComponent_var component = RetrieveMEDFactoryInstance(); - CORBA::Object_var comp2 = CORBA::Object::_narrow(component); - KERNEL::RegisterCompo("MEDFactory", comp2); - engine = MEDCALC::MEDFactory::_narrow(component); - } + Engines::EngineComponent_var component = + KERNEL::getLifeCycleCORBA()->FindOrLoad_Component( "FactoryServer","MEDFactory" ); + engine = MEDCALC::MEDFactory::_narrow(component); } return engine; } diff --git a/src/MEDCalc/cmp/MEDFactory_Component_Generator.cxx b/src/MEDCalc/cmp/MEDFactory_Component_Generator.cxx deleted file mode 100644 index 61f3b5f92..000000000 --- a/src/MEDCalc/cmp/MEDFactory_Component_Generator.cxx +++ /dev/null @@ -1,57 +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 "MEDFactory_Component_Generator.hxx" - -#include "MEDFactory_No_Session_i.hxx" -#include "SALOME_Container_i.hxx" -#include "SALOME_KernelServices.hxx" - -#include - -static Engines::EngineComponent_var _unique_compo; - -Engines::EngineComponent_var RetrieveMEDFactoryInstance() -{ - constexpr char COMPO_NAME[] = "MEDFactory"; - 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(); - // - MEDFactory_No_Session_i *servant = new MEDFactory_No_Session_i(orb, poa, conId, "MEDFactory_inst_2", COMPO_NAME); - PortableServer::ObjectId *zeId = servant->getId(); - CORBA::Object_var zeRef = poa->id_to_reference(*zeId); - KERNEL::RegisterCompo(COMPO_NAME, zeRef); - _unique_compo = Engines::EngineComponent::_narrow(zeRef); - } - return _unique_compo; -} diff --git a/src/MEDCalc/cmp/MEDFactory_Component_Generator.hxx b/src/MEDCalc/cmp/MEDFactory_Component_Generator.hxx deleted file mode 100644 index 664c00f56..000000000 --- a/src/MEDCalc/cmp/MEDFactory_Component_Generator.hxx +++ /dev/null @@ -1,28 +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 "MEDCALC.hxx" - -#include "SALOMEconfig.h" - -#include CORBA_SERVER_HEADER(MED_Gen) - -MEDCALC_EXPORT Engines::EngineComponent_var RetrieveMEDFactoryInstance(); diff --git a/src/MEDCalc/cmp/MED_Component_Generator.cxx b/src/MEDCalc/cmp/MED_Component_Generator.cxx deleted file mode 100644 index 6d1e616f5..000000000 --- a/src/MEDCalc/cmp/MED_Component_Generator.cxx +++ /dev/null @@ -1,57 +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 "MED_Component_Generator.hxx" - -#include "MED_No_Session.hxx" -#include "SALOME_Container_i.hxx" -#include "SALOME_KernelServices.hxx" - -#include - -static Engines::EngineComponent_var _unique_compo; - -Engines::EngineComponent_var RetrieveMEDInstance() -{ - constexpr char COMPO_NAME[]="FIELDS"; - 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(); - // - MED_No_Session *servant = new MED_No_Session(orb, poa, conId, "FIELDS_inst_2", COMPO_NAME); - PortableServer::ObjectId *zeId = servant->getId(); - CORBA::Object_var zeRef = poa->id_to_reference(*zeId); - KERNEL::RegisterCompo(COMPO_NAME,zeRef); - _unique_compo = Engines::EngineComponent::_narrow(zeRef); - } - return _unique_compo; -} diff --git a/src/MEDCalc/cmp/MED_Component_Generator.hxx b/src/MEDCalc/cmp/MED_Component_Generator.hxx deleted file mode 100644 index 8087cc125..000000000 --- a/src/MEDCalc/cmp/MED_Component_Generator.hxx +++ /dev/null @@ -1,28 +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 "MEDCALC.hxx" - -#include "SALOMEconfig.h" - -#include CORBA_SERVER_HEADER(MED_Gen) - -MEDCALC_EXPORT Engines::EngineComponent_var RetrieveMEDInstance(); diff --git a/src/MEDCalc/gui/MEDModule.cxx b/src/MEDCalc/gui/MEDModule.cxx index 78659c775..c71d4bf8a 100644 --- a/src/MEDCalc/gui/MEDModule.cxx +++ b/src/MEDCalc/gui/MEDModule.cxx @@ -51,7 +51,6 @@ #include "MEDFactoryClient.hxx" #include "MEDPresentationManager_i.hxx" -#include "MED_Component_Generator.hxx" #include #include @@ -110,23 +109,14 @@ void MEDModule::init() { // initialize FIELDS module engine (load, if necessary) - Engines::EngineComponent_var comp; - if ( CORBA::is_nil( _MED_engine ) ) { - SALOME_NamingService_Abstract *ns = SalomeApp_Application::namingService(); - if( dynamic_cast(ns) ) - { - comp = SalomeApp_Application::lcc()->FindOrLoad_Component( "FactoryServer", "FIELDS" ); - } - else - { - comp = RetrieveMEDInstance(); - CORBA::Object_var comp2 = CORBA::Object::_narrow(comp); - KERNEL::RegisterCompo("FIELDS",comp2); - } - _MED_engine = MED_ORB::MED_Gen::_narrow( comp ); - if (CORBA::is_nil( _MED_engine )) { - STDLOG("Could not narrow FIELDS engine"); - } + + if (CORBA::is_nil(_MED_engine)) { + Engines::EngineComponent_var comp = + SalomeApp_Application::lcc()->FindOrLoad_Component("FactoryServer", "FIELDS"); + _MED_engine = MED_ORB::MED_Gen::_narrow(comp); + } + if (CORBA::is_nil( _MED_engine )) { + STDLOG("Could not narrow FIELDS engine"); } } diff --git a/src/MEDCalc/swig/CMakeLists.txt b/src/MEDCalc/swig/CMakeLists.txt deleted file mode 100644 index 5037ad917..000000000 --- a/src/MEDCalc/swig/CMakeLists.txt +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright (C) 2012-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(${SWIG_USE_FILE}) - -include_directories( - ${KERNEL_INCLUDE_DIRS} - ${PROJECT_BINARY_DIR}/idl - ${PROJECT_SOURCE_DIR}/src/MEDCalc/cmp -) - -SET(_bin_SCRIPTS - FIELDS_SalomeSessionless.py - MEDFactory_SalomeSessionless.py -) - -# additional preprocessor / compiler flags -ADD_DEFINITIONS(${OMNIORB_DEFINITIONS} ) - -# SWIG wrapping -SET(MedHelper_HEADERS MedHelper.h MedHelper.i) -SET(MedHelper_SOURCES MedHelper.cxx ${MedHelper_HEADERS}) -SET_SOURCE_FILES_PROPERTIES(MedHelper.i PROPERTIES CPLUSPLUS ON) -SET_SOURCE_FILES_PROPERTIES(MedHelper.i PROPERTIES SWIG_FLAGS "-py3") -SET_SOURCE_FILES_PROPERTIES(MedHelper_wrap.cpp PROPERTIES COMPILE_FLAGS "-DHAVE_CONFIG_H") -SET(_swig_SCRIPTS ${CMAKE_CURRENT_BINARY_DIR}/MedHelper.py) -IF(${CMAKE_VERSION} VERSION_LESS "3.8.0") - SWIG_ADD_MODULE(MedHelper python ${MedHelper_SOURCES}) -ELSE() - SWIG_ADD_LIBRARY(MedHelper LANGUAGE python SOURCES ${MedHelper_SOURCES}) -ENDIF() -SWIG_LINK_LIBRARIES(MedHelper ${PYTHON_LIBRARIES} ${PLATFORM_LIBS} FIELDSEngine MEDEngineCommon ${KERNEL_SalomeKernelHelpers} ${KERNEL_SalomeDS} ) -SWIG_CHECK_GENERATION(MedHelper) -IF(WIN32) - SET_TARGET_PROPERTIES(_MedHelper PROPERTIES DEBUG_OUTPUT_NAME _MedHelper_d) -ENDIF(WIN32) -install(TARGETS _MedHelper DESTINATION ${SALOME_INSTALL_LIBS}) -install(FILES ${MedHelper_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS}) -SALOME_INSTALL_SCRIPTS("${_swig_SCRIPTS}" ${SALOME_INSTALL_BINS} EXTRA_DPYS "${SWIG_MODULE_MedHelper_REAL_NAME}") - -SALOME_INSTALL_SCRIPTS("${_bin_SCRIPTS}" ${SALOME_INSTALL_PYTHON} DEF_PERMS) diff --git a/src/MEDCalc/swig/FIELDS_SalomeSessionless.py b/src/MEDCalc/swig/FIELDS_SalomeSessionless.py deleted file mode 100644 index 7647388ca..000000000 --- a/src/MEDCalc/swig/FIELDS_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 MedHelper - med_ior = MedHelper.BuildMEDInstance() - import MED_ORB - import CORBA - orb=CORBA.ORB_init(['']) - med = orb.string_to_object(med_ior) - return med, orb diff --git a/src/MEDCalc/swig/MEDFactory_SalomeSessionless.py b/src/MEDCalc/swig/MEDFactory_SalomeSessionless.py deleted file mode 100644 index fbc0a184f..000000000 --- a/src/MEDCalc/swig/MEDFactory_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 MedHelper - med_field_ior = MedHelper.BuildMEDFactoryInstance() - import MEDCALC - import CORBA - orb=CORBA.ORB_init(['']) - med_factory = orb.string_to_object(med_field_ior) - return med_factory, orb diff --git a/src/MEDCalc/swig/MedHelper.cxx b/src/MEDCalc/swig/MedHelper.cxx deleted file mode 100644 index 8d78add81..000000000 --- a/src/MEDCalc/swig/MedHelper.cxx +++ /dev/null @@ -1,40 +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 "MedHelper.h" - -#include "SALOME_KernelServices.hxx" - -#include "MED_Component_Generator.hxx" -#include "MEDFactory_Component_Generator.hxx" - -std::string BuildMEDInstance() -{ - Engines::EngineComponent_var zeRef = RetrieveMEDInstance(); - CORBA::String_var ior = KERNEL::getORB()->object_to_string(zeRef); - return std::string(ior.in()); -} - -std::string BuildMEDFactoryInstance() -{ - Engines::EngineComponent_var zeRef = RetrieveMEDFactoryInstance(); - CORBA::String_var ior = KERNEL::getORB()->object_to_string(zeRef); - return std::string(ior.in()); -} - diff --git a/src/MEDCalc/swig/MedHelper.h b/src/MEDCalc/swig/MedHelper.h deleted file mode 100644 index d200c3277..000000000 --- a/src/MEDCalc/swig/MedHelper.h +++ /dev/null @@ -1,23 +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 - -std::string BuildMEDInstance(); -std::string BuildMEDFactoryInstance(); diff --git a/src/MEDCalc/swig/MedHelper.i b/src/MEDCalc/swig/MedHelper.i deleted file mode 100644 index fe6f25642..000000000 --- a/src/MEDCalc/swig/MedHelper.i +++ /dev/null @@ -1,28 +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 -// - -%module MedHelper - -%include "std_string.i" - -%inline -{ - std::string BuildMEDInstance(); - std::string BuildMEDFactoryInstance(); -}