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

TAO_ServantBase Class Reference

Base class for skeletons and servants. More...

#include <Servant_Base.h>

Inheritance diagram for TAO_ServantBase:

Inheritance graph
[legend]
Collaboration diagram for TAO_ServantBase:

Collaboration graph
[legend]
List of all members.

Public Methods

virtual ~TAO_ServantBase (void)
 Destructor.

virtual PortableServer::POA_ptr _default_POA (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
 Returns the default POA for this servant.

virtual CORBA::Boolean _is_a (const char *logical_type_id ACE_ENV_ARG_DECL_WITH_DEFAULTS)
 Local implementation of the CORBA::Object::_is_a method.

virtual CORBA::Boolean _non_existent (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
 Default <_non_existent>: always returns false.

virtual CORBA::InterfaceDef_ptr _get_interface (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
 Query the Interface Repository for the interface definition.

virtual CORBA::Object_ptr _get_component (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
 Default <_get_component>: always returns CORBA::Object::_nil().

virtual void_downcast (const char *repository_id)=0
 Get the correct vtable.

virtual TAO_Stub_create_stub (ACE_ENV_SINGLE_ARG_DECL)
 This is an auxiliar method for _this() and _narrow().

virtual void _dispatch (TAO_ServerRequest &request, void *servant_upcall ACE_ENV_ARG_DECL)=0
virtual int _find (const char *opname, TAO_Skeleton &skelfunc, const unsigned int length=0)
virtual int _find (const char *opname, TAO_Collocated_Skeleton &skelfunc, TAO::Collocation_Strategy st, const unsigned int length=0)

Protected Methods

 TAO_ServantBase (void)
 Default constructor, only derived classes can be created.

 TAO_ServantBase (const TAO_ServantBase &)
 Copy constructor, protected so no instances can be created.

TAO_ServantBase & operator= (const TAO_ServantBase &)
 Assignment operator.

virtual void synchronous_upcall_dispatch (TAO_ServerRequest &req, void *servant_upcall, void *derived_this ACE_ENV_ARG_DECL)
virtual void asynchronous_upcall_dispatch (TAO_ServerRequest &req, void *servant_upcall, void *derived_this ACE_ENV_ARG_DECL)
virtual const char * _interface_repository_id (void) const=0
 Get this interface's repository id (TAO specific).


Protected Attributes

TAO_Operation_Tableoptable_

Friends

class TAO_POA
class TAO_Object_Adapter
class TAO_Local_ServantBase

Detailed Description

Base class for skeletons and servants.

The POA spec requires that all servants inherit from this class' base class.


Constructor & Destructor Documentation

TAO_ServantBase::~TAO_ServantBase void    [virtual]
 

Destructor.

TAO_ServantBase::TAO_ServantBase void    [protected]
 

Default constructor, only derived classes can be created.

TAO_ServantBase::TAO_ServantBase const TAO_ServantBase &    [protected]
 

Copy constructor, protected so no instances can be created.


Member Function Documentation

TAO_Stub * TAO_ServantBase::_create_stub ACE_ENV_SINGLE_ARG_DECL    [virtual]
 

This is an auxiliar method for _this() and _narrow().

Implements TAO_Abstract_ServantBase.

Reimplemented in TAO_Local_ServantBase.

PortableServer::POA_ptr TAO_ServantBase::_default_POA ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    [virtual]
 

Returns the default POA for this servant.

Reimplemented in ServerObject_i.

virtual void TAO_ServantBase::_dispatch TAO_ServerRequest   request,
void *servant_upcall    ACE_ENV_ARG_DECL
[pure virtual]
 

Dispatches a request to the object: find the operation, cast the type to the most derived type, demarshall all the parameters from the request and finally invokes the operation, storing the results and out parameters (if any) or the exceptions thrown into <request>.

Implements TAO_Abstract_ServantBase.

Implemented in TAO_Local_ServantBase.

virtual void* TAO_ServantBase::_downcast const char *    repository_id [pure virtual]
 

Get the correct vtable.

Implements TAO_Abstract_ServantBase.

Implemented in POA_ImplementationRepository::ServerObject, POA_ImplementationRepository::Administration, POA_ImplementationRepository::ServerInformationIterator, POA_ImplementationRepository::Locator, and POA_CORBA::Policy.

int TAO_ServantBase::_find const char *    opname,
TAO_Collocated_Skeleton   skelfunc,
TAO::Collocation_Strategy    st,
const unsigned int    length = 0
[virtual]
 

Implements TAO_Abstract_ServantBase.

int TAO_ServantBase::_find const char *    opname,
TAO_Skeleton &    skelfunc,
const unsigned int    length = 0
[virtual]
 

Please see documentation in tao/Abstract_Servant_Base.h for details.

Implements TAO_Abstract_ServantBase.

CORBA::Object_ptr TAO_ServantBase::_get_component ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    [virtual]
 

Default <_get_component>: always returns CORBA::Object::_nil().

Implements TAO_Abstract_ServantBase.

CORBA::InterfaceDef_ptr TAO_ServantBase::_get_interface ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    [virtual]
 

Query the Interface Repository for the interface definition.

Implements TAO_Abstract_ServantBase.

virtual const char* TAO_ServantBase::_interface_repository_id void    const [protected, pure virtual]
 

Get this interface's repository id (TAO specific).

Implements TAO_Abstract_ServantBase.

Implemented in POA_ImplementationRepository::ServerObject, POA_ImplementationRepository::Administration, POA_ImplementationRepository::ServerInformationIterator, POA_ImplementationRepository::Locator, and POA_CORBA::Policy.

CORBA::Boolean TAO_ServantBase::_is_a const char *logical_type_id    ACE_ENV_ARG_DECL_WITH_DEFAULTS [virtual]
 

Local implementation of the CORBA::Object::_is_a method.

Implements TAO_Abstract_ServantBase.

Reimplemented in POA_ImplementationRepository::ServerObject, POA_ImplementationRepository::Administration, POA_ImplementationRepository::ServerInformationIterator, POA_ImplementationRepository::Locator, and POA_CORBA::Policy.

CORBA::Boolean TAO_ServantBase::_non_existent ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    [virtual]
 

Default <_non_existent>: always returns false.

Implements TAO_Abstract_ServantBase.

void TAO_ServantBase::asynchronous_upcall_dispatch TAO_ServerRequest   req,
void   servant_upcall,
void *derived_this    ACE_ENV_ARG_DECL
[protected, virtual]
 

TAO_ServantBase & TAO_ServantBase::operator= const TAO_ServantBase &    [protected]
 

Assignment operator.

void TAO_ServantBase::synchronous_upcall_dispatch TAO_ServerRequest   req,
void   servant_upcall,
void *derived_this    ACE_ENV_ARG_DECL
[protected, virtual]
 

Implements TAO_Abstract_ServantBase.


Friends And Related Function Documentation

friend class TAO_Local_ServantBase [friend]
 

friend class TAO_Object_Adapter [friend]
 

friend class TAO_POA [friend]
 


Member Data Documentation

TAO_Operation_Table* TAO_ServantBase::optable_ [protected]
 

The operation table for this servant, it is initialized by the most derived class.


The documentation for this class was generated from the following files:
Generated on Fri Apr 2 17:56:21 2004 for TAO_PortableServer by doxygen1.2.18