TAO_Advanced_Resource_Factory Class Reference

TAO's default resource factory. More...

#include <advanced_resource.h>

Inheritance diagram for TAO_Advanced_Resource_Factory:

Inheritance graph
[legend]
Collaboration diagram for TAO_Advanced_Resource_Factory:

Collaboration graph
[legend]
List of all members.

Public Types

 TAO_ALLOCATOR_NULL_LOCK
 TAO_ALLOCATOR_THREAD_LOCK
 TAO_REACTOR_SELECT_MT = 1
 Use ACE_Token.
 TAO_REACTOR_SELECT_ST = 2
 Use ACE_Noop_Token.
 TAO_REACTOR_WFMO = 3
 TAO_REACTOR_MSGWFMO = 4
 TAO_REACTOR_TP = 5
 TAO_THREAD_QUEUE_NOT_SET
 Not set, use LIFO.
 TAO_THREAD_QUEUE_FIFO
 FIFO, first-in-first-out.
 TAO_THREAD_QUEUE_LIFO
 LIFO, last-in-first-out (default).
enum  Allocator_Lock_Type { TAO_ALLOCATOR_NULL_LOCK, TAO_ALLOCATOR_THREAD_LOCK }
 Type of lock used for the allocators. More...
enum  {
  TAO_REACTOR_SELECT_MT = 1, TAO_REACTOR_SELECT_ST = 2, TAO_REACTOR_WFMO = 3, TAO_REACTOR_MSGWFMO = 4,
  TAO_REACTOR_TP = 5
}
 Type of Reactor. More...
enum  { TAO_THREAD_QUEUE_NOT_SET, TAO_THREAD_QUEUE_FIFO, TAO_THREAD_QUEUE_LIFO }
 Thread queueing Strategy. More...

Public Member Functions

 TAO_Advanced_Resource_Factory (void)
 Constructor.
virtual ~TAO_Advanced_Resource_Factory (void)
 Destructor.
virtual int init (int argc, ACE_TCHAR *argv[])
 Dynamic linking hook.
virtual TAO_Connection_Purging_Strategycreate_purging_strategy (void)
virtual TAO_LF_Strategycreate_lf_strategy (void)
Resource Retrieval
virtual int init_protocol_factories (void)
virtual ACE_Allocatorinput_cdr_dblock_allocator (void)
virtual ACE_Allocatorinput_cdr_buffer_allocator (void)
virtual ACE_Allocatorinput_cdr_msgblock_allocator (void)
virtual ACE_Allocatoramh_response_handler_allocator (void)
virtual ACE_Allocatorami_response_handler_allocator (void)
virtual int input_cdr_allocator_type_locked (void)
virtual TAO_ProtocolFactorySetget_protocol_factories (void)

Protected Member Functions

virtual ACE_Reactor_Implallocate_reactor_impl (void) const
 Obtain the reactor implementation.
void report_option_value_error (const ACE_TCHAR *option_name, const ACE_TCHAR *option_value)
void report_unsupported_error (const ACE_TCHAR *option_name)
virtual int load_default_protocols (void)

Protected Attributes

TAO_ProtocolFactorySet protocol_factories_
 List of loaded protocol factories.
int reactor_registry_type_
 The type of reactor registry.
int reactor_type_
 Flag indicating which kind of reactor we should use.
int threadqueue_type_
Allocator_Lock_Type cdr_allocator_type_
 The type of CDR allocators.
Allocator_Lock_Type amh_response_handler_allocator_lock_type_
 Type of lock used by AMH response handler allocator.
Allocator_Lock_Type ami_response_handler_allocator_lock_type_
 Type of lock used by AMI response handler allocator.

Detailed Description

TAO's default resource factory.

Using a <{resource source specifier}> as a discriminator, the factory can return resource instances which are, e.g., global, stored in thread-specific storage, stored in shared memory, etc.


Member Enumeration Documentation

anonymous enum

Type of Reactor.

Enumerator:
TAO_REACTOR_SELECT_MT  Use ACE_Token.
TAO_REACTOR_SELECT_ST  Use ACE_Noop_Token.
TAO_REACTOR_WFMO 
TAO_REACTOR_MSGWFMO 
TAO_REACTOR_TP 

anonymous enum

Thread queueing Strategy.

Enumerator:
TAO_THREAD_QUEUE_NOT_SET  Not set, use LIFO.
TAO_THREAD_QUEUE_FIFO  FIFO, first-in-first-out.
TAO_THREAD_QUEUE_LIFO  LIFO, last-in-first-out (default).

enum TAO_Advanced_Resource_Factory::Allocator_Lock_Type

Type of lock used for the allocators.

Enumerator:
TAO_ALLOCATOR_NULL_LOCK 
TAO_ALLOCATOR_THREAD_LOCK 


Constructor & Destructor Documentation

TAO_Advanced_Resource_Factory::TAO_Advanced_Resource_Factory ( void   ) 

Constructor.

TAO_Advanced_Resource_Factory::~TAO_Advanced_Resource_Factory ( void   )  [virtual]

Destructor.


Member Function Documentation

ACE_Reactor_Impl * TAO_Advanced_Resource_Factory::allocate_reactor_impl ( void   )  const [protected, virtual]

Obtain the reactor implementation.

Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::amh_response_handler_allocator ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::ami_response_handler_allocator ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

TAO_LF_Strategy * TAO_Advanced_Resource_Factory::create_lf_strategy ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

TAO_Connection_Purging_Strategy * TAO_Advanced_Resource_Factory::create_purging_strategy ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

TAO_ProtocolFactorySet * TAO_Advanced_Resource_Factory::get_protocol_factories ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

virtual int TAO_Advanced_Resource_Factory::init ( int  argc,
ACE_TCHAR argv[] 
) [virtual]

Dynamic linking hook.

Reimplemented from TAO_Default_Resource_Factory.

int TAO_Advanced_Resource_Factory::init_protocol_factories ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

int TAO_Advanced_Resource_Factory::input_cdr_allocator_type_locked ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::input_cdr_buffer_allocator ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::input_cdr_dblock_allocator ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::input_cdr_msgblock_allocator ( void   )  [virtual]

Reimplemented from TAO_Default_Resource_Factory.

int TAO_Advanced_Resource_Factory::load_default_protocols ( void   )  [protected, virtual]

Reimplemented from TAO_Default_Resource_Factory.

void TAO_Advanced_Resource_Factory::report_option_value_error ( const ACE_TCHAR option_name,
const ACE_TCHAR option_value 
) [protected]

Reimplemented from TAO_Default_Resource_Factory.

void TAO_Advanced_Resource_Factory::report_unsupported_error ( const ACE_TCHAR option_name  )  [protected]


Member Data Documentation

Allocator_Lock_Type TAO_Advanced_Resource_Factory::amh_response_handler_allocator_lock_type_ [protected]

Type of lock used by AMH response handler allocator.

Allocator_Lock_Type TAO_Advanced_Resource_Factory::ami_response_handler_allocator_lock_type_ [protected]

Type of lock used by AMI response handler allocator.

Allocator_Lock_Type TAO_Advanced_Resource_Factory::cdr_allocator_type_ [protected]

The type of CDR allocators.

TAO_ProtocolFactorySet TAO_Advanced_Resource_Factory::protocol_factories_ [protected]

List of loaded protocol factories.

Reimplemented from TAO_Default_Resource_Factory.

int TAO_Advanced_Resource_Factory::reactor_registry_type_ [protected]

The type of reactor registry.

int TAO_Advanced_Resource_Factory::reactor_type_ [protected]

Flag indicating which kind of reactor we should use.

int TAO_Advanced_Resource_Factory::threadqueue_type_ [protected]

The type of queueing strategy to use for multi-threaded select reactors, TAO_REACTOR_SELECT_MT and TAO_REACTOR_TP.


The documentation for this class was generated from the following files:
Generated on Fri Oct 6 16:07:11 2006 for TAO_Strategies by  doxygen 1.4.7-1