Implements the CosNotifyChannelAdmin::SequenceProxyPushSupplier methods. More...
#include <SequenceProxyPushSupplier.h>


| Public Member Functions | |
| TAO_Notify_SequenceProxyPushSupplier (void) | |
| Constructor. | |
| virtual | ~TAO_Notify_SequenceProxyPushSupplier () | 
| Destructor. | |
| virtual const char * | get_proxy_type_name (void) const | 
| virtual void | load_attrs (const TAO_Notify::NVPList &attrs) | 
| virtual void | validate () | 
| virtual void | configure (TAO_Notify_ConsumerAdmin &admin, CosNotifyChannelAdmin::ProxyID_out proxy_id) | 
| virtual CosNotifyChannelAdmin::ProxyType | MyType (void) | 
| = Servant methods | |
| virtual void | connect_sequence_push_consumer (CosNotifyComm::SequencePushConsumer_ptr push_consumer) | 
| virtual void | disconnect_sequence_push_supplier () | 
| virtual void | release (void) | 
| TAO_Notify_Destroy_Callback methods. | |
| Private Types | |
| typedef TAO_Notify_ProxySupplier_T < POA_CosNotifyChannelAdmin::SequenceProxyPushSupplier > | SuperClass | 
| Friends | |
| class | TAO_Notify_Builder | 
Implements the CosNotifyChannelAdmin::SequenceProxyPushSupplier methods.
Definition at line 46 of file SequenceProxyPushSupplier.h.
| typedef TAO_Notify_ProxySupplier_T<POA_CosNotifyChannelAdmin::SequenceProxyPushSupplier> TAO_Notify_SequenceProxyPushSupplier::SuperClass  [private] | 
Definition at line 49 of file SequenceProxyPushSupplier.h.
| TAO_Notify_SequenceProxyPushSupplier::TAO_Notify_SequenceProxyPushSupplier | ( | void | ) | 
| TAO_Notify_SequenceProxyPushSupplier::~TAO_Notify_SequenceProxyPushSupplier | ( | ) |  [virtual] | 
| void TAO_Notify_SequenceProxyPushSupplier::configure | ( | TAO_Notify_ConsumerAdmin & | admin, | |
| CosNotifyChannelAdmin::ProxyID_out | proxy_id | |||
| ) |  [virtual] | 
Definition at line 108 of file SequenceProxyPushSupplier.cpp.
{
  // Nothing to do.
  // This virtual method was added to support Notification MC
}
| void TAO_Notify_SequenceProxyPushSupplier::connect_sequence_push_consumer | ( | CosNotifyComm::SequencePushConsumer_ptr | push_consumer | ) |  [virtual] | 
Definition at line 29 of file SequenceProxyPushSupplier.cpp.
{
  // Convert Consumer to Base Type
  TAO_Notify_SequencePushConsumer* consumer;
  ACE_NEW_THROW_EX (consumer,
                    TAO_Notify_SequencePushConsumer (this),
                    CORBA::NO_MEMORY ());
  consumer->init (push_consumer);
  this->connect (consumer);
  this->self_change ();
}
| void TAO_Notify_SequenceProxyPushSupplier::disconnect_sequence_push_supplier | ( | void | ) |  [virtual] | 
Definition at line 44 of file SequenceProxyPushSupplier.cpp.
{
  TAO_Notify_SequenceProxyPushSupplier::Ptr guard( this );
  this->destroy ();
  this->self_change ();
}
| const char * TAO_Notify_SequenceProxyPushSupplier::get_proxy_type_name | ( | void | ) | const  [virtual] | 
Implements TAO_Notify_Proxy.
Definition at line 59 of file SequenceProxyPushSupplier.cpp.
{
  return "sequence_proxy_push_supplier";
}
| void TAO_Notify_SequenceProxyPushSupplier::load_attrs | ( | const TAO_Notify::NVPList & | attrs | ) |  [virtual] | 
Definition at line 83 of file SequenceProxyPushSupplier.cpp.
{
  SuperClass::load_attrs(attrs);
  ACE_CString ior;
  if (attrs.load("PeerIOR", ior))
  {
    CORBA::ORB_var orb = TAO_Notify_PROPERTIES::instance()->orb();
    try
    {
      CosNotifyComm::SequencePushConsumer_var pc = CosNotifyComm::SequencePushConsumer::_nil();
      if (ior.length() > 0)
      {
        CORBA::Object_var obj = orb->string_to_object(ior.c_str());
        pc = CosNotifyComm::SequencePushConsumer::_unchecked_narrow(obj.in());
      }
      this->connect_sequence_push_consumer(pc.in());
    }
    catch (const CORBA::Exception&)
    {
      // if we can't reconnect, tough
    }
  }
}
| CosNotifyChannelAdmin::ProxyType TAO_Notify_SequenceProxyPushSupplier::MyType | ( | void | ) |  [virtual] | 
= Servant methods
Definition at line 53 of file SequenceProxyPushSupplier.cpp.
{
  return CosNotifyChannelAdmin::PUSH_SEQUENCE;
}
| void TAO_Notify_SequenceProxyPushSupplier::release | ( | void | ) |  [virtual] | 
TAO_Notify_Destroy_Callback methods.
Definition at line 22 of file SequenceProxyPushSupplier.cpp.
{
  delete this;
  //@@ inform factory
}
| void TAO_Notify_SequenceProxyPushSupplier::validate | ( | ) |  [virtual] | 
Implements TAO_Notify_Proxy.
Definition at line 65 of file SequenceProxyPushSupplier.cpp.
{
  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_SequenceProxyPushSupplier::validate(%d)")
                  ACE_TEXT ("disconnecting \n"), this->id ()));
    }
    this->disconnect_sequence_push_supplier ();
  }
}
| friend class TAO_Notify_Builder  [friend] | 
Definition at line 50 of file SequenceProxyPushSupplier.h.
 1.7.0
 1.7.0