TAO_Default_Client_Strategy_Factory Class Reference

This is the "default" client strategy factor for TAO. It includes strategies that are configured through command-line options so that everything operates as if there were no dynamically-linkable strategies. More...

#include <default_client.h>

Inheritance diagram for TAO_Default_Client_Strategy_Factory:

Inheritance graph
[legend]
Collaboration diagram for TAO_Default_Client_Strategy_Factory:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 TAO_Default_Client_Strategy_Factory (void)
 Constructor.
virtual ~TAO_Default_Client_Strategy_Factory (void)
 Destructor.
virtual int init (int argc, ACE_TCHAR *argv[])
 Dynamic linking hook.
int parse_args (int argc, ACE_TCHAR *argv[])
 Parse svc.conf arguments.
virtual ACE_Lockcreate_profile_lock (void)
virtual TAO_Configurable_Refcount create_profile_refcount (void)
 Create the refcount for the profile.
virtual
TAO_Transport_Mux_Strategy
create_transport_mux_strategy (TAO_Transport *transport)
 Create the correct client transport muxing strategy.
virtual ACE_Lockcreate_transport_mux_strategy_lock (void)
 Create the correct lock for request muxing strategy.
virtual int reply_dispatcher_table_size (void) const
 Return the size of the reply dispatcher table.
virtual int allow_callback (void)
 Does the client allow any form of callback?
virtual TAO_Wait_Strategycreate_wait_strategy (TAO_Transport *transport)
 Create the correct client <wait_for_reply> strategy.
virtual TAO_Connect_Strategycreate_connect_strategy (TAO_ORB_Core *)
 Create the correct client <asynch_connect> strategy.
virtual bool use_cleanup_options (void) const
 Cleanup options for wait strategy.
virtual Connect_Strategy connect_strategy (void) const
 Return the selected connection strategy option.

Protected Member Functions

void report_option_value_error (const ACE_TCHAR *option_name, const ACE_TCHAR *option_value)

Private Types

enum  Lock_Type { TAO_NULL_LOCK, TAO_THREAD_LOCK }
enum  Transport_Mux_Strategy { TAO_MUXED_TMS, TAO_EXCLUSIVE_TMS }
enum  Wait_Strategy { TAO_WAIT_ON_LEADER_FOLLOWER, TAO_WAIT_ON_REACTOR, TAO_WAIT_ON_READ, TAO_WAIT_ON_LF_NO_UPCALL }

Private Attributes

Lock_Type profile_lock_type_
 the lock type for forwarding IIOP Profile
Transport_Mux_Strategy transport_mux_strategy_
 The client Request Mux Strategy.
Wait_Strategy wait_strategy_
 The wait-for-reply strategy.
Connect_Strategy connect_strategy_
 The connection initiation strategy.
int rd_table_size_
 Size of the reply dispatcher table.
Lock_Type muxed_strategy_lock_type_
 Type of lock for the muxed_strategy.
bool use_cleanup_options_
 Cleanupoptions for RW strategy.


Detailed Description

This is the "default" client strategy factor for TAO. It includes strategies that are configured through command-line options so that everything operates as if there were no dynamically-linkable strategies.

Member Enumeration Documentation

Enumerator:
TAO_NULL_LOCK 
TAO_THREAD_LOCK 

Enumerator:
TAO_MUXED_TMS 
TAO_EXCLUSIVE_TMS 

Enumerator:
TAO_WAIT_ON_LEADER_FOLLOWER 
TAO_WAIT_ON_REACTOR 
TAO_WAIT_ON_READ 
TAO_WAIT_ON_LF_NO_UPCALL 


Constructor & Destructor Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_Default_Client_Strategy_Factory::TAO_Default_Client_Strategy_Factory ( void   ) 

Constructor.

TAO_Default_Client_Strategy_Factory::~TAO_Default_Client_Strategy_Factory ( void   )  [virtual]

Destructor.


Member Function Documentation

int TAO_Default_Client_Strategy_Factory::init ( int  argc,
ACE_TCHAR argv[] 
) [virtual]

Dynamic linking hook.

Reimplemented from ACE_Shared_Object.

int TAO_Default_Client_Strategy_Factory::parse_args ( int  argc,
ACE_TCHAR argv[] 
)

Parse svc.conf arguments.

ACE_Lock * TAO_Default_Client_Strategy_Factory::create_profile_lock ( void   )  [virtual]

Create the lock for the stub and the profile

Reimplemented from TAO_Client_Strategy_Factory.

TAO_Configurable_Refcount TAO_Default_Client_Strategy_Factory::create_profile_refcount ( void   )  [virtual]

Create the refcount for the profile.

Reimplemented from TAO_Client_Strategy_Factory.

TAO_Transport_Mux_Strategy * TAO_Default_Client_Strategy_Factory::create_transport_mux_strategy ( TAO_Transport transport  )  [virtual]

Create the correct client transport muxing strategy.

Reimplemented from TAO_Client_Strategy_Factory.

ACE_Lock * TAO_Default_Client_Strategy_Factory::create_transport_mux_strategy_lock ( void   )  [virtual]

Create the correct lock for request muxing strategy.

Reimplemented from TAO_Client_Strategy_Factory.

int TAO_Default_Client_Strategy_Factory::reply_dispatcher_table_size ( void   )  const [virtual]

Return the size of the reply dispatcher table.

Reimplemented from TAO_Client_Strategy_Factory.

int TAO_Default_Client_Strategy_Factory::allow_callback ( void   )  [virtual]

Does the client allow any form of callback?

Reimplemented from TAO_Client_Strategy_Factory.

TAO_Wait_Strategy * TAO_Default_Client_Strategy_Factory::create_wait_strategy ( TAO_Transport transport  )  [virtual]

Create the correct client <wait_for_reply> strategy.

Reimplemented from TAO_Client_Strategy_Factory.

TAO_Connect_Strategy * TAO_Default_Client_Strategy_Factory::create_connect_strategy ( TAO_ORB_Core  )  [virtual]

Create the correct client <asynch_connect> strategy.

Reimplemented from TAO_Client_Strategy_Factory.

bool TAO_Default_Client_Strategy_Factory::use_cleanup_options ( void   )  const [virtual]

Cleanup options for wait strategy.

Only applicable to RW wait strategy

Reimplemented from TAO_Client_Strategy_Factory.

TAO_Client_Strategy_Factory::Connect_Strategy TAO_Default_Client_Strategy_Factory::connect_strategy ( void   )  const [virtual]

Return the selected connection strategy option.

Reimplemented from TAO_Client_Strategy_Factory.

void TAO_Default_Client_Strategy_Factory::report_option_value_error ( const ACE_TCHAR option_name,
const ACE_TCHAR option_value 
) [protected]


Member Data Documentation

the lock type for forwarding IIOP Profile

The client Request Mux Strategy.

The wait-for-reply strategy.

The connection initiation strategy.

Size of the reply dispatcher table.

Type of lock for the muxed_strategy.

Cleanupoptions for RW strategy.


The documentation for this class was generated from the following files:

Generated on Thu Nov 27 05:08:56 2008 for TAO by  doxygen 1.5.6