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

Inheritance graph
[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:
Generated at Wed Nov 21 11:42:57 2001 for TAO by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000