#include <PICurrent.h>
Collaboration diagram for TAO_PICurrent_Guard:
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_Impl* | src_ |
The PICurrent implementation whose slot table will copied. | |
TAO_PICurrent_Impl* | dest_ |
The PICurrent implementation whose slot table will filled with the contents of another PICurrent's slot table. |
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. 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). |
|
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). |
|
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. |
|
The PICurrent implementation whose slot table will filled with the contents of another PICurrent's slot table.
|
|
The PICurrent implementation whose slot table will copied.
|