Public Member Functions | Protected Member Functions | Protected Attributes

TAO_Notify_ProxySupplier_T< SERVANT_TYPE > Class Template Reference

#include <ProxySupplier_T.h>

Inheritance diagram for TAO_Notify_ProxySupplier_T< SERVANT_TYPE >:
Inheritance graph
[legend]
Collaboration diagram for TAO_Notify_ProxySupplier_T< SERVANT_TYPE >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 TAO_Notify_ProxySupplier_T (void)
 Constructor.
 ~TAO_Notify_ProxySupplier_T ()
 Destructor.
virtual void admin_types_changed (const CosNotification::EventTypeSeq &added, const CosNotification::EventTypeSeq &removed)
 Notification of subscriptions set at the admin.
virtual void forward_structured (const CosNotification::StructuredEvent &event)
virtual void forward_structured_no_filtering (const CosNotification::StructuredEvent &event)
 POA_Notify_Internal::Event_Forwarder method.
virtual void forward_any (const CORBA::Any &event)
 POA_Notify_Internal::Event_Forwarder method.
virtual void forward_any_no_filtering (const CORBA::Any &event)
 POA_Notify_Internal::Event_Forwarder method.

Protected Member Functions

virtual
CosNotifyChannelAdmin::ConsumerAdmin_ptr 
MyAdmin ()
virtual void suspend_connection ()
virtual void resume_connection ()
virtual
CosNotifyFilter::MappingFilter_ptr 
priority_filter ()
virtual void priority_filter (CosNotifyFilter::MappingFilter_ptr priority_filter)
virtual
CosNotifyFilter::MappingFilter_ptr 
lifetime_filter ()
virtual void lifetime_filter (CosNotifyFilter::MappingFilter_ptr lifetime_filter)
virtual
CosNotification::EventTypeSeq
obtain_offered_types (CosNotifyChannelAdmin::ObtainInfoMode mode)
virtual void subscription_change (const CosNotification::EventTypeSeq &added, const CosNotification::EventTypeSeq &removed)

Protected Attributes

CORBA::Boolean is_suspended_

Detailed Description

template<class SERVANT_TYPE>
class TAO_Notify_ProxySupplier_T< SERVANT_TYPE >

Definition at line 33 of file ProxySupplier_T.h.


Constructor & Destructor Documentation

template<class SERVANT_TYPE >
TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::TAO_Notify_ProxySupplier_T ( void   ) 

Constructor.

Definition at line 20 of file ProxySupplier_T.cpp.

  : is_suspended_ (0)
{
}

template<class SERVANT_TYPE >
TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::~TAO_Notify_ProxySupplier_T (  ) 

Destructor.

Definition at line 26 of file ProxySupplier_T.cpp.

{
}


Member Function Documentation

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::admin_types_changed ( const CosNotification::EventTypeSeq added,
const CosNotification::EventTypeSeq removed 
) [virtual]

Notification of subscriptions set at the admin.

Implements TAO_Notify_Proxy.

Definition at line 31 of file ProxySupplier_T.cpp.

{
  this->subscription_change (added, removed);
}

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::forward_any ( const CORBA::Any event  )  [virtual]

POA_Notify_Internal::Event_Forwarder method.

Definition at line 58 of file ProxySupplier_T.cpp.

{
  TAO_Notify_AnyEvent_No_Copy event (any);

  TAO_Notify_Method_Request_Dispatch_No_Copy request (&event, this, 1);

  this->execute_task (request);
}

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::forward_any_no_filtering ( const CORBA::Any event  )  [virtual]

POA_Notify_Internal::Event_Forwarder method.

Definition at line 68 of file ProxySupplier_T.cpp.

{
  TAO_Notify_AnyEvent_No_Copy event(any);

  TAO_Notify_Method_Request_Dispatch_No_Copy request (&event, this, 0);

  this->execute_task (request);
}

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::forward_structured ( const CosNotification::StructuredEvent event  )  [virtual]

= POA_Notify_Internal methods POA_Notify_Internal::Event_Forwarder method

Definition at line 38 of file ProxySupplier_T.cpp.

{
  TAO_Notify_StructuredEvent_No_Copy event (notification);

  TAO_Notify_Method_Request_Dispatch_No_Copy request (&event, this, 1);

  this->execute_task (request);
}

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::forward_structured_no_filtering ( const CosNotification::StructuredEvent event  )  [virtual]

POA_Notify_Internal::Event_Forwarder method.

Definition at line 48 of file ProxySupplier_T.cpp.

{
  TAO_Notify_StructuredEvent_No_Copy event(notification);

  TAO_Notify_Method_Request_Dispatch_No_Copy request (&event, this, 0);

  this->execute_task (request);
}

template<class SERVANT_TYPE >
CosNotifyFilter::MappingFilter_ptr TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::lifetime_filter ( void   )  [protected, virtual]

Definition at line 160 of file ProxySupplier_T.cpp.

{
  throw CORBA::NO_IMPLEMENT ();
}

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::lifetime_filter ( CosNotifyFilter::MappingFilter_ptr  lifetime_filter  )  [protected, virtual]

Definition at line 166 of file ProxySupplier_T.cpp.

{
  throw CORBA::NO_IMPLEMENT ();
}

template<class SERVANT_TYPE >
CosNotifyChannelAdmin::ConsumerAdmin_ptr TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::MyAdmin ( void   )  [protected, virtual]

Definition at line 134 of file ProxySupplier_T.cpp.

{
  CosNotifyChannelAdmin::ConsumerAdmin_var ret;

  CORBA::Object_var object = this->consumer_admin().ref ();

  ret = CosNotifyChannelAdmin::ConsumerAdmin::_narrow (object.in ());

  return ret._retn ();
}

template<class SERVANT_TYPE >
CosNotification::EventTypeSeq * TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::obtain_offered_types ( CosNotifyChannelAdmin::ObtainInfoMode  mode  )  [protected, virtual]

Definition at line 78 of file ProxySupplier_T.cpp.

{
  return this->obtain_types (mode, this->event_manager().offered_types ());
}

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::priority_filter ( CosNotifyFilter::MappingFilter_ptr  priority_filter  )  [protected, virtual]

Definition at line 154 of file ProxySupplier_T.cpp.

{
  throw CORBA::NO_IMPLEMENT ();
}

template<class SERVANT_TYPE >
CosNotifyFilter::MappingFilter_ptr TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::priority_filter ( void   )  [protected, virtual]

Definition at line 148 of file ProxySupplier_T.cpp.

{
  throw CORBA::NO_IMPLEMENT ();
}

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::resume_connection ( void   )  [protected, virtual]

Definition at line 118 of file ProxySupplier_T.cpp.

{
  {
    ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_, CORBA::INTERNAL ());

    if (this->is_connected () == 0)
      throw CosNotifyChannelAdmin::NotConnected ();

    if (this->consumer()->is_suspended () == 0)
      throw CosNotifyChannelAdmin::ConnectionAlreadyActive ();
  }

  this->consumer()->resume ();
}

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::subscription_change ( const CosNotification::EventTypeSeq added,
const CosNotification::EventTypeSeq removed 
) [protected, virtual]

Definition at line 84 of file ProxySupplier_T.cpp.

{
  TAO_Notify_EventTypeSeq seq_added (added);
  TAO_Notify_EventTypeSeq seq_removed (removed);

  {
    ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_,
                        CORBA::INTERNAL ());

    this->subscribed_types_.add_and_remove (seq_added, seq_removed);
  }

  this->event_manager().subscription_change (this, seq_added, seq_removed);
}

template<class SERVANT_TYPE >
void TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::suspend_connection ( void   )  [protected, virtual]

Definition at line 101 of file ProxySupplier_T.cpp.

{
  {
    ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_, CORBA::INTERNAL ());

    if (this->is_connected () == 0)
      throw CosNotifyChannelAdmin::NotConnected ();

    if (this->consumer()->is_suspended () == 1)
      throw CosNotifyChannelAdmin::ConnectionAlreadyInactive ();
  }

  this->consumer()->suspend ();
  this->self_change ();
}


Member Data Documentation

template<class SERVANT_TYPE>
CORBA::Boolean TAO_Notify_ProxySupplier_T< SERVANT_TYPE >::is_suspended_ [protected]

Definition at line 60 of file ProxySupplier_T.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines