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

[legend]
Collaboration diagram for TAO_Connection_Handler:

[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_Transport* | transport (void)
| Return the underlying transport object.
void | transport (TAO_Transport* transport)
| Set the underlying transport object.
## Protected Methods
TAO_ORB_Core* | orb_core (void)
| Return our TAO_ORB_Core pointer.
TAO_ORB_Core_TSS_Resources* | tss_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_Core* | orb_core_
| Pointer to the TAO_ORB_Core.
TAO_Transport* | transport_
| Transport object reference.
TAO_ORB_Core_TSS_Resources* | tss_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_Lock* | pending_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:

- Connection_Handler.h
- Connection_Handler.cpp
- Connection_Handler.inl