From 034146542e4abef011c75bcbc0995b8e0646d76c Mon Sep 17 00:00:00 2001 From: Anthony Geay Date: Mon, 16 Aug 2021 17:21:48 +0200 Subject: [PATCH] PYHELLO is callable with pyhello=salome.lcc.FindOrLoadComponent(FactoryServerPy, PYHELLO) in SSL mode --- src/PYHELLO/CMakeLists.txt | 1 + src/PYHELLO/PYHELLO_SalomeSessionless.py | 42 ++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 src/PYHELLO/PYHELLO_SalomeSessionless.py diff --git a/src/PYHELLO/CMakeLists.txt b/src/PYHELLO/CMakeLists.txt index 8229025..3041e9b 100644 --- a/src/PYHELLO/CMakeLists.txt +++ b/src/PYHELLO/CMakeLists.txt @@ -23,6 +23,7 @@ SET(_bin_SCRIPTS PYHELLO.py PYHELLO_utils.py + PYHELLO_SalomeSessionless.py ) # --- rules --- diff --git a/src/PYHELLO/PYHELLO_SalomeSessionless.py b/src/PYHELLO/PYHELLO_SalomeSessionless.py new file mode 100644 index 0000000..6d8da44 --- /dev/null +++ b/src/PYHELLO/PYHELLO_SalomeSessionless.py @@ -0,0 +1,42 @@ +# -*- coding: iso-8859-1 -*- +# Copyright (C) 2021 CEA/DEN, EDF R&D +# +# 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 KernelBasis + KernelBasis.setSSLMode(True) + from PYHELLO import PYHELLO + from SALOME_ContainerPy import SALOME_ContainerPy_SSL_i + import PortableServer + import KernelServices + obj = orb.resolve_initial_references("RootPOA") + poa = obj._narrow(PortableServer.POA) + pman = poa._get_the_POAManager() + # + cont = SALOME_ContainerPy_SSL_i(orb,poa,"FactoryServer") + conId = poa.activate_object(cont) + conObj = poa.id_to_reference(conId) + # + pman.activate() + # + compoName = "PYHELLO" + servant = PYHELLO(orb,poa,conObj,"FactoryServer","PYHELLO_inst_1",compoName) + ret = servant.getCorbaRef() + KernelServices.RegisterCompo(compoName,ret) + return ret, orb -- 2.30.2