PortableServer::POA_ptr poa,
char *containerName ,
int argc , char* argv[],
- bool activAndRegist ) :
- _numInstance(0)
+ bool activAndRegist,
+ bool isServantAloneInProcess
+ ) :
+ _numInstance(0),_isServantAloneInProcess(isServantAloneInProcess)
{
_pid = (long)getpid();
_NS->Destroy_Name(_containerName.c_str());
//_remove_ref();
//_poa->deactivate_object(*_id);
- _orb->shutdown(0);
+ if(_isServantAloneInProcess)
+ _orb->shutdown(0);
}
//! Kill current container
PortableServer::POA_ptr poa,
char * containerName ,
int argc, char* argv[],
- bool activAndRegist = true);
+ bool activAndRegist = true,
+ bool isServantAloneInProcess = true);
virtual ~Engines_Container_i();
int _argc ;
char** _argv ;
long _pid;
-
+ bool _isServantAloneInProcess;
};
#endif
}
Engines_Container_i * myContainer
- = new Engines_Container_i(_orb, factory_poa, containerName , argc , argv );
+ = new Engines_Container_i(_orb, factory_poa, containerName , argc , argv , true , false);
}
catch(CORBA::SystemException&)
{