| TAO_CosEvent 4.0.0
    | 
ProxyPullSupplier. More...
#include <CEC_ProxyPullSupplier.h>


| Public Types | |
| typedef CosEventChannelAdmin::ProxyPullSupplier_ptr | _ptr_type | 
| typedef CosEventChannelAdmin::ProxyPullSupplier_var | _var_type | 
| Public Member Functions | |
| TAO_CEC_ProxyPullSupplier (TAO_CEC_EventChannel *event_channel, const ACE_Time_Value &timeout) | |
| constructor... | |
| virtual | ~TAO_CEC_ProxyPullSupplier () | 
| destructor... | |
| virtual void | activate (CosEventChannelAdmin::ProxyPullSupplier_ptr &activated_proxy) | 
| Activate in the POA. | |
| virtual void | deactivate () | 
| Deactivate from the POA. | |
| CORBA::Boolean | is_connected () const | 
| Return 0 if no consumer is connected... | |
| CosEventComm::PullConsumer_ptr | consumer () const | 
| virtual void | shutdown () | 
| The event channel is shutting down. | |
| CORBA::Boolean | consumer_non_existent (CORBA::Boolean_out disconnected) | 
| void | push (const CORBA::Any &event) | 
| Push an event into the queue. | |
| virtual void | connect_pull_consumer (CosEventComm::PullConsumer_ptr pull_consumer) | 
| virtual CORBA::Any * | pull () | 
| virtual CORBA::Any * | try_pull (CORBA::Boolean_out has_event) | 
| virtual void | disconnect_pull_supplier () | 
| CORBA::ULong | _incr_refcnt () | 
| Increment and decrement the reference count. | |
| CORBA::ULong | _decr_refcnt () | 
| virtual PortableServer::POA_ptr | _default_POA () | 
| virtual void | _add_ref () | 
| virtual void | _remove_ref () | 
| Protected Member Functions | |
| void | consumer (CosEventComm::PullConsumer_ptr consumer) | 
| void | consumer_i (CosEventComm::PullConsumer_ptr consumer) | 
| CORBA::Boolean | is_connected_i () const | 
| The private version (without locking) of is_connected(). | |
| void | cleanup_i () | 
| Release the child and the consumer. | |
| CosEventComm::PullConsumer_ptr | apply_policy (CosEventComm::PullConsumer_ptr c) | 
| Private Attributes | |
| TAO_CEC_EventChannel * | event_channel_ | 
| The Event Channel that owns this object. | |
| ACE_Time_Value | timeout_ | 
| ACE_Lock * | lock_ | 
| The locking strategy. | |
| CORBA::ULong | refcount_ | 
| The reference count. | |
| CosEventComm::PullConsumer_var | consumer_ | 
| CosEventComm::PullConsumer_var | nopolicy_consumer_ | 
| The consumer without any policies applied. | |
| int | connected_ | 
| PortableServer::POA_var | default_POA_ | 
| Store the default POA. | |
| TAO_SYNCH_MUTEX | queue_lock_ | 
| Use a message queue to pass the. | |
| TAO_SYNCH_CONDITION | wait_not_empty_ | 
| ACE_Unbounded_Queue< CORBA::Any > | queue_ | 
ProxyPullSupplier.
Implement the CosEventChannelAdmin::ProxyPullSupplier interface, remember that this class is used to communicate with a PullConsumer, so, in effect, this is the ambassador for a consumer inside the event channel. = MEMORY MANAGEMENT It does not assume ownership of the TAO_CEC_Dispatching object. It makes a copy of the ConsumerQOS and the consumer object reference. = LOCKING Locking is strategized, the event channel acts as a factory for the locking strategies.
| typedef CosEventChannelAdmin::ProxyPullSupplier_ptr TAO_CEC_ProxyPullSupplier::_ptr_type | 
| typedef CosEventChannelAdmin::ProxyPullSupplier_var TAO_CEC_ProxyPullSupplier::_var_type | 
| TAO_CEC_ProxyPullSupplier::TAO_CEC_ProxyPullSupplier | ( | TAO_CEC_EventChannel * | event_channel, | 
| const ACE_Time_Value & | timeout ) | 
constructor...
| 
 | virtual | 
destructor...
| 
 | virtual | 
| CORBA::ULong TAO_CEC_ProxyPullSupplier::_decr_refcnt | ( | ) | 
| 
 | virtual | 
| CORBA::ULong TAO_CEC_ProxyPullSupplier::_incr_refcnt | ( | ) | 
Increment and decrement the reference count.
| 
 | virtual | 
| 
 | virtual | 
Activate in the POA.
| 
 | protected | 
Assigns the parameter to both consumer_ and nopolicy_consumer_, and applies policies (when appropriate) to consumer_.
| 
 | protected | 
Release the child and the consumer.
| 
 | virtual | 
| CosEventComm::PullConsumer_ptr TAO_CEC_ProxyPullSupplier::consumer | ( | ) | const | 
Return the consumer object reference. It returns nil() if it has not connected yet.
| 
 | protected | 
Set the consumer, used by some implementations to change the policies used when invoking operations on the consumer.
| 
 | protected | 
| CORBA::Boolean TAO_CEC_ProxyPullSupplier::consumer_non_existent | ( | CORBA::Boolean_out | disconnected | ) | 
Invoke the _non_existent() pseudo-operation on the consumer. If it is disconnected then it returns true and sets the disconnected flag.
| 
 | virtual | 
Deactivate from the POA.
| 
 | virtual | 
| CORBA::Boolean TAO_CEC_ProxyPullSupplier::is_connected | ( | ) | const | 
Return 0 if no consumer is connected...
| 
 | protected | 
The private version (without locking) of is_connected().
| 
 | virtual | 
| void TAO_CEC_ProxyPullSupplier::push | ( | const CORBA::Any & | event | ) | 
Push an event into the queue.
| 
 | virtual | 
The event channel is shutting down.
| 
 | virtual | 
| 
 | private | 
If the flag is not zero then we are connected, notice that the consumer can be nil.
| 
 | private | 
The consumer – use apply_policy() instead of assigning directly to consumer_. This will keep consumer_ and nopolicy_consumer_ in sync.
| 
 | private | 
Store the default POA.
| 
 | private | 
The Event Channel that owns this object.
| 
 | private | 
The locking strategy.
| 
 | private | 
The consumer without any policies applied.
| 
 | private | 
| 
 | private | 
Use a message queue to pass the.
| 
 | private | 
The reference count.
| 
 | private | 
| 
 | private |