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

TAO_PICurrent_Guard Class Reference

Class used to make copying between request scope current and thread scope current exception-safe. More...

#include <PICurrent.h>

Collaboration diagram for TAO_PICurrent_Guard:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_PICurrent_Guard (TAO_Stub *stub, TAO_PICurrent_Impl &rsc)
 Constructor. More...

 TAO_PICurrent_Guard (TAO_ServerRequest &server_request, CORBA::Boolean tsc_to_rsc)
 Constructor. More...

 ~TAO_PICurrent_Guard (void)
 Destructor. More...


Private Attributes

TAO_PICurrent_Implsrc_
 The PICurrent implementation whose slot table will copied.

TAO_PICurrent_Impldest_
 The PICurrent implementation whose slot table will filled with the contents of another PICurrent's slot table.


Detailed Description

Class used to make copying between request scope current and thread scope current exception-safe.

Since copies between the request scope current and thread scope current must also occur if an exception is thrown, e.g. made available to the receive_exception() and send_exception() interception points, the "guard" idiom is used to make this action exception-safe.


Constructor & Destructor Documentation

TAO_PICurrent_Guard::TAO_PICurrent_Guard ( TAO_Stub * stub,
TAO_PICurrent_Impl & rsc )
 

Constructor.

This constructor copies data held in a given PICurrent when transitioning from one PICurrent scope to another immediately before any starting interception points are invoked (e.g. on the client side just before send_request() is invoked).

TAO_PICurrent_Guard::TAO_PICurrent_Guard ( TAO_ServerRequest & server_request,
CORBA::Boolean tsc_to_rsc )
 

Constructor.

This constructor sets up this guard to copy the data held in a given PICurrent when transitioning from that PICurrent's scope to another scope (e.g. request scope to thread scope transition immediately following receive_request_service_contexts() on server side).

TAO_PICurrent_Guard::~TAO_PICurrent_Guard ( void )
 

Destructor.

The destructor copies (a logical copy whenever possible) data held in a given PICurrent when transitioning from one PICurrent scope to another immediately before any ending interception points are invoked, and after the sending and intermediate (if any) interception points are invoked.


Member Data Documentation

TAO_PICurrent_Impl * TAO_PICurrent_Guard::dest_ [private]
 

The PICurrent implementation whose slot table will filled with the contents of another PICurrent's slot table.

TAO_PICurrent_Impl * TAO_PICurrent_Guard::src_ [private]
 

The PICurrent implementation whose slot table will copied.


The documentation for this class was generated from the following file:
Generated at Sat Dec 1 12:08:32 2001 for TAO by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000