Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_ORBInitInfo Class Reference

An implementation of the PortableInterceptor::ORBInitInfo interface. More...

#include <ORBInitInfo.h>

Inheritance diagram for TAO_ORBInitInfo:

Inheritance graph
[legend]
Collaboration diagram for TAO_ORBInitInfo:

Collaboration graph
[legend]
List of all members.

Reference Related Methods

typedef TAO_ORBInitInfo_ptr _ptr_type
typedef TAO_ORBInitInfo_var _var_type
virtual void * _tao_QueryInterface (ptr_arith_t type)
 Downcasting this object pointer to some other derived class. This QueryInterface stuff only work for local object. More...

virtual const char * _interface_repository_id (void) const
 The repository ID for the most derived class, this is an implementation method and does no remote invocations! More...

TAO_ORBInitInfo_ptr _duplicate (TAO_ORBInitInfo_ptr obj)
TAO_ORBInitInfo_ptr _narrow (CORBA::Object_ptr obj ACE_ENV_ARG_DECL_WITH_DEFAULTS)
TAO_ORBInitInfo_ptr _unchecked_narrow (CORBA::Object_ptr obj ACE_ENV_ARG_DECL_WITH_DEFAULTS)
TAO_ORBInitInfo_ptr _nil (void)
 Return a NULL object. More...


Public Methods

 TAO_ORBInitInfo (TAO_ORB_Core *orb_core, int argc, char *argv[])
 Constructor. More...

PortableInterceptor::ORBInitInfo Methods
These methods are exported by the PortableInterceptor::ORBInitInfo interface.

virtual CORBA::StringSeqarguments (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Return the argument vector for the ORB currently being initialized as a string sequence. More...

virtual char * orb_id (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Return the ORBid for the ORB currently being initialized. More...

virtual IOP::CodecFactory_ptr codec_factory (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Return the CodecFactory for the ORB currently being initialized. More...

virtual void register_initial_reference (const char *id, CORBA::Object_ptr obj ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::InvalidName)
 This method is particularly useful for registering references to local (locality constrained) objects. More...

virtual CORBA::Object_ptr resolve_initial_references (const char *id ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::InvalidName)
 Obtain a reference to an object that may not yet be available via the usual CORBA::ORB::resolve_initial_references() mechanism since the ORB may not be fully initialized yet. More...

virtual void add_client_request_interceptor (PortableInterceptor::ClientRequestInterceptor_ptr interceptor ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName)
 Register a client request interceptor with the ORB currently being initialized. More...

virtual void add_server_request_interceptor (PortableInterceptor::ServerRequestInterceptor_ptr interceptor ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName)
 Register a server request interceptor with the ORB currently being initialized. More...

virtual void add_ior_interceptor (PortableInterceptor::IORInterceptor_ptr interceptor ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName)
 Register an IOR interceptor with the ORB currently being initialized. More...

virtual PortableInterceptor::SlotId allocate_slot_id (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Reserve a slot in table found within the PortableInterceptor::Current object. More...

virtual void register_policy_factory (CORBA::PolicyType type, PortableInterceptor::PolicyFactory_ptr policy_factory ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Register a policy factory of the given policy type with the ORB currently being initialized. More...

TAO Extensions
These methods are not part of the PortableInterceptor specification, and are TAO-specific extensions.

size_t allocate_tss_slot_id (ACE_CLEANUP_FUNC cleanup ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 TAO uses a single TSS key for these resources, so it is useful to place TSS objects in TAO's TSS resources on platforms where the number of TSS keys is low. More...

TAO_ORB_Coreorb_core (void) const
 The ORB Core is essentialy fully initialized by the time ORBInitializer::post_init() is invoked. More...


Protected Methods

 ~TAO_ORBInitInfo (void)
 Destructor is protected to force instantiation on the heap since ORBInitInfo is reference counted. More...

void check_validity (ACE_ENV_SINGLE_ARG_DECL)
 Check if this ORBInitInfo instance is valid. Once post_init() has been called on each of the ORBInitializers, this ORBInitInfo is no longer valid. Throw an exception in that case. More...


Private Methods

 TAO_ORBInitInfo (const TAO_ORBInitInfo &)
 Prevent copying through the copy constructor and the assignment operator. More...

void operator= (const TAO_ORBInitInfo &)

Private Attributes

TAO_ORB_Coreorb_core_
 Reference to the ORB Core. More...

int argc_
 The number of arguments in the argument vector passed to CORBA::ORB_init(). More...

char ** argv_
 The argument vector passed to CORBA::ORB_init(). More...

IOP::CodecFactory_var codec_factory_
 Reference to the CodecFactory returned by ORBInitInfo::codec_factory(). More...


Friends

CORBA::ORB_ptr CORBA::ORB_init (int &, char *argv[], const char *, CORBA_Environment &)

Detailed Description

An implementation of the PortableInterceptor::ORBInitInfo interface.

This class encapsulates the data passed to ORBInitializers during ORB initialization.


Member Typedef Documentation

typedef TAO_ORBInitInfo_ptr TAO_ORBInitInfo::_ptr_type
 

Reimplemented from PortableInterceptor::ORBInitInfo.

typedef TAO_ORBInitInfo_var TAO_ORBInitInfo::_var_type
 

Reimplemented from PortableInterceptor::ORBInitInfo.


Constructor & Destructor Documentation

TAO_ORBInitInfo::TAO_ORBInitInfo TAO_ORB_Core   orb_core,
int    argc,
char *    argv[]
 

Constructor.

TAO_ORBInitInfo::~TAO_ORBInitInfo void    [protected]
 

Destructor is protected to force instantiation on the heap since ORBInitInfo is reference counted.

TAO_ORBInitInfo::TAO_ORBInitInfo const TAO_ORBInitInfo &    [private]
 

Prevent copying through the copy constructor and the assignment operator.


Member Function Documentation

TAO_ORBInitInfo_ptr TAO_ORBInitInfo::_duplicate TAO_ORBInitInfo_ptr    obj [static]
 

const char * TAO_ORBInitInfo::_interface_repository_id void    const [virtual]
 

The repository ID for the most derived class, this is an implementation method and does no remote invocations!

Reimplemented from PortableInterceptor::ORBInitInfo.

TAO_ORBInitInfo_ptr TAO_ORBInitInfo::_narrow CORBA::Object_ptr obj    ACE_ENV_ARG_DECL [static]
 

Reimplemented from PortableInterceptor::ORBInitInfo.

TAO_ORBInitInfo_ptr TAO_ORBInitInfo::_nil void    [inline, static]
 

Return a NULL object.

Reimplemented from PortableInterceptor::ORBInitInfo.

void * TAO_ORBInitInfo::_tao_QueryInterface ptr_arith_t    type [virtual]
 

Downcasting this object pointer to some other derived class. This QueryInterface stuff only work for local object.

Reimplemented from PortableInterceptor::ORBInitInfo.

TAO_ORBInitInfo_ptr TAO_ORBInitInfo::_unchecked_narrow CORBA::Object_ptr obj    ACE_ENV_ARG_DECL_NOT_USED [static]
 

Reimplemented from PortableInterceptor::ORBInitInfo.

void TAO_ORBInitInfo::add_client_request_interceptor PortableInterceptor::ClientRequestInterceptor_ptr interceptor    ACE_ENV_ARG_DECL throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName) [virtual]
 

Register a client request interceptor with the ORB currently being initialized.

Reimplemented from PortableInterceptor::ORBInitInfo.

void TAO_ORBInitInfo::add_ior_interceptor PortableInterceptor::IORInterceptor_ptr interceptor    ACE_ENV_ARG_DECL throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName) [virtual]
 

Register an IOR interceptor with the ORB currently being initialized.

Reimplemented from PortableInterceptor::ORBInitInfo.

void TAO_ORBInitInfo::add_server_request_interceptor PortableInterceptor::ServerRequestInterceptor_ptr interceptor    ACE_ENV_ARG_DECL throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName) [virtual]
 

Register a server request interceptor with the ORB currently being initialized.

Reimplemented from PortableInterceptor::ORBInitInfo.

PortableInterceptor::SlotId TAO_ORBInitInfo::allocate_slot_id ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    throw (CORBA::SystemException) [virtual]
 

Reserve a slot in table found within the PortableInterceptor::Current object.

Reimplemented from PortableInterceptor::ORBInitInfo.

size_t TAO_ORBInitInfo::allocate_tss_slot_id ACE_CLEANUP_FUNC cleanup    ACE_ENV_ARG_DECL throw (CORBA::SystemException)
 

TAO uses a single TSS key for these resources, so it is useful to place TSS objects in TAO's TSS resources on platforms where the number of TSS keys is low.

The returned SlotId can be used to index into the array stored in ORB's TSS resources structure.

An accompanying cleanup function (e.g. a TSS destructor) can also be registered.

CORBA::StringSeq * TAO_ORBInitInfo::arguments ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    throw (CORBA::SystemException) [virtual]
 

Return the argument vector for the ORB currently being initialized as a string sequence.

Reimplemented from PortableInterceptor::ORBInitInfo.

void TAO_ORBInitInfo::check_validity ACE_ENV_SINGLE_ARG_DECL    [protected]
 

Check if this ORBInitInfo instance is valid. Once post_init() has been called on each of the ORBInitializers, this ORBInitInfo is no longer valid. Throw an exception in that case.

IOP::CodecFactory_ptr TAO_ORBInitInfo::codec_factory ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    throw (CORBA::SystemException) [virtual]
 

Return the CodecFactory for the ORB currently being initialized.

Reimplemented from PortableInterceptor::ORBInitInfo.

void TAO_ORBInitInfo::operator= const TAO_ORBInitInfo &    [private]
 

ACE_INLINE TAO_ORB_Core * TAO_ORBInitInfo::orb_core void    const
 

The ORB Core is essentialy fully initialized by the time ORBInitializer::post_init() is invoked.

As such, it is generally best if this method is used in that method.

Note:
Only use this method if you know what you are doing.

char * TAO_ORBInitInfo::orb_id ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    throw (CORBA::SystemException) [virtual]
 

Return the ORBid for the ORB currently being initialized.

Reimplemented from PortableInterceptor::ORBInitInfo.

void TAO_ORBInitInfo::register_initial_reference const char *    id,
CORBA::Object_ptr obj    ACE_ENV_ARG_DECL
throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::InvalidName) [virtual]
 

This method is particularly useful for registering references to local (locality constrained) objects.

Note that this method should be called in ORBInitializer::pre_init() so that the registered reference will be available to the resolve_initial_references() that may be called in the ORBInitializer::post_init() call.

Reimplemented from PortableInterceptor::ORBInitInfo.

void TAO_ORBInitInfo::register_policy_factory CORBA::PolicyType    type,
PortableInterceptor::PolicyFactory_ptr policy_factory    ACE_ENV_ARG_DECL
throw (CORBA::SystemException) [virtual]
 

Register a policy factory of the given policy type with the ORB currently being initialized.

Reimplemented from PortableInterceptor::ORBInitInfo.

CORBA::Object_ptr TAO_ORBInitInfo::resolve_initial_references const char *id    ACE_ENV_ARG_DECL throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::InvalidName) [virtual]
 

Obtain a reference to an object that may not yet be available via the usual CORBA::ORB::resolve_initial_references() mechanism since the ORB may not be fully initialized yet.

Reimplemented from PortableInterceptor::ORBInitInfo.


Friends And Related Function Documentation

CORBA::ORB_ptr CORBA::ORB_init int &   ,
char *    argv[],
const char *   ,
CORBA_Environment  
[friend]
 


Member Data Documentation

int TAO_ORBInitInfo::argc_ [private]
 

The number of arguments in the argument vector passed to CORBA::ORB_init().

char** TAO_ORBInitInfo::argv_ [private]
 

The argument vector passed to CORBA::ORB_init().

IOP::CodecFactory_var TAO_ORBInitInfo::codec_factory_ [private]
 

Reference to the CodecFactory returned by ORBInitInfo::codec_factory().

TAO_ORB_Core* TAO_ORBInitInfo::orb_core_ [private]
 

Reference to the ORB Core.


The documentation for this class was generated from the following files:
Generated on Thu Oct 10 18:46:08 2002 for TAO by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001