-// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2016 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
#include "Utils_SINGLETON.hxx"
#include "SALOME_NamingService.hxx"
-#include "SALOMEDS_StudyManager_i.hxx"
+#include "SALOMEDS_Study_i.hxx"
#include <SALOMEconfig.h>
#include CORBA_SERVER_HEADER(SALOMEDS)
CORBA::ORB_var orb = CORBA::ORB_init( argc, argv, "omniORB4" ) ;
#else
CORBA::ORB_var orb = CORBA::ORB_init( argc, argv, "omniORB3" );
-#endif
+#endif
+ SALOME_NamingService NS;
// Obtain a reference to the root POA.
long TIMESleep = 500000000;
int NumberOfTries = 40;
if(EnvL==1)
{
CORBA::ORB_var orb1 = CORBA::ORB_init(argc,argv) ;
- SALOME_NamingService &NS = *SINGLETON_<SALOME_NamingService>::Instance() ;
+ NS = *SINGLETON_<SALOME_NamingService>::Instance() ;
NS.init_orb( orb1 ) ;
for(int j=1; j<=NumberOfTries; j++)
{
// We allocate the objects on the heap. Since these are reference
// counted objects, they will be deleted by the POA when they are no
// longer needed.
- SALOMEDS_StudyManager_i * myStudyManager_i = new SALOMEDS_StudyManager_i(orb,poa);
+ SALOMEDS_Study_i * myStudy_i = new SALOMEDS_Study_i(orb);
// Activate the objects. This tells the POA that the objects are
// ready to accept requests.
- PortableServer::ObjectId_var myStudyManager_iid = poa->activate_object(myStudyManager_i);
- myStudyManager_i->register_name("/myStudyManager");
- myStudyManager_i->_remove_ref();
+ PortableServer::ObjectId_var myStudy_iid = poa->activate_object(myStudy_i);
+ SALOMEDS::Study_var Study = myStudy_i->_this();
+ NS.Register(Study.in(), "/Study");
+
+ // Assign the value of the IOR in the study->root
+ CORBA::String_var IORStudy = orb->object_to_string(Study);
+ myStudy_i->GetImpl()->SetTransientReference((char*)IORStudy.in());
+
+ myStudy_i->_remove_ref();
// Obtain a POAManager, and tell the POA to start accepting
// requests on its objects.