TAO 2.0.4
Public Member Functions | Protected Attributes
TAO_Transport_Mux_Strategy Class Reference

Strategy to determine whether the connection should be multiplexed for multiple requests or it is exclusive for a single request at a time. More...

#include <Transport_Mux_Strategy.h>

Inheritance diagram for TAO_Transport_Mux_Strategy:
Inheritance graph
[legend]
Collaboration diagram for TAO_Transport_Mux_Strategy:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 TAO_Transport_Mux_Strategy (TAO_Transport *transport)
 Base class constructor.
virtual ~TAO_Transport_Mux_Strategy (void)
 Base class destructor.
virtual CORBA::ULong request_id (void)=0
virtual int bind_dispatcher (CORBA::ULong request_id, ACE_Intrusive_Auto_Ptr< TAO_Reply_Dispatcher > rd)=0
virtual int unbind_dispatcher (CORBA::ULong request_id)=0
virtual int reply_timed_out (CORBA::ULong request_id)=0
virtual int dispatch_reply (TAO_Pluggable_Reply_Params &params)=0
virtual bool idle_after_send (void)=0
virtual bool idle_after_reply (void)=0
virtual void connection_closed (void)=0
virtual bool has_request (void)=0
 Do we have a request pending.

Protected Attributes

TAO_Transporttransport_
 Cache the transport reference.

Detailed Description

Strategy to determine whether the connection should be multiplexed for multiple requests or it is exclusive for a single request at a time.


Constructor & Destructor Documentation

TAO_Transport_Mux_Strategy::TAO_Transport_Mux_Strategy ( TAO_Transport transport)

Base class constructor.

TAO_Transport_Mux_Strategy::~TAO_Transport_Mux_Strategy ( void  ) [virtual]

Base class destructor.


Member Function Documentation

virtual int TAO_Transport_Mux_Strategy::bind_dispatcher ( CORBA::ULong  request_id,
ACE_Intrusive_Auto_Ptr< TAO_Reply_Dispatcher rd 
) [pure virtual]

Bind the dispatcher with the request id. Commonalities in the derived class implementations is kept here.

Implemented in TAO_Exclusive_TMS, and TAO_Muxed_TMS.

virtual void TAO_Transport_Mux_Strategy::connection_closed ( void  ) [pure virtual]

The transport object has closed the connection, inform all Reply dispatchers and waiting strategies.

Implemented in TAO_Exclusive_TMS, and TAO_Muxed_TMS.

virtual int TAO_Transport_Mux_Strategy::dispatch_reply ( TAO_Pluggable_Reply_Params params) [pure virtual]

Dispatch the reply for request_id, cleanup any resources allocated for that request.

Implemented in TAO_Exclusive_TMS, and TAO_Muxed_TMS.

virtual bool TAO_Transport_Mux_Strategy::has_request ( void  ) [pure virtual]

Do we have a request pending.

Implemented in TAO_Exclusive_TMS, and TAO_Muxed_TMS.

virtual bool TAO_Transport_Mux_Strategy::idle_after_reply ( void  ) [pure virtual]

Request is sent and the reply is received. Idle the transport now. The return value indicates whether idling was successful or not.

Implemented in TAO_Exclusive_TMS, and TAO_Muxed_TMS.

virtual bool TAO_Transport_Mux_Strategy::idle_after_send ( void  ) [pure virtual]

Request has been just sent, but the reply is not received. Idle the transport now. The return value indicates whether idling was successful or not.

Implemented in TAO_Exclusive_TMS, and TAO_Muxed_TMS.

virtual int TAO_Transport_Mux_Strategy::reply_timed_out ( CORBA::ULong  request_id) [pure virtual]

Dispatch a reply timeout for request request_id

Implemented in TAO_Exclusive_TMS, and TAO_Muxed_TMS.

virtual CORBA::ULong TAO_Transport_Mux_Strategy::request_id ( void  ) [pure virtual]

Generate and return an unique request id for the current invocation.

Implemented in TAO_Exclusive_TMS, and TAO_Muxed_TMS.

virtual int TAO_Transport_Mux_Strategy::unbind_dispatcher ( CORBA::ULong  request_id) [pure virtual]

Unbind the dispatcher, the client is no longer waiting for the request, for example, because the request timedout. The strategy can (must) cleanup any resources associated with the request. A later reply for that request should be ignored.

Implemented in TAO_Exclusive_TMS, and TAO_Muxed_TMS.


Member Data Documentation

Cache the transport reference.


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