TAO_ESF_Peer_Admin< EVENT_CHANNEL, PROXY, INTERFACE, PEER > Class Template Reference

Extend the Proxy_Admin interface to provide methods for filtering. More...

#include <ESF_Peer_Admin.h>

Inheritance diagram for TAO_ESF_Peer_Admin< EVENT_CHANNEL, PROXY, INTERFACE, PEER >:

Inheritance graph
[legend]
Collaboration diagram for TAO_ESF_Peer_Admin< EVENT_CHANNEL, PROXY, INTERFACE, PEER >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_ESF_Peer_Admin (EVENT_CHANNEL *ec)
 Constructor.

virtual ~TAO_ESF_Peer_Admin (void)
 destructor

virtual void peer_connected (PEER *peer)
virtual void peer_reconnected (PEER *peer)
virtual void peer_disconnected (PEER *peer)

Detailed Description

template<class EVENT_CHANNEL, class PROXY, class INTERFACE, class PEER>
class TAO_ESF_Peer_Admin< EVENT_CHANNEL, PROXY, INTERFACE, PEER >

Extend the Proxy_Admin interface to provide methods for filtering.

Some Event Services that perform filtering have to propagate the consumer connect/disconnect activities to the suppliers, and vice-versa. In that scenario the ESF_Proxy_Admin<> interface is augmented with connected()/reconnected()/disconnected() operations for the proxy peers (i.e. the ProxySuppliers for the ProxyConsumers and vice-versa).

Requirements

In addition to the requirements imposed by ESF_Proxy_Admin<> the PROXY interface must implement:

* void connected (PEER *peer) throw (); * void reconnected (PEER *peer) throw (); * void disconnected (PEER *peer) throw (); *

Similarly, the PEER interface must implement:

* void connected (PROXY *proxy) throw (); * void reconnected (PROXY *proxy) throw (); * void disconnected (PROXY *proxy) throw (); *

Definition at line 58 of file ESF_Peer_Admin.h.


Constructor & Destructor Documentation

template<class EVENT_CHANNEL, class PROXY, class INTERFACE, class PEER>
TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_ESF_Peer_Admin< EVENT_CHANNEL, PROXY, INTERFACE, PEER >::TAO_ESF_Peer_Admin EVENT_CHANNEL *  ec  ) 
 

Constructor.

Definition at line 12 of file ESF_Peer_Admin.cpp.

template<class EVENT_CHANNEL, class PROXY, class INTERFACE, class PEER>
TAO_ESF_Peer_Admin< EVENT_CHANNEL, PROXY, INTERFACE, PEER >::~TAO_ESF_Peer_Admin void   )  [virtual]
 

destructor

Definition at line 19 of file ESF_Peer_Admin.cpp.

00020 {
00021 }


Member Function Documentation

template<class EVENT_CHANNEL, class PROXY, class INTERFACE, class PEER>
void TAO_ESF_Peer_Admin< EVENT_CHANNEL, PROXY, INTERFACE, PEER >::peer_connected PEER *  peer  )  [virtual]
 

A has connected, this is invoked when the peer's client has invoked the connect_xxx_yyy() method. The default implementation is a no-op.

Definition at line 25 of file ESF_Peer_Admin.cpp.

References TAO_ESF_Proxy_Admin< EVENT_CHANNEL, PROXY, INTERFACE >::for_each().

00026 {
00027   TAO_ESF_Peer_Connected<PROXY,PEER> worker (peer);
00028 
00029   this->for_each (&worker);
00030 }

template<class EVENT_CHANNEL, class PROXY, class INTERFACE, class PEER>
void TAO_ESF_Peer_Admin< EVENT_CHANNEL, PROXY, INTERFACE, PEER >::peer_disconnected PEER *  peer  )  [virtual]
 

A has been disconnected. The default implementation removes the object from the collection and deactivates the proxy.

Definition at line 43 of file ESF_Peer_Admin.cpp.

References TAO_ESF_Proxy_Admin< EVENT_CHANNEL, PROXY, INTERFACE >::for_each().

00044 {
00045   TAO_ESF_Peer_Disconnected<PROXY,PEER> worker (peer);
00046 
00047   this->for_each (&worker);
00048 }

template<class EVENT_CHANNEL, class PROXY, class INTERFACE, class PEER>
void TAO_ESF_Peer_Admin< EVENT_CHANNEL, PROXY, INTERFACE, PEER >::peer_reconnected PEER *  peer  )  [virtual]
 

A has reconnected, i.e. its client has invoked the connect_xxx_yyy() method, but the peer was connected already. The default implementation delegates on the collection method

Definition at line 34 of file ESF_Peer_Admin.cpp.

References TAO_ESF_Proxy_Admin< EVENT_CHANNEL, PROXY, INTERFACE >::for_each().

00035 {
00036   TAO_ESF_Peer_Reconnected<PROXY,PEER> worker (peer);
00037 
00038   this->for_each (&worker);
00039 }


The documentation for this class was generated from the following files:
Generated on Sun Jan 27 13:38:51 2008 for TAO_ESF by doxygen 1.3.6