Represents a "queue-able", collocated, asynchronous, CORBA request. More...
#include <CSD_TP_Collocated_Asynch_Request.h>
Public Member Functions | |
TP_Collocated_Asynch_Request (TAO_ServerRequest &server_request, const PortableServer::ObjectId &object_id, PortableServer::POA_ptr poa, const char *operation, PortableServer::Servant servant, TP_Servant_State *servant_state) | |
Constructor. | |
virtual | ~TP_Collocated_Asynch_Request () |
Virtual Destructor. | |
Protected Member Functions | |
virtual void | prepare_for_queue_i () |
virtual void | dispatch_i () |
Dispatch the request to the servant. | |
virtual void | cancel_i () |
Cancel the request. |
Represents a "queue-able", collocated, asynchronous, CORBA request.
This kind request is one-way collocated request with the default SYNC_SCOPE policy (SYNC_WITH_TRANSPORT) applied. It is cloned before enqueuing and the "enqueuing" thread never blocks.
Definition at line 47 of file CSD_TP_Collocated_Asynch_Request.h.
TAO::CSD::TP_Collocated_Asynch_Request::TP_Collocated_Asynch_Request | ( | TAO_ServerRequest & | server_request, | |
const PortableServer::ObjectId & | object_id, | |||
PortableServer::POA_ptr | poa, | |||
const char * | operation, | |||
PortableServer::Servant | servant, | |||
TP_Servant_State * | servant_state | |||
) |
Constructor.
Definition at line 9 of file CSD_TP_Collocated_Asynch_Request.inl.
: TP_Corba_Request(object_id, poa, operation, servant, servant_state, server_request) { }
TAO::CSD::TP_Collocated_Asynch_Request::~TP_Collocated_Asynch_Request | ( | ) | [virtual] |
void TAO::CSD::TP_Collocated_Asynch_Request::cancel_i | ( | ) | [protected, virtual] |
Cancel the request.
Implements TAO::CSD::TP_Request.
Definition at line 50 of file CSD_TP_Collocated_Asynch_Request.cpp.
{ this->do_cancel(); }
void TAO::CSD::TP_Collocated_Asynch_Request::dispatch_i | ( | ) | [protected, virtual] |
Dispatch the request to the servant.
Implements TAO::CSD::TP_Request.
Definition at line 29 of file CSD_TP_Collocated_Asynch_Request.cpp.
{ try { this->do_dispatch(); } catch (const ::CORBA::Exception&) { // Eat these. We probably should log these, but since we have already // unblocked the requesting thread there is no point in saving it or // doing anything with it. } catch (...) { // Eat these. We probably should log these, but since we have already // unblocked the requesting thread there is no point in saving it or // doing anything with it. } }
void TAO::CSD::TP_Collocated_Asynch_Request::prepare_for_queue_i | ( | ) | [protected, virtual] |
Prepare this TP_Collocated_Asynch_Request object to be placed into the request queue. This will cause the underlying TAO_ServerRequest object to be cloned.
Reimplemented from TAO::CSD::TP_Request.
Definition at line 22 of file CSD_TP_Collocated_Asynch_Request.cpp.
{ this->do_clone(); }