TAO_Strategies
2.0.8
|
#include <DIOP_Acceptor.h>
Public Member Functions | |
TAO_DIOP_Acceptor (void) | |
Constructor. | |
~TAO_DIOP_Acceptor (void) | |
Destructor. | |
const ACE_INET_Addr & | address (void) const |
const ACE_INET_Addr * | endpoints (void) |
Returns the array of endpoints in this acceptor. | |
const ACE_INET_Addr & | default_address (void) const |
Returns address for default endpoint. | |
void | set_default_address (const ACE_INET_Addr &addr) |
Set address for default endpoint. | |
virtual int | hostname (TAO_ORB_Core *orb_core, ACE_INET_Addr &addr, char *&host, const char *specified_hostname=0) |
int | dotted_decimal_address (ACE_INET_Addr &addr, char *&host) |
The TAO_Acceptor Methods | |
Please check the documentation in Transport_Acceptor.h for details. | |
virtual int | open (TAO_ORB_Core *orb_core, ACE_Reactor *reactor, int version_major, int version_minor, const char *address, const char *options=0) |
virtual int | open_default (TAO_ORB_Core *orb_core, ACE_Reactor *reactor, int version_major, int version_minor, const char *options=0) |
virtual int | close (void) |
virtual int | create_profile (const TAO::ObjectKey &object_key, TAO_MProfile &mprofile, CORBA::Short priority) |
virtual int | is_collocated (const TAO_Endpoint *endpoint) |
virtual CORBA::ULong | endpoint_count (void) |
virtual int | object_key (IOP::TaggedProfile &profile, TAO::ObjectKey &key) |
Protected Member Functions | |
int | parse_address (const char *address, ACE_INET_Addr &addr, ACE_CString &specified_hostname, int *def_type=0) |
virtual int | open_i (const ACE_INET_Addr &addr, ACE_Reactor *reactor) |
int | probe_interfaces (TAO_ORB_Core *orb_core, int def_type=AF_UNSPEC) |
virtual int | parse_options (const char *options) |
Parse protocol specific options. | |
int | create_new_profile (const TAO::ObjectKey &object_key, TAO_MProfile &mprofile, CORBA::Short priority) |
int | create_shared_profile (const TAO::ObjectKey &object_key, TAO_MProfile &mprofile, CORBA::Short priority) |
Protected Attributes | |
ACE_INET_Addr * | addrs_ |
char ** | hosts_ |
CORBA::ULong | endpoint_count_ |
TAO_GIOP_Message_Version | version_ |
TAO_ORB_Core * | orb_core_ |
ORB Core. | |
ACE_INET_Addr | default_address_ |
Address for default endpoint. | |
Private Attributes | |
TAO_DIOP_Connection_Handler * | connection_handler_ |
The DIOP-specific bridge class for the concrete acceptor.
TAO_DIOP_Acceptor::TAO_DIOP_Acceptor | ( | void | ) |
Constructor.
TAO_DIOP_Acceptor::~TAO_DIOP_Acceptor | ( | void | ) |
Destructor.
const ACE_INET_Addr & TAO_DIOP_Acceptor::address | ( | void | ) | const [inline] |
@ Helper method for the implementation repository, should go away
int TAO_DIOP_Acceptor::close | ( | void | ) | [virtual] |
Implements TAO_Acceptor.
int TAO_DIOP_Acceptor::create_new_profile | ( | const TAO::ObjectKey & | object_key, |
TAO_MProfile & | mprofile, | ||
CORBA::Short | priority | ||
) | [protected] |
Helper method to add a new profile to the mprofile for each endpoint.
int TAO_DIOP_Acceptor::create_profile | ( | const TAO::ObjectKey & | object_key, |
TAO_MProfile & | mprofile, | ||
CORBA::Short | priority | ||
) | [virtual] |
Implements TAO_Acceptor.
int TAO_DIOP_Acceptor::create_shared_profile | ( | const TAO::ObjectKey & | object_key, |
TAO_MProfile & | mprofile, | ||
CORBA::Short | priority | ||
) | [protected] |
Helper method to create a profile that contains all of our endpoints.
const ACE_INET_Addr & TAO_DIOP_Acceptor::default_address | ( | void | ) | const [inline] |
Returns address for default endpoint.
int TAO_DIOP_Acceptor::dotted_decimal_address | ( | ACE_INET_Addr & | addr, |
char *& | host | ||
) |
Set the host name for the given address using the dotted decimal format.
CORBA::ULong TAO_DIOP_Acceptor::endpoint_count | ( | void | ) | [virtual] |
Implements TAO_Acceptor.
const ACE_INET_Addr * TAO_DIOP_Acceptor::endpoints | ( | void | ) | [inline] |
Returns the array of endpoints in this acceptor.
int TAO_DIOP_Acceptor::hostname | ( | TAO_ORB_Core * | orb_core, |
ACE_INET_Addr & | addr, | ||
char *& | host, | ||
const char * | specified_hostname = 0 |
||
) | [virtual] |
Set the host name for the given addr. A hostname may be forced by using specified_hostname. This is useful if the given address corresponds to more than one hostname and the desired one cannot be determined in any other way.
int TAO_DIOP_Acceptor::is_collocated | ( | const TAO_Endpoint * | endpoint | ) | [virtual] |
Implements TAO_Acceptor.
int TAO_DIOP_Acceptor::object_key | ( | IOP::TaggedProfile & | profile, |
TAO::ObjectKey & | key | ||
) | [virtual] |
Implements TAO_Acceptor.
int TAO_DIOP_Acceptor::open | ( | TAO_ORB_Core * | orb_core, |
ACE_Reactor * | reactor, | ||
int | version_major, | ||
int | version_minor, | ||
const char * | address, | ||
const char * | options = 0 |
||
) | [virtual] |
Implements TAO_Acceptor.
int TAO_DIOP_Acceptor::open_default | ( | TAO_ORB_Core * | orb_core, |
ACE_Reactor * | reactor, | ||
int | version_major, | ||
int | version_minor, | ||
const char * | options = 0 |
||
) | [virtual] |
Implements TAO_Acceptor.
int TAO_DIOP_Acceptor::open_i | ( | const ACE_INET_Addr & | addr, |
ACE_Reactor * | reactor | ||
) | [protected, virtual] |
Implement the common part of the open*() methods. This method is virtual to allow a derived class implementation to be invoked instead.
int TAO_DIOP_Acceptor::parse_address | ( | const char * | address, |
ACE_INET_Addr & | addr, | ||
ACE_CString & | specified_hostname, | ||
int * | def_type = 0 |
||
) | [protected] |
Helper method Clear out 'addr' & 'specified_hostname' and initialize them based upon 'address'. If a non-zero pointer is passed in for def_type, this will be set to AF_INET6 if IPv6 support is enabled and supplied hostname is either [] or [::]. It will be set to AF_INET if the hostname is 0.0.0.0, otherwise it is set to AF_UNSPEC. This value is then passed to probe_interfaces by open.
int TAO_DIOP_Acceptor::parse_options | ( | const char * | options | ) | [protected, virtual] |
Parse protocol specific options.
int TAO_DIOP_Acceptor::probe_interfaces | ( | TAO_ORB_Core * | orb_core, |
int | def_type = AF_UNSPEC |
||
) | [protected] |
Probe the system for available network interfaces, and initialize the <addrs_> array with an ACE_INET_Addr for each network interface. The port for each initialized ACE_INET_Addr will be set in the open_i() method. This method only gets invoked when no explicit hostname is provided in the specified endpoint.
The optional argument def_type is used to constrain the resulting list of interfaces to be either only IPv6 or IPv4, or both, when ACE_HAS_IPV6 is enabled and the source endpoint was an explicitly declared wildcard.
void TAO_DIOP_Acceptor::set_default_address | ( | const ACE_INET_Addr & | addr | ) | [inline] |
Set address for default endpoint.
ACE_INET_Addr* TAO_DIOP_Acceptor::addrs_ [protected] |
Array of ACE_INET_Addr instances, each one corresponding to a given network interface.
ACE_INET_Addr TAO_DIOP_Acceptor::default_address_ [protected] |
Address for default endpoint.
CORBA::ULong TAO_DIOP_Acceptor::endpoint_count_ [protected] |
The number of host names cached in the hosts_ array (equivalent to the number of endpoints opened by this Acceptor).
char** TAO_DIOP_Acceptor::hosts_ [protected] |
Cache the information about the endpoints serviced by this acceptor. There may in fact be multiple hostnames for this endpoint. For example, if the IP address is INADDR_ANY (0.0.0.0) then there will be possibly a different hostname for each interface.
TAO_ORB_Core* TAO_DIOP_Acceptor::orb_core_ [protected] |
ORB Core.
TAO_GIOP_Message_Version TAO_DIOP_Acceptor::version_ [protected] |
The GIOP version for this endpoint @ Theoretically they shouldn't be here!! We need to look at a way to move this out