CORBA::ImplementationDef_ptr CORBA::ImplRepository::create(ImplementationDef::ActivationMode Mode, ImplementationDef::ObjectInfoList &ListeInformations, char *NomService, char *Commande);
#include <corba.h>
#include <oad_c.hh>
#include <impldef_c.hh>
CORBA::ORB_ptr pOrb;
CORBA::ImplRepository_ptr pImplRepository;
CORBA::ImplementationDef::ObjectInfoList *pObjectInfoList;
char NomService[256];
char Commande[256];
CORBA::ImplementationDef_ptr pImplementationDef;
...
pImplRepository=CORBA::ImplRepository::_narrow(pOrb->resolve_initial_references("ImplementationRepository"));
...
pObjectInfoList=new CORBA::ImplementationDef::ObjectInfoList();
pObjectInfoList->length(1);
(*pObjectInfoList)[0].repoid=CORBA::string_dup("IDL:MonService:1.0");
(*pObjectInfoList)[0].tag=*CORBA::ORB::string_to_tag("POA");
...
if (!pImplRepository->create(CORBA::ImplementationDef::ActivatePOA, *pObjectInfoList, NomService, Commande))
{
...
}
pImplDefSeq=pImplRepository->find_by_repoid("IDL:MonService:1.0");
...
pImplRepository->destroy((*pImplDefSeq)[0]);
...
CORBA::ImplRepository::find_by_repoid pour chercher un service.