X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=bin%2FsalomeConsole.py;h=65248d45c2d4a2755bb505d249c357c8fa12b9e9;hb=6f7c5387e8dc2e7888afb9f8b314a7e2c5f0f387;hp=8a429ddf54c39f36705468c5af08f2bfd7d43e43;hpb=f14439749926cca959747bb79fda10529520bd0b;p=modules%2Fkernel.git diff --git a/bin/salomeConsole.py b/bin/salomeConsole.py index 8a429ddf5..65248d45c 100755 --- a/bin/salomeConsole.py +++ b/bin/salomeConsole.py @@ -1,26 +1,39 @@ #!/usr/bin/env python - -# Copyright (C) 2005 OPEN CASCADE, CEA, EDF R&D, LEG -# PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT +# -*- coding: iso-8859-1 -*- +# Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# # 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. -# -# 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 +# 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 +# +# 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 -# +# + +############################################### +############### IMPORTANT NOTE ################ +############################################### +# The salomeConsole.py script is obsolete. # +# Please consider the new salome launcher. # +############################################### + import os import sys +import glob + #------------------------------- # Python completion and others if you want # You should have set PYTHONSTARTUP env variable @@ -31,73 +44,71 @@ import user #------------------------------- # Get major CORBA objects #------------------------------- -import CORBA +from omniORB import CORBA import CosNaming -# There are cyclic dependencies between Engines, SALOME and SALOMEDS. -# import first Engines, then SALOME and then SALOMEDS -# Or use reload(Engines) to be safe. -import Engines -import SALOME -import SALOMEDS -import SALOME_ModuleCatalog -reload(Engines) -reload(SALOME) -reload(SALOMEDS) +import salome_utils -import LifeCycleCORBA import orbmodule -from runSalome import * -import Utils_Identity -files = glob.glob(os.path.join(os.environ["HOME"],Utils_Identity.getapplipath(),".omni*.cfg")) +def getRunningSession(): + omniorbUserPath = os.getenv("OMNIORB_USER_PATH") + files = glob.glob(os.path.join(omniorbUserPath,".omniORB_"+salome_utils.getUserName()+"_*[!last].cfg")) -filename="" -if len(files)==1: - filename=files[0] -else: - print "You have %d sessions running" % len(files) - for f in files: - print "Session:",f - rep= raw_input("Do you want to connect to this session [y|n]") - if rep == "y": + filename="" + if len(files)==1: + filename=files[0] + else: + print "You have %d sessions running" % len(files) + for f in files: + print "Session:",f + rep= raw_input("Do you want to connect to this session [y|n]") + if rep == "y": filename=f break - -if filename != "": - os.environ['OMNIORB_CONFIG']=filename -else: - rep= raw_input("Do you want to try a local session on port 2810 ? [y|n]") - if rep == "y": - # Try a local session running on port 2810 - sys.argv=sys.argv+['-ORBInitRef','NameService=corbaname::localhost:2810'] - else: - sys.exit(1) - -print sys.argv -#direct adress from clt.orb.object_to_string(clt.rootContext) -#sys.argv=sys.argv+['-ORBInitRef','NameService=IOR:010000000100000000000000010000000000000023000000010100000a0000006c6f63616c686f737400fa0a0b0000004e616d6553657276696365'] + if filename != "": + os.environ['OMNIORB_CONFIG']=filename + else: + rep= raw_input("Do you want to try a local session on port 2810 ? [y|n]") + if rep == "y": + # Try a local session running on port 2810 + sys.argv=sys.argv+['-ORBInitRef','NameService=corbaname::localhost:2810'] + else: + sys.exit(1) +# class client(orbmodule.client): - def initNS(self,args): - # Obtain a reference to the root naming context - obj = self.orb.resolve_initial_references("NameService") - try: - self.rootContext = obj._narrow(CosNaming.NamingContext) - return - except (CORBA.TRANSIENT,CORBA.OBJECT_NOT_EXIST,CORBA.COMM_FAILURE): - print "It's not a valid naming service" - self.rootContext = None - raise + def initNS(self,args): + # Obtain a reference to the root naming context + obj = self.orb.resolve_initial_references("NameService") + try: + self.rootContext = obj._narrow(CosNaming.NamingContext) + return + except (CORBA.TRANSIENT,CORBA.OBJECT_NOT_EXIST,CORBA.COMM_FAILURE): + print "It's not a valid naming service" + self.rootContext = None + raise +# + +def startClient(): + try: + clt=client() + except Exception: + sys.exit(1) + # + print "Naming Service address: ",clt.orb.object_to_string(clt.rootContext) -clt=client() -print "Naming Service address: ",clt.orb.object_to_string(clt.rootContext) + clt.showNS() -clt.showNS() + session_server = clt.Resolve('/Kernel/Session') + if session_server: + session=clt.waitNS("/Kernel/Session") + catalog=clt.waitNS("/Kernel/ModulCatalog") + studyMgr=clt.waitNS("/myStudyManager") + import salome + salome.salome_init() + from salome import lcc +# -session=clt.waitNS("/Kernel/Session") -catalog=clt.waitNS("/Kernel/ModulCatalog") -studyMgr=clt.waitNS("/myStudyManager") -import salome -salome.salome_init() -from salome import lcc +getRunningSession() +startClient()