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

# TAO_Acceptor Class Reference

Abstract Acceptor class used for pluggable protocols. More...

`#include <Pluggable.h>`

Inheritance diagram for TAO_Acceptor

[legend]
List of all members.

## Public Methods
| TAO_Acceptor (CORBA::ULong tag)
virtual | ~TAO_Acceptor (void)
| Destructor.
CORBA::ULong | tag (void) const
| The tag, each concrete class will have a specific tag value.
virtual int | open (TAO_ORB_Core *orb_core, ACE_Reactor *reactor, int version_major, int version_minor, const char *address, const char *options = 0) = 0
| Method to initialize acceptor for address.
virtual int | open_default (TAO_ORB_Core *, ACE_Reactor *reactor, int version_major, int version_minor, const char *options = 0) = 0
virtual int | close (void) = 0
| Closes the acceptor.
virtual int | create_profile (const TAO_ObjectKey &object_key, TAO_MProfile &mprofile, CORBA::Short priority) = 0
virtual int | is_collocated (const TAO_Endpoint* endpoint) = 0
| Return 1 if the <endpoint> has the same address as the acceptor.
virtual CORBA::ULong | endpoint_count (void) = 0
virtual int | object_key (IOP::TaggedProfile &profile, TAO_ObjectKey &key) = 0
## Private Attributes
CORBA::ULong | tag_
| IOP protocol tag.

## Detailed Description

Abstract Acceptor class used for pluggable protocols.

Base class for the Acceptor bridge class.

## Constructor & Destructor Documentation

TAO_Acceptor::TAO_Acceptor ( | CORBA::ULong tag )

TAO_Acceptor::~TAO_Acceptor ( | void )`[virtual]`

| Destructor.

## Member Function Documentation

int TAO_Acceptor::close ( | void )`[pure virtual]`

| Closes the acceptor. Reimplemented in TAO_IIOP_Acceptor.

int TAO_Acceptor::create_profile ( | const TAO_ObjectKey & object_key,
| TAO_MProfile & mprofile,
| CORBA::Short priority )`[pure virtual]`

| Create the corresponding profile for this endpoint. If share_profile is set to true, the pluggable protocol implementation should try to add the endpoint to a profile in the mprofile that is of the same type. Currently, this is used when RT CORBA is enabled. Reimplemented in TAO_IIOP_Acceptor.

CORBA::ULong TAO_Acceptor::endpoint_count ( | void )`[pure virtual]`

| Returns the number of endpoints this acceptor is listening on. This is used for determining how many profiles will be generated for this acceptor. Reimplemented in TAO_IIOP_Acceptor.

int TAO_Acceptor::is_collocated ( | const TAO_Endpoint * endpoint )`[pure virtual]`

| Return 1 if the <endpoint> has the same address as the acceptor. Reimplemented in TAO_IIOP_Acceptor.

int TAO_Acceptor::object_key ( | IOP::TaggedProfile & profile,
| TAO_ObjectKey & object_key )`[pure virtual]`

| This method fetches the <key> from the <profile>. Protocols that are pluggable can send data that are specific in the <profile_data> field encapsulated as a octet stream. This method allows those protocols to get the object key from the encapsulation. Reimplemented in TAO_IIOP_Acceptor.

int TAO_Acceptor::open ( | TAO_ORB_Core * orb_core,
| ACE_Reactor * reactor,
| int version_major,
| int version_minor,
| const char * address,
| const char * options = 0 )`[pure virtual]`

| Method to initialize acceptor for address. Reimplemented in TAO_IIOP_Acceptor.

int TAO_Acceptor::open_default ( | TAO_ORB_Core * orb_core,
| ACE_Reactor * reactor,
| int major,
| int minor,
| const char * options = 0 )`[pure virtual]`

| Open an acceptor with the given protocol version on a default endpoint @ This method should be pure virtual, but in order to maintain some form of backward compatibilty, a default implementation is provided. Ideally, that default implementation should be removed in the near future. Reimplemented in TAO_IIOP_Acceptor.

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

| The tag, each concrete class will have a specific tag value.

## Member Data Documentation

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

| IOP protocol tag.

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

- Pluggable.h
- Pluggable.cpp
- Pluggable.i