TAO_IORTable
2.3.3
|
This is the main class for DSI using AMH. More...
#include <Locate_ResponseHandler.h>
Public Types | |
typedef TAO_AMH_Locate_ResponseHandler_ptr | _ptr_type |
typedef TAO_AMH_Locate_ResponseHandler_var | _var_type |
Public Member Functions | |
TAO_AMH_Locate_ResponseHandler (TAO_ServerRequest &sr) | |
~TAO_AMH_Locate_ResponseHandler (void) | |
virtual void | raise_excep (const CORBA::Exception &ex) |
virtual void | forward_ior (const char *ior, CORBA::Boolean is_perm) |
CORBA::Object_ptr | _this () |
Returns a CORBA::Object_ptr for the target object. More... | |
Static Public Member Functions | |
static TAO_AMH_Locate_ResponseHandler * | _duplicate (TAO_AMH_Locate_ResponseHandler_ptr) |
CORBA Object related methods. More... | |
static TAO_AMH_Locate_ResponseHandler * | _nil (void) |
static TAO_AMH_Locate_ResponseHandler * | _narrow (CORBA::Object_ptr) |
static TAO_AMH_Locate_ResponseHandler * | _unchecked_narrow (CORBA::Object_ptr) |
Protected Member Functions | |
virtual const char * | _interface_repository_id (void) const |
Return 0. Should never be used. More... | |
virtual void * | _downcast (const char *repository_id) |
Simply returns "this". More... | |
Private Attributes | |
CORBA::ORB_var | orb_ |
This is the main class for DSI using AMH.
With ordinary DSI, the POA calls _dispatch, which in turn calls invoke on the DSI handler. Invoke completely handles the request, and packages the result in the request object so that it can be marshalled and sent back to the caller.
With the AMH variation, the DSI handler's invoke method starts the processing, but delegates the result packaging to a response handler. This way, if the invocation takes a long time, or involves blocking calls, then the result handling can be managed by another thread. This is particularly useful for gateway implementations, where the middle tier should not have to block waiting for replies.
As this is built on the CORBA object model, there are separate classes representing the interface and the implementation.
TAO_AMH_Locate_ResponseHandler::TAO_AMH_Locate_ResponseHandler | ( | TAO_ServerRequest & | sr | ) |
TAO_AMH_Locate_ResponseHandler::~TAO_AMH_Locate_ResponseHandler | ( | void | ) |
|
protectedvirtual |
Simply returns "this".
|
static |
CORBA Object related methods.
|
protectedvirtual |
Return 0. Should never be used.
|
static |
|
static |
CORBA::Object_ptr TAO_AMH_Locate_ResponseHandler::_this | ( | ) |
Returns a CORBA::Object_ptr for the target object.
|
static |
|
virtual |
|
virtual |
|
private |