Martin Trappel
2008-01-24 22:51:40 UTC
Hi all.
I'm currently trying to implement a CORBA server that holds a (rel.
small) number of transient objects.
The spec (which I cannot change) for this is such that there is one
master(factory) object through which all other objects are obtained by
(one) client.
When a client does a clean disconnect on the master object I want to
clean up all other objects that reside under this object.
interface IA {};
interface IB {};
interface IMaster {
IA AddA();
IB AddB();
seqence<IA> GetAllA();
seqence<IB> GetAllB();
void Disconnect();
};
With this design my ::IMaster_i needs to hold references to all A and B
Objects it created. Furthermore, on Disconnect() (or destruction through
other means) it has to deactive_object (and destroy) all A and B objects
it created.
* Is there already a wrapper class for such a task (something alike
PortableServer::Servant_var<T>) ?
* If not, is there maybe a good reason for this wrapper class NOT to
exist ?? ... :-)
thanks!
br,
Martin
I'm currently trying to implement a CORBA server that holds a (rel.
small) number of transient objects.
The spec (which I cannot change) for this is such that there is one
master(factory) object through which all other objects are obtained by
(one) client.
When a client does a clean disconnect on the master object I want to
clean up all other objects that reside under this object.
interface IA {};
interface IB {};
interface IMaster {
IA AddA();
IB AddB();
seqence<IA> GetAllA();
seqence<IB> GetAllB();
void Disconnect();
};
With this design my ::IMaster_i needs to hold references to all A and B
Objects it created. Furthermore, on Disconnect() (or destruction through
other means) it has to deactive_object (and destroy) all A and B objects
it created.
* Is there already a wrapper class for such a task (something alike
PortableServer::Servant_var<T>) ?
* If not, is there maybe a good reason for this wrapper class NOT to
exist ?? ... :-)
thanks!
br,
Martin