TAO
2.3.3
|
#include <IIOP_Endpoint.h>
Public Member Functions | |
TAO_IIOP_Endpoint (void) | |
Default constructor. More... | |
TAO_IIOP_Endpoint (const char *host, CORBA::UShort port, const ACE_INET_Addr &addr, CORBA::Short priority=TAO_INVALID_PRIORITY) | |
TAO_IIOP_Endpoint (const ACE_INET_Addr &addr, int use_dotted_decimal_addresses) | |
Constructor. More... | |
TAO_IIOP_Endpoint (const char *host, CORBA::UShort port, CORBA::Short priority) | |
Constructor. This constructor is used when decoding endpoints. More... | |
~TAO_IIOP_Endpoint (void) | |
Destructor. More... | |
virtual TAO_Endpoint * | next (void) |
Endpoints can be linked in a list. More... | |
virtual TAO_Endpoint * | next_filtered (TAO_ORB_Core *, TAO_Endpoint *root) |
virtual int | addr_to_string (char *buffer, size_t length) |
Return a string representation for the address. More... | |
virtual TAO_Endpoint * | duplicate (void) |
Makes a copy of this . More... | |
virtual CORBA::Boolean | is_equivalent (const TAO_Endpoint *other_endpoint) |
virtual CORBA::ULong | hash (void) |
Return a hash value for this object. More... | |
const ACE_INET_Addr & | object_addr (void) const |
Return a reference to the <object_addr>. More... | |
const char * | host (void) const |
const char * | host (const char *h) |
CORBA::UShort | port (void) const |
Return the port number. More... | |
CORBA::UShort | port (CORBA::UShort p) |
Set the port number. More... | |
bool | is_preferred_network (void) const |
Do we have a preferred local network for the target? More... | |
const char * | preferred_network (void) const |
Return the preferred network if any. More... | |
TAO_IIOP_Endpoint & | operator= (const TAO_IIOP_Endpoint &other) |
Public Member Functions inherited from TAO_Endpoint | |
TAO_Endpoint (CORBA::ULong tag, CORBA::Short priority=TAO_INVALID_PRIORITY) | |
Constructor. More... | |
virtual | ~TAO_Endpoint (void) |
Destructor. More... | |
CORBA::ULong | tag (void) const |
IOP protocol tag accessor. More... | |
void | priority (CORBA::Short priority) |
priority_ attribute setter. More... | |
CORBA::Short | priority (void) const |
priority_ attribute getter. More... | |
Static Public Member Functions | |
static void | find_preferred_interfaces (const ACE_CString &host, const ACE_CString &csvPreferred, ACE_Vector< ACE_CString > &preferred) |
Private Member Functions | |
TAO_IIOP_Endpoint * | next_filtered_i (TAO_IIOP_Endpoint *root, bool ipv6_only, bool prefer_ipv6, bool want_ipv6) |
int | set (const ACE_INET_Addr &addr, int use_dotted_decimal_addresses) |
Helper method for setting INET_Addr. More... | |
void | object_addr_i (void) const |
Helper method for object_addr () call. More... | |
CORBA::ULong | preferred_interfaces (const char *csvPreferred, bool enforce, TAO_IIOP_Profile &profile) |
TAO_IIOP_Endpoint * | add_local_endpoint (TAO_IIOP_Endpoint *ep, const char *local, TAO_IIOP_Profile &profile) |
TAO_IIOP_Endpoint (const TAO_IIOP_Endpoint &) | |
Canonical copy constructor. More... | |
Private Attributes | |
CORBA::String_var | host_ |
String representing the host name. More... | |
CORBA::UShort | port_ |
TCP port number. More... | |
bool | is_encodable_ |
Is this endpoint created encodable as part of the IOR? More... | |
bool | object_addr_set_ |
Flag to indicate if the address has been resolved and set. More... | |
ACE_INET_Addr | object_addr_ |
TAO::IIOP_Endpoint_Info | preferred_path_ |
Preferred path for this endpoint. More... | |
TAO_IIOP_Endpoint * | next_ |
Friends | |
class | TAO_IIOP_Profile |
class | TAO_SSLIOP_Profile |
Additional Inherited Members | |
Protected Attributes inherited from TAO_Endpoint | |
TAO_SYNCH_MUTEX | addr_lookup_lock_ |
Lock for the address lookup. More... | |
CORBA::ULong | hash_val_ |
Cache the hash value. More... | |
CORBA::ULong const | tag_ |
CORBA::Short | priority_ |
IIOP-specific implementation of PP Framework Endpoint interface.
TAO_IIOP_Endpoint::TAO_IIOP_Endpoint | ( | void | ) |
Default constructor.
TAO_IIOP_Endpoint::TAO_IIOP_Endpoint | ( | const char * | host, |
CORBA::UShort | port, | ||
const ACE_INET_Addr & | addr, | ||
CORBA::Short | priority = TAO_INVALID_PRIORITY |
||
) |
Constructor. This is the most efficient constructor since it does not require any address resolution processing.
TAO_IIOP_Endpoint::TAO_IIOP_Endpoint | ( | const ACE_INET_Addr & | addr, |
int | use_dotted_decimal_addresses | ||
) |
Constructor.
TAO_IIOP_Endpoint::TAO_IIOP_Endpoint | ( | const char * | host, |
CORBA::UShort | port, | ||
CORBA::Short | priority | ||
) |
Constructor. This constructor is used when decoding endpoints.
TAO_IIOP_Endpoint::~TAO_IIOP_Endpoint | ( | void | ) |
Destructor.
|
private |
Canonical copy constructor.
In private section to prevent clients from invoking this accidentally. Clients should only use duplicate () to make a deep copy
|
private |
Chain a new duplicate of ourself with the specified local preferred interface.
|
virtual |
Return a string representation for the address.
The purpose of this method is to provide a general interface to the underlying address object's addr_to_string
method. This allows the protocol implementor to select the appropriate string format.
Implements TAO_Endpoint.
|
virtual |
Makes a copy of this
.
Implements TAO_Endpoint.
|
static |
Given a comma separated list of preferred interface directives, which are of the form <wild_remote>=<wild_local>, this function will retrieve the list of preferred local ip addresses by matching wild_local against the list of all local ip interfaces, for any directive where wild_remote matches the host from our endpoint.
|
virtual |
Return a hash value for this object.
Implements TAO_Endpoint.
const char* TAO_IIOP_Endpoint::host | ( | void | ) | const |
Return a pointer to the host string. This object maintains ownership of this string.
const char * TAO_IIOP_Endpoint::host | ( | const char * | h | ) |
Copy the string h into <host_> and return the resulting pointer. This object maintains ownership of this string.
|
virtual |
Return true if this endpoint is equivalent to other_endpoint. Two endpoints are equivalent if their port and host are the same.
Implements TAO_Endpoint.
bool TAO_IIOP_Endpoint::is_preferred_network | ( | void | ) | const |
Do we have a preferred local network for the target?
|
virtual |
Endpoints can be linked in a list.
Implements TAO_Endpoint.
|
virtual |
Return the next endpoint in the list, but use protocol-specific filtering to constrain the value. The orb core is needed to supply any sort of filter arguments, and the root endpoint is needed in case the algorithm needs to rewind. If the supplied root is 0, then this is assumed to be the candidate next endpoint.
To use this, the caller starts off the change with root == 0. This is a bit of a violation in logic, a more correct implementation would accept this == 0 and a non-null root. To do iteration using next_filtered, do: for (TAO_Endpoint *ep = root_endpoint->next_filtered (orb_core, 0); ep != 0; ep = ep->next_filtered(orb_core, root_endpoint)) { }
Reimplemented from TAO_Endpoint.
|
private |
const ACE_INET_Addr & TAO_IIOP_Endpoint::object_addr | ( | void | ) | const |
Return a reference to the <object_addr>.
|
private |
Helper method for object_addr () call.
TAO_IIOP_Endpoint & TAO_IIOP_Endpoint::operator= | ( | const TAO_IIOP_Endpoint & | other | ) |
Need to have an assignment operator since the IIOP_Profile class may have to reorder its list of endpoints based on filtering by the EndpointPolicy.
CORBA::UShort TAO_IIOP_Endpoint::port | ( | void | ) | const |
Return the port number.
CORBA::UShort TAO_IIOP_Endpoint::port | ( | CORBA::UShort | p | ) |
Set the port number.
|
private |
Generate preferred interfaces from the options passed in by the user.
const char * TAO_IIOP_Endpoint::preferred_network | ( | void | ) | const |
Return the preferred network if any.
|
private |
Helper method for setting INET_Addr.
|
friend |
|
friend |
|
private |
String representing the host name.
|
private |
Is this endpoint created encodable as part of the IOR?
|
private |
IIOP Endpoints can be strung into a list. Return the next endpoint in the list, if any.
|
mutableprivate |
Cached instance of ACE_INET_Addr for use in making invocations, etc.
|
mutableprivate |
Flag to indicate if the address has been resolved and set.
|
private |
TCP port number.
|
private |
Preferred path for this endpoint.