Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

OmniEvents::ProxyPullConsumerManager Class Reference

#include <ProxyPullConsumer.h>

Inheritance diagram for OmniEvents::ProxyPullConsumerManager:

Inheritance graph
[legend]
Collaboration diagram for OmniEvents::ProxyPullConsumerManager:

Collaboration graph
[legend]
List of all members.

Public Methods

PortableServer::Servant incarnate (const PortableServer::ObjectId &oid, PortableServer::POA_ptr poa)
 ProxyPullConsumerManager (PortableServer::POA_ptr parentPoa, list< CORBA::Any * > &q)
 ~ProxyPullConsumerManager ()
CosEventChannelAdmin::ProxyPullConsumer_ptr createObject ()
void trigger ()
 Triggers each connected Proxy to do some work. More...

void disconnect ()
 Send disconnect_pull_supplier() to all connected PullSuppliers. More...


Private Attributes

list< CORBA::Any * > & _queue

Constructor & Destructor Documentation

OmniEvents::ProxyPullConsumerManager::ProxyPullConsumerManager PortableServer::POA_ptr    parentPoa,
list< CORBA::Any * > &    q
 

Definition at line 48 of file ProxyPullConsumer.cc.

OmniEvents::ProxyPullConsumerManager::~ProxyPullConsumerManager  
 

Definition at line 58 of file ProxyPullConsumer.cc.

References DB.


Member Function Documentation

CosEventChannelAdmin::ProxyPullConsumer_ptr OmniEvents::ProxyPullConsumerManager::createObject  
 

Definition at line 64 of file ProxyPullConsumer.cc.

References OmniEvents::ProxyManager::_managedPoa.

Referenced by OmniEvents::SupplierAdmin_i::obtain_pull_consumer().

void OmniEvents::ProxyPullConsumerManager::disconnect  
 

Send disconnect_pull_supplier() to all connected PullSuppliers.

Definition at line 82 of file ProxyPullConsumer.cc.

References OmniEvents::ProxyManager::_servants, and OmniEvents::ProxyPullConsumer_i::disconnect_pull_consumer().

Referenced by OmniEvents::SupplierAdmin_i::disconnect().

PortableServer::Servant OmniEvents::ProxyPullConsumerManager::incarnate const PortableServer::ObjectId &    oid,
PortableServer::POA_ptr    poa
 

Definition at line 37 of file ProxyPullConsumer.cc.

References OmniEvents::ProxyManager::_managedPoa, _queue, OmniEvents::ProxyManager::_servants, and DB.

void OmniEvents::ProxyPullConsumerManager::trigger  
 

Triggers each connected Proxy to do some work.

PSEUDOCODE:

  • If an exception has arrived, increment the exception count for that operation (pull or try_pull), and switch to the other operation.
  • If both operations' exception counts are >1, then deactivate this object.
  • If a method has returned, then decide whether we have an event (hasEvent). If so, the read the event and push it onto the queue.
  • If there is no request in progress, send a new request to the current operation (pull or try_pull).

Definition at line 72 of file ProxyPullConsumer.cc.

References OmniEvents::ProxyManager::_servants, and OmniEvents::ProxyPullConsumer_i::trigger().

Referenced by OmniEvents::SupplierAdmin_i::collect().


Member Data Documentation

list<CORBA::Any*>& OmniEvents::ProxyPullConsumerManager::_queue [private]
 

Definition at line 84 of file ProxyPullConsumer.h.

Referenced by incarnate().


The documentation for this class was generated from the following files:
Generated on Fri Nov 19 17:42:35 2004 for OmniEvents by doxygen1.2.15