]> SALOME platform Git repositories - modules/kernel.git/commitdiff
Salome HOME
Merge branch 'V9_5_BR'
authorvsr <vsr@opencascade.com>
Fri, 10 Jul 2020 15:31:36 +0000 (18:31 +0300)
committervsr <vsr@opencascade.com>
Fri, 10 Jul 2020 15:31:53 +0000 (18:31 +0300)
CMakeLists.txt
src/KERNEL_PY/__init__.py
src/ResourcesManager/SALOME_ResourcesManager_Common.cxx

index 3c0ff42850638d064b1a55527dadd4e8380a748e..a44b20b02d8390e7cc7be958f104570c8e465eac 100755 (executable)
@@ -31,7 +31,7 @@ SET(${PROJECT_NAME_UC}_MINOR_VERSION 5)
 SET(${PROJECT_NAME_UC}_PATCH_VERSION 0)
 SET(${PROJECT_NAME_UC}_VERSION
   ${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION})
-SET(${PROJECT_NAME_UC}_VERSION_DEV 0)
+SET(${PROJECT_NAME_UC}_VERSION_DEV 1)
 
 # Common CMake macros
 # ===================
index ebcd0080bfe0c00a467c9b58eff750e533228371..4ee3b78c5f5aabdbad87fc82d6576cf8dac2199b 100644 (file)
@@ -220,6 +220,49 @@ def salome_close():
     myStudy, myStudyName = None, None
     pass
 
+def salome_NS():
+    import CORBA
+    import CosNaming
+    orb = CORBA.ORB_init()
+    ns0 = orb.resolve_initial_references("NameService")
+    return ns0._narrow(CosNaming.NamingContext)
+
+def salome_walk_on_containers(ns,root):
+    import CosNaming
+    it = ns.list(0)[1]
+    if not it:
+        return
+    cont = True
+    while cont:
+        cont,obj = it.next_one()
+        if cont:
+            if obj.binding_name[0].kind == "object":
+                import Engines
+                corbaObj = ns.resolve(obj.binding_name)
+                if isinstance(corbaObj,Engines._objref_Container):
+                    yield corbaObj,(root,obj.binding_name[0].id)
+            else:
+                father = ns.resolve([obj.binding_name[0]])
+                for elt,elt2 in salome_walk_on_containers(father,root+[obj.binding_name[0].id]):
+                    yield elt,elt2
+            pass
+        pass
+    pass
+
+def salome_shutdown_containers():
+    salome_init()
+    ns=salome_NS()
+    li = [elt for elt in salome_walk_on_containers(ns,[""])]
+    print("Number of containers in NS : {}".format(len(li)))
+    for cont,(root,cont_name) in li:
+        try:
+            cont.Shutdown()
+        except:
+            pass
+        ref_in_ns = "/".join(root+[cont_name])
+        naming_service.Destroy_Name(ref_in_ns)
+    print("Number of containers in NS after clean : {}".format( len( list(salome_walk_on_containers(ns,[""])) )))
+
 
 #to expose all objects to pydoc
 __all__=dir()
index 786c2dc17ad51dd02ccf6a75d2f1cc88b1cde7e6..99a05b63b7a0e2d41fb6de03ad9e7b809b746a36 100644 (file)
@@ -97,6 +97,7 @@ ParserResourcesType resourceDefinition_CORBAtoCPP(const Engines::ResourceDefinit
   resource.setResourceTypeStr(resDef.type.in());
   resource.OS = resDef.OS;
   resource.AppliPath = resDef.applipath;
+  resource.DataForSort._Name = resDef.name;
   resource.DataForSort._memInMB = resDef.mem_mb;
   resource.DataForSort._CPUFreqMHz = resDef.cpu_clock;
   resource.DataForSort._nbOfNodes = resDef.nb_node;