#include "SALOME_NamingService.hxx"
#include "SALOME_RessourcesCatalog_impl.hxx"
#include "utilities.h"
-# include "Utils_SINGLETON.hxx"
+
int main(int argc,char **argv)
{
try {
CORBA::ORB_ptr orb = CORBA::ORB_init (argc, argv);
// initialize POA
- //
- long TIMESleep = 250000000;
- int NumberOfTries = 40;
- int a;
- timespec ts_req;
- ts_req.tv_nsec=TIMESleep;
- ts_req.tv_sec=0;
- timespec ts_rem;
- ts_rem.tv_nsec=0;
- ts_rem.tv_sec=0;
- CosNaming::NamingContext_var inc;
- PortableServer::POA_var poa;
- CORBA::Object_var theObj;
- CORBA::Object_var obj;
- CORBA::Object_var object;
- SALOME_Logger::Logger_var log;
- SALOME_NamingService &naming = *SINGLETON_<SALOME_NamingService>::Instance() ;
- int RESSOURCES_CATALOG=0;
- const char * Env = getenv("USE_LOGGER");
- int EnvL =0;
- if ((Env!=NULL) && (strlen(Env)))
- EnvL=1;
- CosNaming::Name name;
- name.length(1);
- name[0].id=CORBA::string_dup("Logger");
- PortableServer::POAManager_var mgr;
- for (int i = 1; i<=NumberOfTries; i++){
- if (i!=1)
- a=nanosleep(&ts_req,&ts_rem);
- try{
- obj = orb->resolve_initial_references("RootPOA");
- if(!CORBA::is_nil(obj))
- poa = PortableServer::POA::_narrow(obj);
- if(!CORBA::is_nil(poa))
- mgr = poa->the_POAManager();
- if(!CORBA::is_nil(orb))
- theObj = orb->resolve_initial_references("NameService");
- if (!CORBA::is_nil(theObj))
- inc = CosNaming::NamingContext::_narrow(theObj);
- }
- catch( CORBA::COMM_FAILURE& )
- {
- MESSAGE( "Ressources Catalog: CORBA::COMM_FAILURE: Unable to contact the Naming Service" )
- }
- if(!CORBA::is_nil(inc)) {
- MESSAGE( "Ressources Catalog: Naming Service was found" )
- if(EnvL==1){
- for(int j=1; j<=NumberOfTries; j++){
- if (j!=1)
- a=nanosleep(&ts_req, &ts_rem);
- try{
- object = inc->resolve(name);
- }
- catch(CosNaming::NamingContext::NotFound){ MESSAGE( "Ressources Catalog: Logger Server wasn't found" ) }
- catch(...){ MESSAGE( "Ressources Catalog: Unknown exception" ) }
- if (!CORBA::is_nil(object))
- log = SALOME_Logger::Logger::_narrow(object);
- if (!CORBA::is_nil(log)){
- MESSAGE( "Ressources Catalog: Loger Server was found" )
- log->ping();
- RESSOURCES_CATALOG=1;
- break;
- }
- }}
- }
- if ((RESSOURCES_CATALOG==1)||((EnvL==0)&&(!CORBA::is_nil(inc))))
- break;
- }
- //
+
+ CORBA::Object_var poaobj = orb->resolve_initial_references ("RootPOA");
+
+ PortableServer::POA_var poa = PortableServer::POA::_narrow (poaobj);
+ PortableServer::POAManager_var mgr = poa->the_POAManager();
+
// Active catalog
-
+
SALOME_RessourcesCatalogImpl* Catalogue_i = new SALOME_RessourcesCatalogImpl(argc, argv);
poa->activate_object (Catalogue_i);
+
mgr->activate();
+
+
CORBA::Object_ptr myCata = Catalogue_i->_this();
// initialise Naming Service