Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# TAO_Endpoint Class Reference

Defines the Endpoint interface in the Pluggable Protocol framework. More...

`#include <Endpoint.h>`

Inheritance diagram for TAO_Endpoint

[legend]
List of all members.

## Public Methods
| TAO_Endpoint (CORBA::ULong tag, CORBA::Short priority = TAO_INVALID_PRIORITY)
| Constructor.
virtual | ~TAO_Endpoint (void)
| Destructor.
CORBA::ULong | tag (void) const
| IOP protocol tag accessor.
void | priority (CORBA::Short priority)
| <priority_> attribute setter.
CORBA::Short | priority (void) const
| <priority_> attribute getter.
virtual CORBA::Boolean | is_equivalent (const TAO_Endpoint *other_endpoint) = 0
| Return true if this endpoint is equivalent to <other_endpoint>. Two endpoints are equivalent iff their port and host are the same.
virtual TAO_Endpoint* | next (void) = 0
| Endpoints can be stringed in a list. Return the next endpoint in the list, if any.
virtual int | addr_to_string (char *buffer, size_t length) = 0
virtual void | reset_hint (void) = 0
| This method is used when a connection has been reset, requiring the hint to be cleaned up and reset to NULL.
virtual TAO_Endpoint* | duplicate (void) = 0
| This method returns a copy of the corresponding endpoints by allocation memory.
virtual CORBA::ULong | hash (void) = 0
| Return a hash value for this object.
## Protected Attributes
TAO_SYNCH_MUTEX | addr_lookup_lock_
| Lock for the address lookup. @todo: This lock should be strategised so that we dont lock in single threaded configurations. I am not able to do this now as most of the information is available in the ORB_Core which is not available here...
## Private Methods
| TAO_Endpoint (const TAO_Endpoint&)
void | operator= (const TAO_Endpoint&)
## Private Attributes
CORBA::ULong | tag_
| IOP tag, identifying the protocol for which this endpoint contains addressing info.
CORBA::Short | priority_

## Detailed Description

Defines the Endpoint interface in the Pluggable Protocol framework.

Lightweight encapsulation of addressing information for a single acceptor endpoint. In other words, Endpoint represents a single point of contact for the server, and is the smallest unit of addressing information necessary for a client to connect to a server. A Profile contains one or more Endpoints, i.e., knows of one or more ways to contact server(s).

## Constructor & Destructor Documentation

ACE_INLINE TAO_Endpoint::TAO_Endpoint ( | CORBA::ULong tag,
| CORBA::Short priority = TAO_INVALID_PRIORITY )

| Constructor.

TAO_Endpoint::~TAO_Endpoint ( | void )`[inline, virtual]`

| Destructor.

TAO_Endpoint::TAO_Endpoint ( | const TAO_Endpoint & )`[private]`

## Member Function Documentation

int TAO_Endpoint::addr_to_string ( | char * buffer,
| size_t length )`[pure virtual]`

| Return a string representation for the address. Returns -1 if buffer is too small. 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. Reimplemented in TAO_IIOP_Endpoint.

TAO_Endpoint * TAO_Endpoint::duplicate ( | void )`[pure virtual]`

| This method returns a copy of the corresponding endpoints by allocation memory. Reimplemented in TAO_IIOP_Endpoint.

CORBA::ULong TAO_Endpoint::hash ( | void )`[pure virtual]`

| Return a hash value for this object. Reimplemented in TAO_IIOP_Endpoint.

CORBA::Boolean TAO_Endpoint::is_equivalent ( | const TAO_Endpoint * other_endpoint )`[pure virtual]`

| Return true if this endpoint is equivalent to <other_endpoint>. Two endpoints are equivalent iff their port and host are the same. Reimplemented in TAO_IIOP_Endpoint.

TAO_Endpoint * TAO_Endpoint::next ( | void )`[pure virtual]`

| Endpoints can be stringed in a list. Return the next endpoint in the list, if any. Reimplemented in TAO_IIOP_Endpoint.

void TAO_Endpoint::operator= ( | const TAO_Endpoint & )`[private]`

ACE_INLINE CORBA::Short TAO_Endpoint::priority ( | void ) const

| <priority_> attribute getter.

ACE_INLINE void TAO_Endpoint::priority ( | CORBA::Short p )

| <priority_> attribute setter.

void TAO_Endpoint::reset_hint ( | void )`[pure virtual]`

| This method is used when a connection has been reset, requiring the hint to be cleaned up and reset to NULL. Reimplemented in TAO_IIOP_Endpoint.

ACE_INLINE CORBA::ULong TAO_Endpoint::tag ( | void ) const

| IOP protocol tag accessor.

## Member Data Documentation

TAO_SYNCH_MUTEX TAO_Endpoint::addr_lookup_lock_`[protected]`

| Lock for the address lookup. @todo: This lock should be strategised so that we dont lock in single threaded configurations. I am not able to do this now as most of the information is available in the ORB_Core which is not available here...

CORBA::Short TAO_Endpoint::priority_`[private]`

| CORBA priority of the acceptor this Endpoint is representing. This is part of TAO 'prioritized endpoints' architecture, and is currently used for RTCORBA only.

CORBA::ULong TAO_Endpoint::tag_`[private]`

| IOP tag, identifying the protocol for which this endpoint contains addressing info.

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

- Endpoint.h
- Endpoint.cpp
- Endpoint.i