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_Transport_Mux_Strategycreate_transport_mux_strategy (TAO_Transport *transport)
 Create the correct client request 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 ACE_Lockcreate_ft_service_retention_id_lock (void)

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 }
enum  Connect_Strategy { TAO_BLOCKED_CONNECT, TAO_REACTIVE_CONNECT, TAO_LEADER_FOLLOWER_CONNECT }

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.

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

enum TAO_Default_Client_Strategy_Factory::Connect_Strategy [private]
 

Enumerator:
TAO_BLOCKED_CONNECT 
TAO_REACTIVE_CONNECT 
TAO_LEADER_FOLLOWER_CONNECT 

enum TAO_Default_Client_Strategy_Factory::Lock_Type [private]
 

Enumerator:
TAO_NULL_LOCK 
TAO_THREAD_LOCK 

enum TAO_Default_Client_Strategy_Factory::Transport_Mux_Strategy [private]
 

Enumerator:
TAO_MUXED_TMS 
TAO_EXCLUSIVE_TMS 

enum TAO_Default_Client_Strategy_Factory::Wait_Strategy [private]
 

Enumerator:
TAO_WAIT_ON_LEADER_FOLLOWER 
TAO_WAIT_ON_REACTOR 
TAO_WAIT_ON_READ 
TAO_WAIT_ON_LF_NO_UPCALL 


Constructor & Destructor Documentation

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::allow_callback void   )  [virtual]
 

Does the client allow any form of callback?

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.

ACE_Lock * TAO_Default_Client_Strategy_Factory::create_ft_service_retention_id_lock void   )  [virtual]
 

Create a lock to be used by the TAO_Fault_Tolerant_Service class to generate unique retention ids

Reimplemented from TAO_Client_Strategy_Factory.

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_Transport_Mux_Strategy * TAO_Default_Client_Strategy_Factory::create_transport_mux_strategy TAO_Transport transport  )  [virtual]
 

Create the correct client request 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.

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.

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.

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.

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


Member Data Documentation

Connect_Strategy TAO_Default_Client_Strategy_Factory::connect_strategy_ [private]
 

The connection initiation strategy.

Lock_Type TAO_Default_Client_Strategy_Factory::muxed_strategy_lock_type_ [private]
 

Type of lock for the muxed_strategy.

Lock_Type TAO_Default_Client_Strategy_Factory::profile_lock_type_ [private]
 

the lock type for forwarding IIOP Profile

int TAO_Default_Client_Strategy_Factory::rd_table_size_ [private]
 

Size of the reply dispatcher table.

Transport_Mux_Strategy TAO_Default_Client_Strategy_Factory::transport_mux_strategy_ [private]
 

The client Request Mux Strategy.

Wait_Strategy TAO_Default_Client_Strategy_Factory::wait_strategy_ [private]
 

The wait-for-reply strategy.


The documentation for this class was generated from the following files:
Generated on Wed Nov 23 16:02:16 2005 for TAO by  doxygen 1.4.5