-# Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-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
"modulePixmap",
"verbose",
"getORB",
- "getNS",
"getLCC",
- "getStudyManager",
"getEngine",
+ "getStudy",
"getEngineIOR",
"findOrCreateComponent",
"getObjectID",
]
+
from omniORB import CORBA
from SALOME_NamingServicePy import SALOME_NamingServicePy_i
from LifeCycleCORBA import LifeCycleCORBA
pass
return __orb__
-###
-# Get naming service instance
-###
-__naming_service__ = None
-def getNS():
- global __naming_service__
- if __naming_service__ is None:
- __naming_service__ = SALOME_NamingServicePy_i( getORB() )
- pass
- return __naming_service__
-
##
# Get life cycle CORBA instance
##
return __lcc__
##
-# Get study manager
-###
-__study_manager__ = None
-def getStudyManager():
- global __study_manager__
- if __study_manager__ is None:
- obj = getNS().Resolve( '/myStudyManager' )
- __study_manager__ = obj._narrow( SALOMEDS.StudyManager )
+# Get study
+###
+__study__ = None
+def getStudy():
+ global __study__
+ if __study__ is None:
+ obj = __engine__.getNamingService().Resolve( '/Study' )
+ __study__ = obj._narrow( SALOMEDS.Study )
pass
- return __study_manager__
+ return __study__
###
# Get PYHELLO engine
def getEngine():
global __engine__
if __engine__ is None:
- __engine__ = getLCC().FindOrLoadComponent( "FactoryServerPy", moduleName() )
+ import KernelBasis
+ if KernelBasis.getSSLMode():
+ import salome
+ import PYHELLO
+ from SALOME_ContainerPy import SALOME_ContainerPy_SSL_i
+ poa = salome.orb.resolve_initial_references("RootPOA")
+ poaManager = poa._get_the_POAManager()
+ poaManager.activate()
+ cpy_i = SALOME_ContainerPy_SSL_i(salome.orb, poa, "FactoryServerPy")
+ cpy_ref = cpy_i._this()
+ __engine__ = PYHELLO.PYHELLO(salome.orb,poa,cpy_ref,"FactoryServerPy", "PYHELLO_inst_2" , moduleName())
+ else:
+ __engine__ = getLCC().FindOrLoadComponent( "FactoryServerPy", moduleName() )
pass
return __engine__
###
# Find or create PYHELLO component object in a study
###
-def findOrCreateComponent( study ):
- father = study.FindComponent( moduleName() )
+def findOrCreateComponent():
+ study = getStudy()
+ father =study.FindComponent( moduleName() )
if father is None:
builder = study.NewBuilder()
father = builder.NewComponent( moduleName() )
###
# Get object's ID
###
-def getObjectID( study, entry ):
+def getObjectID( entry ):
ID = unknownID()
- if study and entry:
+ study = getStudy()
+ if entry:
sobj = study.FindObjectID( entry )
if sobj is not None:
test, anAttr = sobj.FindAttribute( "AttributeLocalID" )