summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Notify/Any/ProxyPushSupplier.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Notify/Any/ProxyPushSupplier.cpp')
-rw-r--r--TAO/orbsvcs/orbsvcs/Notify/Any/ProxyPushSupplier.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Notify/Any/ProxyPushSupplier.cpp b/TAO/orbsvcs/orbsvcs/Notify/Any/ProxyPushSupplier.cpp
index 02cb590b026..3f2686319fa 100644
--- a/TAO/orbsvcs/orbsvcs/Notify/Any/ProxyPushSupplier.cpp
+++ b/TAO/orbsvcs/orbsvcs/Notify/Any/ProxyPushSupplier.cpp
@@ -61,6 +61,23 @@ TAO_Notify_ProxyPushSupplier::get_proxy_type_name (void) const
}
void
+TAO_Notify_ProxyPushSupplier::validate ()
+{
+ TAO_Notify_Consumer* con = this->consumer ();
+ if (con != 0 && ! con->is_alive (true))
+ {
+ if (TAO_debug_level > 0)
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT ("(%P|%t) TAO_Notify_ProxyPushSupplier::validate(%d)")
+ ACE_TEXT ("disconnecting \n"), this->id ()));
+ }
+
+ this->disconnect_push_supplier ();
+ }
+}
+
+void
TAO_Notify_ProxyPushSupplier::load_attrs (const TAO_Notify::NVPList& attrs)
{
SuperClass::load_attrs(attrs);