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 (void)
 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.

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


Constructor & Destructor Documentation

TAO_IIOP_Connector::TAO_IIOP_Connector ( void   ) 

Constructor.

TAO_IIOP_Connector::~TAO_IIOP_Connector ( void   ) 

Destructor.


Member Function Documentation

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

Initialize object and register with reactor.

Implements TAO_Connector.

int TAO_IIOP_Connector::close ( void   )  [virtual]

Shutdown Connector bridge and concrete Connector.

Implements TAO_Connector.

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.

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.

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::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.

int TAO_IIOP_Connector::set_validate_endpoint ( TAO_Endpoint endpoint  )  [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.

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.

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::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.

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_IIOP_Endpoint * TAO_IIOP_Connector::remote_endpoint ( TAO_Endpoint ep  )  [private]

Return the remote endpoint, a helper function.


Member Data Documentation

Our connect strategy.

The connector initiating connection requests for IIOP.


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

Generated on Thu Nov 27 05:09:28 2008 for TAO by  doxygen 1.5.6