TAO_DynamicInterface  2.2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
TAO_DynamicImplementation Class Referenceabstract

Base class for DSI. More...

#include <Dynamic_Implementation.h>

Inheritance diagram for TAO_DynamicImplementation:
Inheritance graph
Collaboration diagram for TAO_DynamicImplementation:
Collaboration graph

Public Member Functions

virtual void invoke (CORBA::ServerRequest_ptr request)=0
virtual CORBA::RepositoryId _primary_interface (const PortableServer::ObjectId &oid, PortableServer::POA_ptr poa)=0
virtual CORBA::Boolean _is_a (const char *logical_type_id)
 Local implementation of the CORBA::Object::_is_a method. More...
CORBA::Object_ptr _this (void)
 Returns a CORBA::Object_ptr for the target object. More...
virtual CORBA::InterfaceDef_ptr _get_interface (void)
 Query the Interface Repository for the interface definition. More...

Protected Member Functions

virtual const char * _interface_repository_id (void) const
 Return 0. Should never be used. More...
virtual void * _downcast (const char *repository_id)
 Simply returns "this". More...
virtual TAO_Stub_create_stub (void)
 This is an auxiliary method for _this() and _narrow(). More...
virtual void _dispatch (TAO_ServerRequest &request, TAO::Portable_Server::Servant_Upcall *context)
 Turns around and calls invoke. More...

Private Member Functions

CORBA::RepositoryId get_id_from_primary_interface (void)
 Encapsulates code common to _is_a(), _get_interface() and _create_stub(). More...

Detailed Description

Base class for DSI.

It is expected that the <invoke> and <_primary_interface> methods will be only invoked by the POA in the context of serving a CORBA request. Invoking this method in other circumstances may lead to unpredictable results.

Member Function Documentation

TAO_Stub * TAO_DynamicImplementation::_create_stub ( void  )

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

void TAO_DynamicImplementation::_dispatch ( TAO_ServerRequest request,
TAO::Portable_Server::Servant_Upcall *  context 

Turns around and calls invoke.

void * TAO_DynamicImplementation::_downcast ( const char *  repository_id)

Simply returns "this".

CORBA::InterfaceDef_ptr TAO_DynamicImplementation::_get_interface ( void  )

Query the Interface Repository for the interface definition.

const char * TAO_DynamicImplementation::_interface_repository_id ( void  ) const

Return 0. Should never be used.

CORBA::Boolean TAO_DynamicImplementation::_is_a ( const char *  logical_type_id)

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

virtual CORBA::RepositoryId TAO_DynamicImplementation::_primary_interface ( const PortableServer::ObjectId oid,
PortableServer::POA_ptr  poa 
pure virtual

The _primary_interface() method receives an ObjectId value and a POA_ptr as input parameters and returns a valid RepositoryId representing the most-derived interface for that oid.

CORBA::Object_ptr TAO_DynamicImplementation::_this ( void  )

Returns a CORBA::Object_ptr for the target object.

CORBA::RepositoryId TAO_DynamicImplementation::get_id_from_primary_interface ( void  )

Encapsulates code common to _is_a(), _get_interface() and _create_stub().

virtual void TAO_DynamicImplementation::invoke ( CORBA::ServerRequest_ptr  request)
pure virtual

The invoke() method receives requests issued to any CORBA object incarnated by the DSI servant and performs the processing necessary to execute the request.

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