Public Member Functions | Protected Member Functions

TAO::CSD::TP_Collocated_Asynch_Request Class Reference

Represents a "queue-able", collocated, asynchronous, CORBA request. More...

#include <CSD_TP_Collocated_Asynch_Request.h>

Inheritance diagram for TAO::CSD::TP_Collocated_Asynch_Request:
Inheritance graph
[legend]
Collaboration diagram for TAO::CSD::TP_Collocated_Asynch_Request:
Collaboration graph
[legend]

List of all members.

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.

Detailed Description

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.


Constructor & Destructor Documentation

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]

Virtual Destructor.

Definition at line 16 of file CSD_TP_Collocated_Asynch_Request.cpp.

{
}


Member Function Documentation

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();
}


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines