1 # SALOME Logger : CORBA server managing trace output
3 # Copyright (C) 2003 CEA/DEN, EDF R&D
7 # File : SALOME_Trace.py
12 from omniORB import CORBA
18 if (os.environ["SALOME_trace"] == "with_logger"):
23 self.m_pInterfaceLogger = None
27 while steps > 0 and ok == 0:
30 orb = CORBA.ORB_init(sys.argv, CORBA.ORB_ID)
31 theObj = orb.resolve_initial_references("NameService")
32 inc = theObj._narrow(CosNaming.NamingContext)
33 name = [CosNaming.NameComponent("Logger","")]
34 obj = inc.resolve(name);
36 self.m_pInterfaceLogger = obj._narrow(SALOME_Logger.Logger)
38 if not self.m_pInterfaceLogger is None:
41 except CosNaming.NamingContext.NotFound, e :
42 if steps == 1: print "Caught exception: Naming Service can't found Logger"
43 except CORBA.COMM_FAILURE, e:
44 if steps == 1: print "Caught CORBA::SystemException CommFailure"
45 except CORBA.SystemException, e:
46 if steps == 1: print "Caught CORBA::SystemException."
47 except CORBA.Exception, e:
48 if steps == 1: print "Caught CORBA::Exception."
50 if steps == 1: print "Caught unknown exception."
56 def putMessage ( self, LogMsg ) :
58 if (CORBA.is_nil(self.m_pInterfaceLogger)):
61 self.m_pInterfaceLogger.putMessage (LogMsg)