3 //=============================================================================
5 * @file DIOP_Connector.h
7 * DIOP specific connector processing
9 * @author Michael Kircher
11 //=============================================================================
13 #ifndef TAO_DIOP_CONNECTOR_H
14 #define TAO_DIOP_CONNECTOR_H
16 #include /**/ "ace/pre.h"
18 #include "tao/orbconf.h"
20 #if !defined (ACE_LACKS_PRAGMA_ONCE)
22 #endif /* ACE_LACKS_PRAGMA_ONCE */
24 #if defined (TAO_HAS_DIOP) && (TAO_HAS_DIOP != 0)
26 #include "tao/Strategies/DIOP_Connection_Handler.h"
27 #include "tao/Transport_Connector.h"
29 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
32 class TAO_DIOP_Endpoint
;
34 // ****************************************************************
37 * @class TAO_DIOP_Connector
39 * @brief DIOP-specific Connector bridge for pluggable protocols.
41 * Concrete instance of the TAO_Connector class. Responsible
42 * for establishing a connection with a server and is called from the
43 * Connector_Registory.
45 class TAO_Strategies_Export TAO_DIOP_Connector
: public TAO_Connector
49 TAO_DIOP_Connector ();
52 ~TAO_DIOP_Connector () = default;
55 * @name The TAO_Connector Methods
57 * Please check the documentation in Transport_Connector.h for details.
60 int open (TAO_ORB_Core
*orb_core
);
63 TAO_Profile
*create_profile (TAO_InputCDR
& cdr
);
65 virtual int check_prefix (const char *endpoint
);
67 virtual char object_key_delimiter () const;
72 * @name More TAO_Connector Methods
74 * Please check the documentation in Transport_Connector.h for details.
77 int set_validate_endpoint (TAO_Endpoint
*ep
);
79 TAO_Transport
*make_connection (TAO::Profile_Transport_Resolver
*r
,
80 TAO_Transport_Descriptor_Interface
&desc
,
81 ACE_Time_Value
*timeout
= 0);
83 virtual TAO_Profile
* make_profile ();
86 /// Cancel the passed cvs handler from the connector
87 int cancel_svc_handler (TAO_Connection_Handler
* svc_handler
);
90 /// Return the remote endpoint, a helper function
91 TAO_DIOP_Endpoint
*remote_endpoint (TAO_Endpoint
*ep
);
94 TAO_END_VERSIONED_NAMESPACE_DECL
96 #endif /* TAO_HAS_DIOP && TAO_HAS_DIOP != 0 */
98 #include /**/ "ace/post.h"
100 #endif /* TAO_DIOP_CONNECTOR_H */