Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

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 Methods

 TAO_Default_Client_Strategy_Factory (void)
 Constructor. More...

virtual ~TAO_Default_Client_Strategy_Factory (void)
 Destructor. More...

virtual int init (int argc, ACE_TCHAR *argv[])
 Dynamic linking hook. More...

int parse_args (int argc, ACE_TCHAR *argv[])
 Parse svc.conf arguments. More...

virtual ACE_Lockcreate_profile_lock (void)
 Create the lock for the forwarding Profile used by the <TAO_GIOP_Invocation::location_forward> and the <TAO_GIOP_Invocation::start>. More...

virtual TAO_Transport_Mux_Strategycreate_transport_mux_strategy (TAO_Transport *transport)
 Create the correct client request muxing strategy. More...

virtual int allow_callback (void)
 Does the client allow any form of callback? More...

virtual TAO_Wait_Strategycreate_wait_strategy (TAO_Transport *transport)
 Create the correct client <wait_for_reply> strategy. More...

virtual TAO_Connect_Strategycreate_connect_strategy (TAO_ORB_Core *)
 Create the correct client <asynch_connect> strategy. More...

virtual ACE_Lockcreate_ft_service_retention_id_lock (void)
 Create a lock to be used by the TAO_Fault_Tolerant_Service class to generate unique retention ids. More...


Protected Methods

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 }
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. More...

Transport_Mux_Strategy transport_mux_strategy_
 The client Request Mux Strategy. More...

Wait_Strategy wait_strategy_
 The wait-for-reply strategy. More...

Connect_Strategy connect_strategy_
 The connection initiation strategy. More...


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]
 

Enumeration values:
TAO_BLOCKED_CONNECT 
TAO_REACTIVE_CONNECT 
TAO_LEADER_FOLLOWER_CONNECT 

enum TAO_Default_Client_Strategy_Factory::Lock_Type [private]
 

Enumeration values:
TAO_NULL_LOCK 
TAO_THREAD_LOCK 

enum TAO_Default_Client_Strategy_Factory::Transport_Mux_Strategy [private]
 

Enumeration values:
TAO_MUXED_TMS 
TAO_EXCLUSIVE_TMS 

enum TAO_Default_Client_Strategy_Factory::Wait_Strategy [private]
 

Enumeration values:
TAO_WAIT_ON_LEADER_FOLLOWER 
TAO_WAIT_ON_REACTOR 
TAO_WAIT_ON_READ 


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   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 forwarding Profile used by the <TAO_GIOP_Invocation::location_forward> and the <TAO_GIOP_Invocation::start>.

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.

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.

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::profile_lock_type_ [private]
 

the lock type for forwarding IIOP Profile.

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 Thu Oct 10 18:31:02 2002 for TAO by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001