TAO_IIOP_Connector Class Reference

IIOP-specific Connector bridge for pluggable protocols. More...

#include <IIOP_Connector.h>

Inheritance diagram for TAO_IIOP_Connector:

Inheritance graph
[legend]
Collaboration diagram for TAO_IIOP_Connector:

Collaboration graph
[legend]
List of all members.

Public Types

typedef TAO_Connect_Concurrency_Strategy<
TAO_IIOP_Connection_Handler
TAO_IIOP_CONNECT_CONCURRENCY_STRATEGY
typedef TAO_Connect_Creation_Strategy<
TAO_IIOP_Connection_Handler
TAO_IIOP_CONNECT_CREATION_STRATEGY
typedef ACE_Connect_Strategy<
TAO_IIOP_Connection_Handler,
ACE_SOCK_CONNECTOR
TAO_IIOP_CONNECT_STRATEGY
typedef ACE_Strategy_Connector<
TAO_IIOP_Connection_Handler,
ACE_SOCK_CONNECTOR
TAO_IIOP_BASE_CONNECTOR

Public Member Functions

 TAO_IIOP_Connector (CORBA::Boolean flag=false)
 Constructor.
 ~TAO_IIOP_Connector (void)
 Destructor.
int open (TAO_ORB_Core *orb_core)
 Initialize object and register with reactor.
int close (void)
 Shutdown Connector bridge and concrete Connector.
TAO_Profilecreate_profile (TAO_InputCDR &cdr)
virtual int check_prefix (const char *endpoint)
virtual char object_key_delimiter (void) const
 Return the object key delimiter to use or expect.

Protected Member Functions

virtual int supports_parallel_connects (void) const
int set_validate_endpoint (TAO_Endpoint *ep)
virtual TAO_Transportmake_connection (TAO::Profile_Transport_Resolver *r, TAO_Transport_Descriptor_Interface &desc, ACE_Time_Value *timeout=0)
 Make a connection.
virtual TAO_Transportmake_parallel_connection (TAO::Profile_Transport_Resolver *r, TAO_Transport_Descriptor_Interface &desc, ACE_Time_Value *timeout=0)
virtual TAO_Profilemake_profile (void)
virtual int cancel_svc_handler (TAO_Connection_Handler *svc_handler)
 Cancel the passed cvs handler from the connector.

Protected Attributes

const bool lite_flag_
 Do we need to use a GIOP_Lite for sending messages?

Private Member Functions

int begin_connection (TAO_IIOP_Connection_Handler *&svc_handler, TAO::Profile_Transport_Resolver *r, TAO_IIOP_Endpoint *endpoint, ACE_Time_Value *timeout=0)
TAO_Transportcomplete_connection (int result, TAO_Transport_Descriptor_Interface &desc, TAO_IIOP_Connection_Handler **&sh_list, TAO_IIOP_Endpoint **ep_list, unsigned count, TAO::Profile_Transport_Resolver *r, TAO_LF_Multi_Event *mev, ACE_Time_Value *timeout=0)
TAO_IIOP_Endpointremote_endpoint (TAO_Endpoint *ep)
 Return the remote endpoint, a helper function.

Private Attributes

TAO_IIOP_CONNECT_STRATEGY connect_strategy_
 Our connect strategy.
TAO_IIOP_BASE_CONNECTOR base_connector_
 The connector initiating connection requests for IIOP.

Detailed Description

IIOP-specific Connector bridge for pluggable protocols.

Concrete instance of the TAO_Connector class. Responsible for establishing a connection with a server and is called from the Connector_Registory.


Member Typedef Documentation

typedef ACE_Strategy_Connector<TAO_IIOP_Connection_Handler, ACE_SOCK_CONNECTOR> TAO_IIOP_Connector::TAO_IIOP_BASE_CONNECTOR

typedef TAO_Connect_Concurrency_Strategy<TAO_IIOP_Connection_Handler> TAO_IIOP_Connector::TAO_IIOP_CONNECT_CONCURRENCY_STRATEGY

typedef TAO_Connect_Creation_Strategy<TAO_IIOP_Connection_Handler> TAO_IIOP_Connector::TAO_IIOP_CONNECT_CREATION_STRATEGY

typedef ACE_Connect_Strategy<TAO_IIOP_Connection_Handler, ACE_SOCK_CONNECTOR> TAO_IIOP_Connector::TAO_IIOP_CONNECT_STRATEGY


Constructor & Destructor Documentation

TAO_IIOP_Connector::TAO_IIOP_Connector ( CORBA::Boolean  flag = false  ) 

Constructor.

TAO_IIOP_Connector::~TAO_IIOP_Connector ( void   ) 

Destructor.


Member Function Documentation

int TAO_IIOP_Connector::begin_connection ( TAO_IIOP_Connection_Handler *&  svc_handler,
TAO::Profile_Transport_Resolver *  r,
TAO_IIOP_Endpoint endpoint,
ACE_Time_Value timeout = 0 
) [private]

This is the first half of making a connection. Both make_connection and make_parallel_connection will start out using begin_connection.

int TAO_IIOP_Connector::cancel_svc_handler ( TAO_Connection_Handler svc_handler  )  [protected, virtual]

Cancel the passed cvs handler from the connector.

Implements TAO_Connector.

int TAO_IIOP_Connector::check_prefix ( const char *  endpoint  )  [virtual]

Check that the prefix of the provided endpoint is valid for use with a given pluggable protocol.

Implements TAO_Connector.

int TAO_IIOP_Connector::close ( void   )  [virtual]

Shutdown Connector bridge and concrete Connector.

Implements TAO_Connector.

TAO_Transport * TAO_IIOP_Connector::complete_connection ( int  result,
TAO_Transport_Descriptor_Interface desc,
TAO_IIOP_Connection_Handler **&  sh_list,
TAO_IIOP_Endpoint **  ep_list,
unsigned  count,
TAO::Profile_Transport_Resolver *  r,
TAO_LF_Multi_Event mev,
ACE_Time_Value timeout = 0 
) [private]

This is the second half of making a connection when several endpoints are involved. This works with modified wait strategies to wait for one of many transports, and when once completes it will cancel the rest. The winning transport is returned.

TAO_Profile * TAO_IIOP_Connector::create_profile ( TAO_InputCDR cdr  )  [virtual]

Create a profile for this protocol and initialize it based on the encapsulation in cdr

Implements TAO_Connector.

TAO_Transport * TAO_IIOP_Connector::make_connection ( TAO::Profile_Transport_Resolver *  r,
TAO_Transport_Descriptor_Interface desc,
ACE_Time_Value timeout = 0 
) [protected, virtual]

Make a connection.

Implements TAO_Connector.

TAO_Transport * TAO_IIOP_Connector::make_parallel_connection ( TAO::Profile_Transport_Resolver *  r,
TAO_Transport_Descriptor_Interface desc,
ACE_Time_Value timeout = 0 
) [protected, virtual]

Make a connection using - not a pure virtual since not all protocols support this.

Reimplemented from TAO_Connector.

TAO_Profile * TAO_IIOP_Connector::make_profile ( void   )  [protected, virtual]

More TAO_Connector methods, please check the documentation on Transport_Connector.h

Implements TAO_Connector.

char TAO_IIOP_Connector::object_key_delimiter ( void   )  const [virtual]

Return the object key delimiter to use or expect.

Implements TAO_Connector.

int TAO_IIOP_Connector::open ( TAO_ORB_Core orb_core  )  [virtual]

Initialize object and register with reactor.

Implements TAO_Connector.

TAO_IIOP_Endpoint * TAO_IIOP_Connector::remote_endpoint ( TAO_Endpoint ep  )  [private]

Return the remote endpoint, a helper function.

int TAO_IIOP_Connector::set_validate_endpoint ( TAO_Endpoint ep  )  [protected, virtual]

Set and validate endpoint. We need to do this to initialize our remote *_Addr's which have not been done during IOR decode.

Implements TAO_Connector.

int TAO_IIOP_Connector::supports_parallel_connects ( void   )  const [protected, virtual]

A flag indicating the actual connector supports parallel connection attempts. The base implementation always returns 0. Override to return non-zero if parallel connection attempts may be tried.

Reimplemented from TAO_Connector.


Member Data Documentation

TAO_IIOP_BASE_CONNECTOR TAO_IIOP_Connector::base_connector_ [private]

The connector initiating connection requests for IIOP.

TAO_IIOP_CONNECT_STRATEGY TAO_IIOP_Connector::connect_strategy_ [private]

Our connect strategy.

const bool TAO_IIOP_Connector::lite_flag_ [protected]

Do we need to use a GIOP_Lite for sending messages?


The documentation for this class was generated from the following files:
Generated on Thu Mar 22 07:27:34 2007 for TAO by  doxygen 1.4.7-1