TAO_CEC_ProxyPushConsumer Class Reference

ProxyPushConsumer. More...

#include <CEC_ProxyPushConsumer.h>

Collaboration diagram for TAO_CEC_ProxyPushConsumer:

Collaboration graph
[legend]
List of all members.

Public Types

typedef CosEventChannelAdmin::ProxyPushConsumer_ptr _ptr_type
typedef CosEventChannelAdmin::ProxyPushConsumer_var _var_type

Public Member Functions

 TAO_CEC_ProxyPushConsumer (TAO_CEC_EventChannel *event_channel, const ACE_Time_Value &timeout)
 constructor...
virtual ~TAO_CEC_ProxyPushConsumer (void)
 destructor...
CosEventComm::PushSupplier_ptr supplier (void) const
CORBA::Boolean supplier_non_existent (CORBA::Boolean_out disconnected)
virtual void shutdown ()
 The event channel is shutting down.
CORBA::ULong _incr_refcnt (void)
 Increment and decrement the reference count.
CORBA::ULong _decr_refcnt (void)
virtual void _add_ref ()
virtual void _remove_ref ()

Protected Member Functions

void supplier (CosEventComm::PushSupplier_ptr supplier)
void supplier_i (CosEventComm::PushSupplier_ptr supplier)
CORBA::Boolean is_connected_i (void) const
 The private version (without locking) of is_connected().
void cleanup_i (void)
 Release the supplier.
CosEventComm::PushSupplier_ptr apply_policy (CosEventComm::PushSupplier_ptr s)

Private Attributes

TAO_CEC_EventChannelevent_channel_
 The supplier admin, used for activation and memory managment.
ACE_Time_Value timeout_
ACE_Locklock_
 The locking strategy.
CORBA::ULong refcount_
 The reference count.
CosEventComm::PushSupplier_var supplier_
CosEventComm::PushSupplier_var nopolicy_supplier_
 The supplier without any policies applied.
bool connected_
PortableServer::POA_var default_POA_
 Store the default POA.

Friends

class TAO_CEC_ProxyPushConsumer_Guard

Detailed Description

ProxyPushConsumer.

Implement the CosEventChannelAdmin::ProxyPushConsumer interface, remember that this class is used to communicate with a PushSupplier, so, in effect, this is the ambassador for a supplier inside the event channel. = MEMORY MANAGMENT The object commits suicide when disconnect_push_consumer() is called.


Member Typedef Documentation

typedef CosEventChannelAdmin::ProxyPushConsumer_ptr TAO_CEC_ProxyPushConsumer::_ptr_type

typedef CosEventChannelAdmin::ProxyPushConsumer_var TAO_CEC_ProxyPushConsumer::_var_type


Constructor & Destructor Documentation

TAO_CEC_ProxyPushConsumer::TAO_CEC_ProxyPushConsumer ( TAO_CEC_EventChannel event_channel,
const ACE_Time_Value timeout 
)

constructor...

TAO_CEC_ProxyPushConsumer::~TAO_CEC_ProxyPushConsumer ( void   )  [virtual]

destructor...


Member Function Documentation

void TAO_CEC_ProxyPushConsumer::_add_ref (  )  [virtual]

CORBA::ULong TAO_CEC_ProxyPushConsumer::_decr_refcnt ( void   ) 

CORBA::ULong TAO_CEC_ProxyPushConsumer::_incr_refcnt ( void   ) 

Increment and decrement the reference count.

void TAO_CEC_ProxyPushConsumer::_remove_ref (  )  [virtual]

CosEventComm::PushSupplier_ptr TAO_CEC_ProxyPushConsumer::apply_policy ( CosEventComm::PushSupplier_ptr  s  )  [protected]

Assigns the parameter to both supplier_ and nopolicy_supplier_, and applies policies (when appropriate) to supplier_.

void TAO_CEC_ProxyPushConsumer::cleanup_i ( void   )  [protected]

Release the supplier.

TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE CORBA::Boolean TAO_CEC_ProxyPushConsumer::is_connected_i ( void   )  const [protected]

The private version (without locking) of is_connected().

void TAO_CEC_ProxyPushConsumer::shutdown (  )  [virtual]

The event channel is shutting down.

ACE_INLINE void TAO_CEC_ProxyPushConsumer::supplier ( CosEventComm::PushSupplier_ptr  supplier  )  [protected]

Set the supplier, used by some implementations to change the policies used when invoking operations on the supplier.

ACE_INLINE CosEventComm::PushSupplier_ptr TAO_CEC_ProxyPushConsumer::supplier ( void   )  const

Return the consumer object reference. It returns nil() if it has not connected yet.

ACE_INLINE void TAO_CEC_ProxyPushConsumer::supplier_i ( CosEventComm::PushSupplier_ptr  supplier  )  [protected]

CORBA::Boolean TAO_CEC_ProxyPushConsumer::supplier_non_existent ( CORBA::Boolean_out  disconnected  ) 

Invoke the _non_existent() pseudo-operation on the supplier. If it is disconnected then it returns true and sets the <disconnected> flag.


Friends And Related Function Documentation

friend class TAO_CEC_ProxyPushConsumer_Guard [friend]


Member Data Documentation

bool TAO_CEC_ProxyPushConsumer::connected_ [private]

If the flag is true then we are connected, notice that the supplier can be nil.

PortableServer::POA_var TAO_CEC_ProxyPushConsumer::default_POA_ [private]

Store the default POA.

TAO_CEC_EventChannel* TAO_CEC_ProxyPushConsumer::event_channel_ [private]

The supplier admin, used for activation and memory managment.

ACE_Lock* TAO_CEC_ProxyPushConsumer::lock_ [private]

The locking strategy.

CosEventComm::PushSupplier_var TAO_CEC_ProxyPushConsumer::nopolicy_supplier_ [private]

The supplier without any policies applied.

CORBA::ULong TAO_CEC_ProxyPushConsumer::refcount_ [private]

The reference count.

CosEventComm::PushSupplier_var TAO_CEC_ProxyPushConsumer::supplier_ [private]

The supplier -- use apply_policy() instead of assigning directly to supplier_. This will keep supplier_ and nopolicy_supplier_ in sync.

ACE_Time_Value TAO_CEC_ProxyPushConsumer::timeout_ [private]


The documentation for this class was generated from the following files:
Generated on Fri Oct 6 15:58:51 2006 for TAO_CosEvent by  doxygen 1.4.7-1