#include <Topology_Object.h>
Inheritance diagram for TAO_Notify::Topology_Savable:
Public Member Functions | |
virtual | ~Topology_Savable (void) |
Destructor. | |
virtual void | save_persistent (Topology_Saver &saver)=0 |
virtual void | reconnect (void) |
TAO_Notify::Topology_Savable::~Topology_Savable | ( | void | ) | [virtual] |
Destructor.
void TAO_Notify::Topology_Savable::reconnect | ( | void | ) | [virtual] |
Re-establish connections that we had before a shutdown.
After a topology restore, this method is called so we can reconnect to any external objects with whom we were interacting. We should call the reconnect() method on all of our children to give them the chance to do the same.
Reimplemented in TAO_Notify_Admin, TAO_Notify_EventChannel, and TAO_Notify_EventChannelFactory.
virtual void TAO_Notify::Topology_Savable::save_persistent | ( | Topology_Saver & | saver | ) | [pure virtual] |
Save our state to a Topology_Saver.
Use the methods of a Topology_Saver to store all information we want persisted. This function is called by our parent, which gives us a saver to use. In turn, we must call this function on all of our children. The implementation should look like: bool change = this->self_changed_; this->self_changed_ = false; this->children_changed_ = false; if (is_persistent ()) { bool want_all_children = saver.begin_object( this->id(), type, attrs, change); for all children { if (want_all_children || child.is_changed()) { child.save_persistent(saver); } } for all deleted children { saver.delete_child(child_type, child_id); } saver.end_object(this->id(), type); )
Implemented in TAO_Notify_Admin, TAO_Notify_EventChannel, TAO_Notify_EventChannelFactory, TAO_Notify_EventType, TAO_Notify_EventTypeSeq, TAO_Notify_FilterAdmin, TAO_Notify_Proxy, and TAO_Notify::Reconnection_Registry.