Public Member Functions

TAO_CSD_Default_Servant_Dispatcher Class Reference

Interface for CSD_POA servant dispatching strategies. More...

#include <CSD_Default_Servant_Dispatcher.h>

Inheritance diagram for TAO_CSD_Default_Servant_Dispatcher:
Inheritance graph
[legend]
Collaboration diagram for TAO_CSD_Default_Servant_Dispatcher:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual ~TAO_CSD_Default_Servant_Dispatcher (void)
virtual TAO_Root_POAcreate_Root_POA (const ACE_CString &name, PortableServer::POAManager_ptr poa_manager, const TAO_POA_Policy_Set &policies, ACE_Lock &lock, TAO_SYNCH_MUTEX &thread_lock, TAO_ORB_Core &orb_core, TAO_Object_Adapter *object_adapter)
 Factory method for creating new CSD Root POA.

Detailed Description

Interface for CSD_POA servant dispatching strategies.

Definition at line 32 of file CSD_Default_Servant_Dispatcher.h.


Constructor & Destructor Documentation

TAO_CSD_Default_Servant_Dispatcher::~TAO_CSD_Default_Servant_Dispatcher ( void   )  [virtual]

Definition at line 15 of file CSD_Default_Servant_Dispatcher.cpp.

{
}


Member Function Documentation

TAO_Root_POA * TAO_CSD_Default_Servant_Dispatcher::create_Root_POA ( const ACE_CString name,
PortableServer::POAManager_ptr  poa_manager,
const TAO_POA_Policy_Set policies,
ACE_Lock lock,
TAO_SYNCH_MUTEX &  thread_lock,
TAO_ORB_Core orb_core,
TAO_Object_Adapter object_adapter 
) [virtual]

Factory method for creating new CSD Root POA.

Reimplemented from TAO_Default_Servant_Dispatcher.

Definition at line 21 of file CSD_Default_Servant_Dispatcher.cpp.

    {
  TAO_CSD_POA *poa = 0;

  ACE_NEW_THROW_EX (poa,
                    TAO_CSD_POA (name,
                                 poa_manager,
                                 policies,
                                 0,
                                 lock,
                                 thread_lock,
                                 orb_core,
                                 object_adapter
                                ),
                    CORBA::NO_MEMORY ());


  TAO_CSD_Strategy_Repository *repo =
    ACE_Dynamic_Service<TAO_CSD_Strategy_Repository>::instance ("TAO_CSD_Strategy_Repository");

  if (repo == 0)
    {
      if (TAO_debug_level > 0)
        ACE_DEBUG ((LM_DEBUG,
                    ACE_TEXT("(%P|%t) CSD_Default_Servant_Dispatcher::")
                    ACE_TEXT("create_POA could not find ")
                    ACE_TEXT("TAO_CSD_Strategy_Repository\n")));
      return 0;
    }

  CSD_Framework::Strategy_var strategy = repo->find (name);

  if (! ::CORBA::is_nil (strategy.in ()))
    {
      poa->set_csd_strategy (strategy.in ());
    }

  return poa;
}


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines