OmniEvents::ProxyManager Class Reference

Base class for ServantActivator classes that manage Proxy servants. More...

#include <ProxyManager.h>

Inheritance diagram for OmniEvents::ProxyManager:

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

Collaboration graph
[legend]

List of all members.

Public Member Functions

void etherealize (const PortableServer::ObjectId &oid, PortableServer::POA_ptr adapter, PortableServer::Servant serv, CORBA::Boolean cleanup_in_progress, CORBA::Boolean remaining_activations)
 Implements etherealize() method from ServantActivator interface.
void reincarnate (const PersistNode &node)
 Re-create servants from information saved in the log file.
void output (ostream &os)
 Save this object's state to a stream.

Protected Member Functions

 ProxyManager (PortableServer::POA_ptr poa)
 
Parameters:
poa parent POA.

virtual ~ProxyManager ()
void activate (const char *name)
 Creates the Proxy-type's POA, and registers this object as its ServantManager.

Protected Attributes

set< Proxy * > _servants
 The set of all active Proxies in this object's _managedPoa.
PortableServer::POA_var _managedPoa
 The POA owned & managed by this object.


Detailed Description

Base class for ServantActivator classes that manage Proxy servants.

Each ProxyManager manages its own POA (_managedPoa), with policies: PERSISTENT, USER_ID, NO_IMPLICIT_ACTIVATION, USE_SERVANT_MANAGER, SINGLE_THREAD_MODEL. This POA is only used to contain objects of a single Proxy type. Specific subclasses must implement incarnate() & createObject() methods.

Definition at line 57 of file ProxyManager.h.


Constructor & Destructor Documentation

OmniEvents::ProxyManager::ProxyManager ( PortableServer::POA_ptr  poa  )  [protected]

Parameters:
poa parent POA.

Definition at line 96 of file ProxyManager.cc.

OmniEvents::ProxyManager::~ProxyManager (  )  [protected, virtual]

Definition at line 152 of file ProxyManager.cc.


Member Function Documentation

void OmniEvents::ProxyManager::etherealize ( const PortableServer::ObjectId &  oid,
PortableServer::POA_ptr  adapter,
PortableServer::Servant  serv,
CORBA::Boolean  cleanup_in_progress,
CORBA::Boolean  remaining_activations 
)

Implements etherealize() method from ServantActivator interface.

Reimplemented in OmniEvents::ProxyPushSupplierManager.

Definition at line 41 of file ProxyManager.cc.

References _servants, and DB.

void OmniEvents::ProxyManager::reincarnate ( const PersistNode node  ) 

Re-create servants from information saved in the log file.

Definition at line 60 of file ProxyManager.cc.

References OmniEvents::PersistNode::_child, _managedPoa, _servants, DB, and OmniEvents::Proxy::reincarnate().

Referenced by OmniEvents::SupplierAdmin_i::reincarnate(), and OmniEvents::ConsumerAdmin_i::reincarnate().

void OmniEvents::ProxyManager::output ( ostream &  os  ) 

Save this object's state to a stream.

Definition at line 87 of file ProxyManager.cc.

References _servants.

Referenced by OmniEvents::SupplierAdmin_i::output(), and OmniEvents::ConsumerAdmin_i::output().

void OmniEvents::ProxyManager::activate ( const char *  name  )  [protected]

Creates the Proxy-type's POA, and registers this object as its ServantManager.

Parameters:
name e.g. "ProxyPushSupplier".

Definition at line 103 of file ProxyManager.cc.

References _managedPoa, OmniEvents::Servant::_poa, OmniEvents::Servant::activateObjectWithId(), and DB.

Referenced by OmniEvents::ProxyPullConsumerManager::ProxyPullConsumerManager(), OmniEvents::ProxyPullSupplierManager::ProxyPullSupplierManager(), and OmniEvents::ProxyPushSupplierManager::ProxyPushSupplierManager().


Member Data Documentation

set<Proxy*> OmniEvents::ProxyManager::_servants [protected]

The set of all active Proxies in this object's _managedPoa.

Definition at line 90 of file ProxyManager.h.

Referenced by OmniEvents::ProxyPullConsumerManager::collect(), OmniEvents::ProxyPushSupplierManager::disconnect(), OmniEvents::ProxyPullSupplierManager::disconnect(), OmniEvents::ProxyPullConsumerManager::disconnect(), OmniEvents::ProxyPushSupplierManager::etherealize(), etherealize(), OmniEvents::ProxyPushSupplierManager::incarnate(), OmniEvents::ProxyPullSupplierManager::incarnate(), OmniEvents::ProxyPullConsumerManager::incarnate(), output(), reincarnate(), OmniEvents::ProxyPushSupplierManager::run_undetached(), and OmniEvents::ProxyPullConsumerManager::triggerRequest().

PortableServer::POA_var OmniEvents::ProxyManager::_managedPoa [protected]

The POA owned & managed by this object.

Don't confuse it with _poa (inherited from class Servant) which points to the POA in which THIS object resides.

Definition at line 95 of file ProxyManager.h.

Referenced by activate(), OmniEvents::ProxyPushSupplierManager::createObject(), OmniEvents::ProxyPullSupplierManager::createObject(), OmniEvents::ProxyPullConsumerManager::createObject(), OmniEvents::ProxyPushSupplierManager::incarnate(), OmniEvents::ProxyPullSupplierManager::incarnate(), OmniEvents::ProxyPullConsumerManager::incarnate(), and reincarnate().


The documentation for this class was generated from the following files:
Generated on Tue Jan 29 04:19:54 2008 for OmniEvents by  doxygen 1.5.4