TAO_DynamicImplementation Class Reference

Base class for DSI. More...

#include <Dynamic_Implementation.h>

List of all members.

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.
CORBA::Object_ptr _this (void)
 Returns a CORBA::Object_ptr for the target object.
virtual CORBA::InterfaceDef_ptr _get_interface (void)
 Query the Interface Repository for the interface definition.

Protected Member Functions

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

Private Member Functions

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


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

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.

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.

TAO_BEGIN_VERSIONED_NAMESPACE_DECL CORBA::Boolean TAO_DynamicImplementation::_is_a ( const char *  logical_type_id  )  [virtual]

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

CORBA::Object_ptr TAO_DynamicImplementation::_this ( void   ) 

Returns a CORBA::Object_ptr for the target object.

CORBA::InterfaceDef_ptr TAO_DynamicImplementation::_get_interface ( void   )  [virtual]

Query the Interface Repository for the interface definition.

const char * TAO_DynamicImplementation::_interface_repository_id ( void   )  const [protected, virtual]

Return 0. Should never be used.

void * TAO_DynamicImplementation::_downcast ( const char *  repository_id  )  [protected, virtual]

Simply returns "this".

TAO_Stub * TAO_DynamicImplementation::_create_stub ( void   )  [protected, virtual]

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

void TAO_DynamicImplementation::_dispatch ( TAO_ServerRequest request,
void *  context 
) [protected, virtual]

Turns around and calls invoke.

CORBA::RepositoryId TAO_DynamicImplementation::get_id_from_primary_interface ( void   )  [private]

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


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

Generated on Mon Sep 15 08:06:30 2008 for TAO_DynamicInterface by  doxygen 1.5.5