Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

TAO_ORBInitInfo Class Reference

An implementation of the PortableInterceptor::ORBInitInfo_3_1 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

TAO_ORBInitInfo-specific methods and types.

typedef TAO_ORBInitInfo_ptr _ptr_type
typedef TAO_ORBInitInfo_var _var_type
TAO_ORBInitInfo_ptr _duplicate (TAO_ORBInitInfo_ptr obj)
TAO_ORBInitInfo_ptr _narrow (CORBA::Object_ptr obj)
TAO_ORBInitInfo_ptr _unchecked_narrow (CORBA::Object_ptr obj)
TAO_ORBInitInfo_ptr _nil (void)

Public Member Functions

 TAO_ORBInitInfo (TAO_ORB_Core *orb_core, int argc, char *argv[], PortableInterceptor::SlotId slotid)
 Constructor.
virtual const char * _interface_repository_id (void) const
PortableInterceptor::ORBInitInfo Methods
These methods are exported by the PortableInterceptor::ORBInitInfo interface.

virtual CORBA::StringSeqarguments () throw (CORBA::SystemException)
virtual char * orb_id () throw (CORBA::SystemException)
 Return the ORBid for the ORB currently being initialized.
virtual IOP::CodecFactory_ptr codec_factory () throw (CORBA::SystemException)
virtual void register_initial_reference (const char *id, CORBA::Object_ptr obj) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::InvalidName)
virtual CORBA::Object_ptr resolve_initial_references (const char *id) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::InvalidName)
virtual void add_client_request_interceptor (PortableInterceptor::ClientRequestInterceptor_ptr interceptor) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName)
virtual void add_server_request_interceptor (PortableInterceptor::ServerRequestInterceptor_ptr interceptor) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName)
virtual void add_ior_interceptor (PortableInterceptor::IORInterceptor_ptr interceptor) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName)
virtual void add_client_request_interceptor_with_policy (PortableInterceptor::ClientRequestInterceptor_ptr interceptor, const CORBA::PolicyList &policies) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName, CORBA::PolicyError)
virtual void add_server_request_interceptor_with_policy (PortableInterceptor::ServerRequestInterceptor_ptr interceptor, const CORBA::PolicyList &policies) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName, CORBA::PolicyError)
virtual void add_ior_interceptor_with_policy (PortableInterceptor::IORInterceptor_ptr interceptor, const CORBA::PolicyList &policies) throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName, CORBA::PolicyError)
virtual PortableInterceptor::SlotId allocate_slot_id () throw (CORBA::SystemException)
virtual void register_policy_factory (CORBA::PolicyType type, PortableInterceptor::PolicyFactory_ptr policy_factory) throw (CORBA::SystemException)
virtual CORBA::ORB_ptr _get_orb ()
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) throw (CORBA::SystemException)
 Allocate a slot in the ORB's TSS resources.
TAO_ORB_Coreorb_core (void) const
void invalidate (void)
 Invalidate this ORBInitInfo instance.
PortableInterceptor::SlotId slot_count (void) const

Protected Member Functions

 ~TAO_ORBInitInfo (void)
void check_validity ()

Private Member Functions

 TAO_ORBInitInfo (const TAO_ORBInitInfo &)
void operator= (const TAO_ORBInitInfo &)

Private Attributes

TAO_ORB_Coreorb_core_
 Reference to the ORB Core.
int argc_
char ** argv_
 The argument vector passed to CORBA::ORB_init().
IOP::CodecFactory_var codec_factory_
PortableInterceptor::SlotId slot_count_
 The number of allocated slots.

Detailed Description

An implementation of the PortableInterceptor::ORBInitInfo_3_1 interface.

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


Member Typedef Documentation

typedef TAO_ORBInitInfo_ptr TAO_ORBInitInfo::_ptr_type
 

Implements PortableInterceptor::ORBInitInfo_3_1.

typedef TAO_ORBInitInfo_var TAO_ORBInitInfo::_var_type
 

Implements PortableInterceptor::ORBInitInfo_3_1.


Constructor & Destructor Documentation

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

Constructor.

TAO_ORBInitInfo::~TAO_ORBInitInfo void   )  [protected]
 

Destructor is protected to enforce proper memory management through the reference counting mechanism.

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]
 

CORBA::ORB_ptr TAO_ORBInitInfo::_get_orb  )  [virtual]
 

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

Reimplemented from CORBA::LocalObject.

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

Implements PortableInterceptor::ORBInitInfo_3_1.

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

Reimplemented from CORBA::LocalObject.

TAO_ORBInitInfo_ptr TAO_ORBInitInfo::_nil void   )  [inline, static]
 

Implements PortableInterceptor::ORBInitInfo_3_1.

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

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

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

void TAO_ORBInitInfo::add_client_request_interceptor_with_policy PortableInterceptor::ClientRequestInterceptor_ptr  interceptor,
const CORBA::PolicyList policies
throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName, CORBA::PolicyError) [virtual]
 

Register a client request interceptor with the ORB currently being initialized, along with a list of policies.

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

Register an IOR interceptor with the ORB currently being initialized.

void TAO_ORBInitInfo::add_ior_interceptor_with_policy PortableInterceptor::IORInterceptor_ptr  interceptor,
const CORBA::PolicyList policies
throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName, CORBA::PolicyError) [virtual]
 

Register an IOR interceptor with the ORB currently being initialized, along with a list of policies.

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

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

void TAO_ORBInitInfo::add_server_request_interceptor_with_policy PortableInterceptor::ServerRequestInterceptor_ptr  interceptor,
const CORBA::PolicyList policies
throw (CORBA::SystemException, PortableInterceptor::ORBInitInfo::DuplicateName, CORBA::PolicyError) [virtual]
 

Register a server request interceptor with the ORB currently being initialized, along with a list of policies.

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

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

Implements PortableInterceptor::ORBInitInfo.

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

Allocate a slot in the ORB's TSS resources.

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  )  throw (CORBA::SystemException) [virtual]
 

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

Implements PortableInterceptor::ORBInitInfo.

void TAO_ORBInitInfo::check_validity  )  [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  )  throw (CORBA::SystemException) [virtual]
 

Return the CodecFactory for the ORB currently being initialized.

Implements PortableInterceptor::ORBInitInfo.

ACE_INLINE void TAO_ORBInitInfo::invalidate void   ) 
 

Invalidate this ORBInitInfo instance.

Note:
This method is only meant to be called by the CORBA::ORB_init() function.

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

TAO_BEGIN_VERSIONED_NAMESPACE_DECL 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.

Reimplemented from CORBA::Object.

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

Return the ORBid for the ORB currently being initialized.

Implements PortableInterceptor::ORBInitInfo.

void TAO_ORBInitInfo::register_initial_reference const char *  id,
CORBA::Object_ptr  obj
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.

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

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

CORBA::Object_ptr TAO_ORBInitInfo::resolve_initial_references const char *  id  )  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.

Implements PortableInterceptor::ORBInitInfo.

ACE_INLINE PortableInterceptor::SlotId TAO_ORBInitInfo::slot_count void   )  const
 

Return the number of allocated slots in for the PICurrent object.


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.

Reimplemented from CORBA::Object.

PortableInterceptor::SlotId TAO_ORBInitInfo::slot_count_ [private]
 

The number of allocated slots.


The documentation for this class was generated from the following files:
Generated on Thu Feb 16 03:57:07 2006 for TAO_PI by  doxygen 1.3.9.1