TAO_PI  2.2.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
TAO::ORBInitializer_Registry Class Reference

Global list that contains all portable interceptor ORB initializers. More...

#include <ORBInitializer_Registry_Impl.h>

Inheritance diagram for TAO::ORBInitializer_Registry:
Inheritance graph
Collaboration diagram for TAO::ORBInitializer_Registry:
Collaboration graph

Public Member Functions

 ORBInitializer_Registry (void)
 
virtual int init (int, ACE_TCHAR *[])
 
virtual int fini (void)
 
virtual void register_orb_initializer (PortableInterceptor::ORBInitializer_ptr init)
 
virtual size_t pre_init (TAO_ORB_Core *orb_core, int argc, char *argv[], PortableInterceptor::SlotId &slotid)
 
virtual void post_init (size_t pre_init_count, TAO_ORB_Core *orb_core, int argc, char *argv[], PortableInterceptor::SlotId slotid)
 
- Public Member Functions inherited from TAO::ORBInitializer_Registry_Adapter
virtual ~ORBInitializer_Registry_Adapter (void)
 

Private Member Functions

 ORBInitializer_Registry (const ORBInitializer_Registry &)
 
void operator= (const ORBInitializer_Registry &)
 

Private Attributes

TAO_SYNCH_RECURSIVE_MUTEX lock_
 
ACE_Array_Base
< PortableInterceptor::ORBInitializer_var > 
initializers_
 Dynamic array containing registered ORBInitializers. More...
 

Detailed Description

Global list that contains all portable interceptor ORB initializers.

Constructor & Destructor Documentation

TAO::ORBInitializer_Registry::ORBInitializer_Registry ( void  )
TAO::ORBInitializer_Registry::ORBInitializer_Registry ( const ORBInitializer_Registry )
private

Member Function Documentation

int TAO::ORBInitializer_Registry::fini ( void  )
virtual

Service config fini method, release all ORBInitializers at this moment

int TAO::ORBInitializer_Registry::init ( int  ,
ACE_TCHAR [] 
)
virtual

Added to provide registration for the several static service objects, brought in with this ORBInitializer_Registry implementation. Note that this is more reliable than using static initializers, since multiple copies of the dynamic service object will require their own (multiple) copies of the dependent static service objects. That is just impossible without registering those static services in the same repo, the dynamic SO is registered with.

Register the PI ORBInitializer.

void TAO::ORBInitializer_Registry::operator= ( const ORBInitializer_Registry )
private
void TAO::ORBInitializer_Registry::post_init ( size_t  pre_init_count,
TAO_ORB_Core orb_core,
int  argc,
char *  argv[],
PortableInterceptor::SlotId  slotid 
)
virtual

Complete initialization of all registered ORBInitializers after the ORB has been initialized.

Implements TAO::ORBInitializer_Registry_Adapter.

size_t TAO::ORBInitializer_Registry::pre_init ( TAO_ORB_Core orb_core,
int  argc,
char *  argv[],
PortableInterceptor::SlotId slotid 
)
virtual

Begin initialization of all registered ORBInitializers before the ORB itself is initialized.

Implements TAO::ORBInitializer_Registry_Adapter.

void TAO::ORBInitializer_Registry::register_orb_initializer ( PortableInterceptor::ORBInitializer_ptr  init)
virtual

Register an ORBInitializer with the underlying ORBInitializer array.

Implements TAO::ORBInitializer_Registry_Adapter.

Member Data Documentation

ACE_Array_Base<PortableInterceptor::ORBInitializer_var> TAO::ORBInitializer_Registry::initializers_
private

Dynamic array containing registered ORBInitializers.

TAO_SYNCH_RECURSIVE_MUTEX TAO::ORBInitializer_Registry::lock_
private

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