Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_Connection_Handler Class Reference

TAO_Connection_Handler. More...

#include <Connection_Handler.h>

Inheritance diagram for TAO_Connection_Handler

Inheritance graph
[legend]
Collaboration diagram for TAO_Connection_Handler:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_Connection_Handler (void)
 Constructor.

 TAO_Connection_Handler (TAO_ORB_Core *orb_core)
 Constructor.

virtual ~TAO_Connection_Handler (void)
 Destructor.

TAO_Transporttransport (void)
 Return the underlying transport object.

void transport (TAO_Transport* transport)
 Set the underlying transport object.


Protected Methods

TAO_ORB_Coreorb_core (void)
 Return our TAO_ORB_Core pointer.

TAO_ORB_Core_TSS_Resourcestss_resources (void)
 Return our TSS Resources pointer.

int set_socket_option (ACE_SOCK &sock, int snd_size, int rcv_size)
 Set options on the socket.

int svc_i (void)
 This method is invoked from the svc () method of the Svc_Handler Object.

int incr_pending_upcalls (void)
 Increment and decrement the number of upcalls that have gone through this handler. Returns the upcall count. The calls are thread safe..

int decr_pending_upcalls (void)
int pending_upcalls (void) const
 Query the upcall count.


Private Attributes

TAO_ORB_Coreorb_core_
 Pointer to the TAO_ORB_Core.

TAO_Transporttransport_
 Transport object reference.

TAO_ORB_Core_TSS_Resourcestss_resources_
 Cached tss resources of the ORB that activated this object.

long pending_upcalls_
 Count nested upcalls on this svc_handler i.e., the connection can close during nested upcalls, you should not delete the svc_handler until the stack unwinds from the nested upcalls.

ACE_Lockpending_upcall_lock_
 Lock for the <pending_upcalls_>. We can have more than one thread trying to access.


Detailed Description

TAO_Connection_Handler.

This class is an abstraction for the connection handlers. The connections handler in every protocol can derive from this class as well as the ACE_Svc_Handler specialised for the right protocol. This way, most of the common code for the different protocols would be in this implementation. Further, this class wold be of immense use in storing the handlers in the Cache for TAO. This would help in purging entries which is generally accompanied by closing the open handles and deleting memory associated with the handlers.


Constructor & Destructor Documentation

ACE_INLINE TAO_Connection_Handler::TAO_Connection_Handler ( void )
 

Constructor.

TAO_Connection_Handler::TAO_Connection_Handler ( TAO_ORB_Core * orb_core ) [inline]
 

Constructor.

TAO_Connection_Handler::~TAO_Connection_Handler ( void ) [virtual]
 

Destructor.


Member Function Documentation

ACE_INLINE int TAO_Connection_Handler::decr_pending_upcalls ( void ) [protected]
 

ACE_INLINE int TAO_Connection_Handler::incr_pending_upcalls ( void ) [protected]
 

Increment and decrement the number of upcalls that have gone through this handler. Returns the upcall count. The calls are thread safe..

ACE_INLINE TAO_ORB_Core * TAO_Connection_Handler::orb_core ( void ) [protected]
 

Return our TAO_ORB_Core pointer.

ACE_INLINE int TAO_Connection_Handler::pending_upcalls ( void ) const [protected]
 

Query the upcall count.

int TAO_Connection_Handler::set_socket_option ( ACE_SOCK & sock,
int snd_size,
int rcv_size ) [protected]
 

Set options on the socket.

int TAO_Connection_Handler::svc_i ( void ) [protected]
 

This method is invoked from the svc () method of the Svc_Handler Object.

void TAO_Connection_Handler::transport ( TAO_Transport * transport )
 

Set the underlying transport object.

ACE_INLINE TAO_Transport * TAO_Connection_Handler::transport ( void )
 

Return the underlying transport object.

ACE_INLINE TAO_ORB_Core_TSS_Resources * TAO_Connection_Handler::tss_resources ( void ) [protected]
 

Return our TSS Resources pointer.


Member Data Documentation

TAO_ORB_Core * TAO_Connection_Handler::orb_core_ [private]
 

Pointer to the TAO_ORB_Core.

ACE_Lock * TAO_Connection_Handler::pending_upcall_lock_ [private]
 

Lock for the <pending_upcalls_>. We can have more than one thread trying to access.

long TAO_Connection_Handler::pending_upcalls_ [private]
 

Count nested upcalls on this svc_handler i.e., the connection can close during nested upcalls, you should not delete the svc_handler until the stack unwinds from the nested upcalls.

TAO_Transport * TAO_Connection_Handler::transport_ [private]
 

Transport object reference.

TAO_ORB_Core_TSS_Resources * TAO_Connection_Handler::tss_resources_ [private]
 

Cached tss resources of the ORB that activated this object.


The documentation for this class was generated from the following files:
Generated at Wed Nov 21 11:43:36 2001 for TAO by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000