TAO_CEC_ProxyPullConsumer Class Reference

ProxyPullConsumer. More...

#include <CEC_ProxyPullConsumer.h>

Collaboration diagram for TAO_CEC_ProxyPullConsumer:

Collaboration graph

List of all members.

Public Types


Public Member Functions

 TAO_CEC_ProxyPullConsumer (TAO_CEC_EventChannel *event_channel, const ACE_Time_Value &timeout)
virtual ~TAO_CEC_ProxyPullConsumer (void)
virtual void activate (CosEventChannelAdmin::ProxyPullConsumer_ptr &activated_proxy)
 Activate in the POA.
virtual void deactivate (void)
 Deactivate from the POA.
CORBA::Boolean is_connected (void) const
 Return 0 if no supplier is connected...
CosEventComm::PullSupplier_ptr supplier (void) const
CORBA::Any * try_pull_from_supplier (CORBA::Boolean_out has_event)
 Pulls from the supplier, verifies that it is connected.
CORBA::Any * pull_from_supplier (void)
CORBA::Boolean supplier_non_existent (CORBA::Boolean_out disconnected)
virtual void shutdown (void)
 The event channel is shutting down.
CORBA::ULong _incr_refcnt (void)
 Increment and decrement the reference count.
CORBA::ULong _decr_refcnt (void)
virtual void connect_pull_supplier (CosEventComm::PullSupplier_ptr pull_supplier)
virtual void disconnect_pull_consumer (void)
virtual PortableServer::POA_ptr _default_POA (void)
virtual void _add_ref (void)
virtual void _remove_ref (void)

Protected Member Functions

void supplier (CosEventComm::PullSupplier_ptr supplier)
void supplier_i (CosEventComm::PullSupplier_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::PullSupplier_ptr apply_policy (CosEventComm::PullSupplier_ptr s)

Private Attributes

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

Detailed Description


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

Member Typedef Documentation

typedef CosEventChannelAdmin::ProxyPullConsumer_ptr TAO_CEC_ProxyPullConsumer::_ptr_type

typedef CosEventChannelAdmin::ProxyPullConsumer_var TAO_CEC_ProxyPullConsumer::_var_type

Constructor & Destructor Documentation

TAO_CEC_ProxyPullConsumer::TAO_CEC_ProxyPullConsumer ( TAO_CEC_EventChannel event_channel,
const ACE_Time_Value timeout 


TAO_CEC_ProxyPullConsumer::~TAO_CEC_ProxyPullConsumer ( void   )  [virtual]


Member Function Documentation

void TAO_CEC_ProxyPullConsumer::activate ( CosEventChannelAdmin::ProxyPullConsumer_ptr &  activated_proxy  )  [virtual]

Activate in the POA.

void TAO_CEC_ProxyPullConsumer::deactivate ( void   )  [virtual]

Deactivate from the POA.

ACE_INLINE CORBA::Boolean TAO_CEC_ProxyPullConsumer::is_connected ( void   )  const

Return 0 if no supplier is connected...

ACE_INLINE CosEventComm::PullSupplier_ptr TAO_CEC_ProxyPullConsumer::supplier ( void   )  const

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

CORBA::Any * TAO_CEC_ProxyPullConsumer::try_pull_from_supplier ( CORBA::Boolean_out  has_event  ) 

Pulls from the supplier, verifies that it is connected.

CORBA::Any * TAO_CEC_ProxyPullConsumer::pull_from_supplier ( void   ) 

CORBA::Boolean TAO_CEC_ProxyPullConsumer::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.

void TAO_CEC_ProxyPullConsumer::shutdown ( void   )  [virtual]

The event channel is shutting down.

CORBA::ULong TAO_CEC_ProxyPullConsumer::_incr_refcnt ( void   ) 

Increment and decrement the reference count.

CORBA::ULong TAO_CEC_ProxyPullConsumer::_decr_refcnt ( void   ) 

void TAO_CEC_ProxyPullConsumer::connect_pull_supplier ( CosEventComm::PullSupplier_ptr  pull_supplier  )  [virtual]

void TAO_CEC_ProxyPullConsumer::disconnect_pull_consumer ( void   )  [virtual]

PortableServer::POA_ptr TAO_CEC_ProxyPullConsumer::_default_POA ( void   )  [virtual]

void TAO_CEC_ProxyPullConsumer::_add_ref ( void   )  [virtual]

void TAO_CEC_ProxyPullConsumer::_remove_ref ( void   )  [virtual]

ACE_INLINE void TAO_CEC_ProxyPullConsumer::supplier ( CosEventComm::PullSupplier_ptr  supplier  )  [protected]

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

ACE_INLINE void TAO_CEC_ProxyPullConsumer::supplier_i ( CosEventComm::PullSupplier_ptr  supplier  )  [protected]

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

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

void TAO_CEC_ProxyPullConsumer::cleanup_i ( void   )  [protected]

Release the supplier.

CosEventComm::PullSupplier_ptr TAO_CEC_ProxyPullConsumer::apply_policy ( CosEventComm::PullSupplier_ptr  s  )  [protected]

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

Member Data Documentation

The supplier admin, used for activation and memory managment.

The locking strategy.

The reference count.

CosEventComm::PullSupplier_var TAO_CEC_ProxyPullConsumer::supplier_ [private]

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

CosEventComm::PullSupplier_var TAO_CEC_ProxyPullConsumer::nopolicy_supplier_ [private]

The supplier without any policies applied.

Store the default POA.

The documentation for this class was generated from the following files:

Generated on Thu Nov 27 05:36:14 2008 for TAO_CosEvent by  doxygen 1.5.6