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:

[legend]
Collaboration diagram for TAO_ServantBase:

[legend]
List of all members.

## Public Methods
virtual | ~TAO_ServantBase (void)
| Destructor. More...
virtual PortableServer::POA_ptr | _default_POA (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
| Returns the default POA for this servant. More...
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. More...
virtual CORBA::Boolean | _non_existent (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
| Default <_non_existent>: always returns false. More...
virtual CORBA_InterfaceDef_ptr | _get_interface (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
| Query the Interface Repository for the interface definition. More...
virtual CORBA::Object_ptr | _get_component (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
| Default <_get_component>: always returns CORBA::Object::_nil(). More...
virtual void * | _downcast (const char *repository_id)=0
| Get the correct vtable. More...
virtual TAO_Stub * | _create_stub (ACE_ENV_SINGLE_ARG_DECL)
| This is an auxiliar method for _this() and _narrow(). More...
virtual void | _dispatch (TAO_ServerRequest &request, void *servant_upcall ACE_ENV_ARG_DECL)=0
| 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>. More...
## Protected Methods
| TAO_ServantBase (void)
| Default constructor, only derived classes can be created. More...
| TAO_ServantBase (const TAO_ServantBase &)
| Copy constructor, protected so no instances can be created. More...
TAO_ServantBase & | operator= (const TAO_ServantBase &)
| Assignment operator. More...
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 int | _find (const char *opname, TAO_Skeleton &skelfunc, const unsigned int length=0)
| Find an operation in the operation table. More...
virtual int | _bind (const char *opname, const TAO_Skeleton skel_ptr)
| Register a CORBA IDL operation name. More...
virtual const char * | _interface_repository_id (void) const=0
| Get this interface's repository id (TAO specific). More...
## Protected Attributes
TAO_Operation_Table * | optable_
| The operation table for this servant, it is initialized by the most derived class. More...
## Friends
class | TAO_POA
class | TAO_Object_Adapter
class | CORBA_Object
class | TAO_Local_ServantBase

## Detailed Description

Base class for skeletons and servants.

The POA spec requires that all servants inherit from this 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 & | rhs | ) | `[protected]`

| Copy constructor, protected so no instances can be created.

## Member Function Documentation

int TAO_ServantBase::_bind | ( | const char * | opname,
|  | const TAO_Skeleton | skel_ptr
| ) | `[protected, virtual]`

| Register a CORBA IDL operation name. Reimplemented from TAO_Abstract_ServantBase.

TAO_Stub * TAO_ServantBase::_create_stub | ( | ACE_ENV_SINGLE_ARG_DECL |  | ) | `[virtual]`

| This is an auxiliar method for _this() and _narrow(). Reimplemented from 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.

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>. Reimplemented from TAO_Abstract_ServantBase. Reimplemented in TAO_Local_ServantBase.

virtual void* TAO_ServantBase::_downcast | ( | const char * | repository_id | ) | `[pure virtual]`

| Get the correct vtable. Reimplemented from TAO_Abstract_ServantBase.

int TAO_ServantBase::_find | ( | const char * | opname,
|  | TAO_Skeleton & | skelfunc,
|  | const unsigned int | length = 0
| ) | `[protected, virtual]`

| Find an operation in the operation table. Reimplemented from 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(). Reimplemented from 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. Reimplemented from TAO_Abstract_ServantBase.

virtual const char* TAO_ServantBase::_interface_repository_id | ( | void |  | ) | const`[protected, pure virtual]`

| Get this interface's repository id (TAO specific). Reimplemented from TAO_Abstract_ServantBase.

CORBA::Boolean TAO_ServantBase::_is_a | ( | const char *logical_type_id | ACE_ENV_ARG_DECL | ) | `[virtual]`

| Local implementation of the CORBA::Object::_is_a method. Reimplemented from TAO_Abstract_ServantBase.

CORBA::Boolean TAO_ServantBase::_non_existent | ( | ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS |  | ) | `[virtual]`

| Default <_non_existent>: always returns false. Reimplemented from 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 & | rhs | ) | `[protected]`

| Assignment operator.

void TAO_ServantBase::synchronous_upcall_dispatch | ( | TAO_ServerRequest & | req,
|  | void * | servant_upcall,
|  | void *derived_this | ACE_ENV_ARG_DECL
| ) | `[protected, virtual]`

| Reimplemented from TAO_Abstract_ServantBase.

## Friends And Related Function Documentation

friend class CORBA_Object`[friend]`

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:

- Servant_Base.h
- Servant_Base.cpp