X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=bin%2Forbmodule.py;h=52e1b5ef5c9d82517bbceec8c666751e22f9756c;hb=bcf58b30551454184d067e79443e6358afb70618;hp=9f3c66324b7852108f47dfa85faaa4af3d2877e5;hpb=f14439749926cca959747bb79fda10529520bd0b;p=modules%2Fkernel.git diff --git a/bin/orbmodule.py b/bin/orbmodule.py index 9f3c66324..52e1b5ef5 100755 --- a/bin/orbmodule.py +++ b/bin/orbmodule.py @@ -1,25 +1,35 @@ -# 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-2011 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 +# 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 +# +# 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 # + +## @package orbmodule +# \brief Module that provides a client for %SALOME +# + import sys,os,time import string from nameserver import * from omniORB import CORBA +from launchConfigureParser import verbose # Import the stubs for the Naming service import CosNaming @@ -28,6 +38,7 @@ import CosNaming # ----------------------------------------------------------------------------- class client: + """Client for SALOME""" def __init__(self,args=None): #set GIOP message size for bug 10560: impossible to get field values in TUI mode @@ -47,14 +58,20 @@ class client: return except (CORBA.TRANSIENT,CORBA.OBJECT_NOT_EXIST,CORBA.COMM_FAILURE): self.rootContext = None - print "Launch Naming Service++", + if verbose(): print "Launch Naming Service++", # On lance le Naming Server (doit etre dans le PATH) - NamingServer(args).run() + test = True + if args['wake_up_session']: + test = False + pass + if test: + NamingServer(args).run() + pass print "Searching Naming Service ", ncount=0 delta=0.1 - while(ncount < 10): + while(ncount < 100): ncount += 1 try: obj = self.orb.resolve_initial_references("NameService") @@ -89,7 +106,7 @@ class client: # -------------------------------------------------------------------------- def showNS(self): - """ Show the content of NS""" + """ Show the content of SALOME naming service """ self.showNScontext(self.rootContext) # -------------------------------------------------------------------------- @@ -117,13 +134,13 @@ class client: # -------------------------------------------------------------------------- - def waitNS(self,name,typobj=None,maxcount=60): + def waitNS(self,name,typobj=None,maxcount=240): count=0 delta=0.5 print "Searching %s in Naming Service " % name, while(1): count += 1 - if count > maxcount : raise "Impossible de trouver %s" % name + if count > maxcount : raise RuntimeError, "Impossible de trouver %s" % name obj=self.Resolve(name) if obj : print " found in %s seconds " % ((count-1)*delta) @@ -150,7 +167,7 @@ class client: try: os.kill(thePID,0) except: - raise "Process %d for %s not found" % (thePID,theName) + raise RuntimeError, "Process %d for %s not found" % (thePID,theName) aCount += 1 anObj = self.Resolve(theName) if anObj: @@ -198,7 +215,7 @@ class client: print "Searching %s in Naming Service " % name, while(1): count += 1 - if count > maxcount : raise "Impossible de trouver %s" % name + if count > maxcount : raise RuntimeError, "Impossible de trouver %s" % name obj=self.ResolveLogger(name) if obj : print " found in %s seconds " % ((count-1)*delta)