TAO_Strategies  2.4.2
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
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]

Public Types

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, TAO_REACTOR_DEV_POLL = 6
}
 Type of Reactor. More...
 
enum  { TAO_THREAD_QUEUE_NOT_SET, TAO_THREAD_QUEUE_FIFO, TAO_THREAD_QUEUE_LIFO }
 Thread queueing Strategy. More...
 
- Public Types inherited from TAO_Resource_Factory
enum  Purging_Strategy
 
enum  Resource_Usage
 
- Public Types inherited from ACE_Event_Handler
typedef long Reference_Count
 

Public Member Functions

 TAO_Advanced_Resource_Factory (void)
 Constructor. More...
 
virtual ~TAO_Advanced_Resource_Factory (void)
 Destructor. More...
 
virtual int init (int argc, ACE_TCHAR *argv[])
 Dynamic linking hook. More...
 
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)
 
- Public Member Functions inherited from TAO_Default_Resource_Factory
 TAO_Default_Resource_Factory (void)
 
virtual ~TAO_Default_Resource_Factory (void)
 
int parse_args (int argc, ACE_TCHAR *argv[])
 
int parse_args (int argc, ACE_TCHAR *argv[])
 
int get_parser_names (char **&names, int &number_of_names)
 
int cdr_allocator_source (void)
 
virtual int use_locked_data_blocks (void) const
 
virtual ACE_Reactorget_reactor (void)
 
virtual void reclaim_reactor (ACE_Reactor *)
 
virtual TAO_Acceptor_Registryget_acceptor_registry (void)
 
virtual TAO_Connector_Registryget_connector_registry (void)
 
virtual void use_local_memory_pool (bool)
 
virtual ACE_Allocatoroutput_cdr_dblock_allocator (void)
 
virtual ACE_Allocatoroutput_cdr_buffer_allocator (void)
 
virtual ACE_Allocatoroutput_cdr_msgblock_allocator (void)
 
virtual TAO_Codeset_Managercodeset_manager (void)
 
virtual int cache_maximum (void) const
 
virtual int purge_percentage (void) const
 
virtual int max_muxed_connections (void) const
 
virtual ACE_Lockcreate_cached_connection_lock (void)
 
virtual int locked_transport_cache (void)
 
virtual TAO_Flushing_Strategycreate_flushing_strategy (void)
 
TAO_Resource_Factory::Resource_Usage resource_usage_strategy (void) const
 
virtual auto_ptr< TAO_GIOP_Fragmentation_Strategycreate_fragmentation_strategy (TAO_Transport *transport, CORBA::ULong max_message_size) const
 
virtual void disable_factory (void)
 
virtual bool drop_replies_during_shutdown (void) const
 
- Public Member Functions inherited from TAO_Resource_Factory
 TAO_Resource_Factory (void)
 
virtual ~TAO_Resource_Factory (void)
 
- Public Member Functions inherited from ACE_Service_Object
 ACE_Service_Object (ACE_Reactor *=0)
 
virtual ~ACE_Service_Object (void)
 
virtual int suspend (void)
 
virtual int resume (void)
 
- Public Member Functions inherited from ACE_Event_Handler
virtual ~ACE_Event_Handler (void)
 
virtual ACE_HANDLE get_handle (void) const
 
virtual void set_handle (ACE_HANDLE)
 
virtual int priority (void) const
 
virtual void priority (int priority)
 
virtual int handle_input (ACE_HANDLE fd=ACE_INVALID_HANDLE)
 
virtual int handle_output (ACE_HANDLE fd=ACE_INVALID_HANDLE)
 
virtual int handle_exception (ACE_HANDLE fd=ACE_INVALID_HANDLE)
 
virtual int handle_timeout (const ACE_Time_Value &current_time, const void *act=0)
 
virtual int handle_exit (ACE_Process *)
 
virtual int handle_close (ACE_HANDLE handle, ACE_Reactor_Mask close_mask)
 
virtual int handle_signal (int signum, siginfo_t *=0, ucontext_t *=0)
 
virtual int resume_handler (void)
 
virtual int handle_qos (ACE_HANDLE=ACE_INVALID_HANDLE)
 
virtual int handle_group_qos (ACE_HANDLE=ACE_INVALID_HANDLE)
 
virtual void reactor (ACE_Reactor *reactor)
 
virtual ACE_Reactorreactor (void) const
 
virtual ACE_Reactor_Timer_Interfacereactor_timer_interface (void) const
 
virtual Reference_Count add_reference (void)
 
virtual Reference_Count remove_reference (void)
 
Reference_Counting_Policyreference_counting_policy (void)
 
- Public Member Functions inherited from ACE_Shared_Object
 ACE_Shared_Object (void)
 
virtual ~ACE_Shared_Object (void)
 
virtual int fini (void)
 
virtual int info (ACE_TCHAR **info_string, size_t length=0) const
 

Protected Member Functions

virtual ACE_Reactor_Implallocate_reactor_impl (void) const
 Obtain the reactor implementation. More...
 
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 Member Functions inherited from TAO_Default_Resource_Factory
TAO_Time_Policy_Managertime_policy_manager (void) const
 
ACE_Timer_Queuecreate_timer_queue (void) const
 
void destroy_timer_queue (ACE_Timer_Queue *tmq) const
 
int add_to_ior_parser_names (const char *)
 
void report_option_value_error (const ACE_TCHAR *option_name, const ACE_TCHAR *option_value)
 
- Protected Member Functions inherited from ACE_Event_Handler
 ACE_Event_Handler (ACE_Reactor *=0, int priority=ACE_Event_Handler::LO_PRIORITY)
 

Protected Attributes

TAO_ProtocolFactorySet protocol_factories_
 List of loaded protocol factories. More...
 
int reactor_type_
 Flag indicating which kind of reactor we should use. More...
 
int threadqueue_type_
 
Allocator_Lock_Type cdr_allocator_type_
 The type of CDR allocators. More...
 
Allocator_Lock_Type amh_response_handler_allocator_lock_type_
 Type of lock used by AMH response handler allocator. More...
 
Allocator_Lock_Type ami_response_handler_allocator_lock_type_
 Type of lock used by AMI response handler allocator. More...
 
- Protected Attributes inherited from TAO_Default_Resource_Factory
 LOCAL_MEMORY_POOL
 
 DEFAULT
 
int use_locked_data_blocks_
 
int parser_names_count_
 
char ** parser_names_
 
int index_
 
TAO_ProtocolFactorySet protocol_factories_
 
TAO_Resource_Factory::Purging_Strategy connection_purging_type_
 
int cache_maximum_
 
int purge_percentage_
 
int max_muxed_connections_
 
int reactor_mask_signals_
 
bool dynamically_allocated_reactor_
 
int options_processed_
 
int factory_disabled_
 
Output_CDR_Allocator_Type output_cdr_allocator_type_
 
bool use_local_memory_pool_
 
- Protected Attributes inherited from ACE_Event_Handler
Atomic_Reference_Count reference_count_
 

Additional Inherited Members

- Static Public Member Functions inherited from ACE_Event_Handler
static ACE_THR_FUNC_RETURN read_adapter (void *event_handler)
 
static int register_stdin_handler (ACE_Event_Handler *eh, ACE_Reactor *reactor, ACE_Thread_Manager *thr_mgr, int flags=THR_DETACHED)
 
static int remove_stdin_handler (ACE_Reactor *reactor, ACE_Thread_Manager *thr_mgr)
 
- Public Attributes inherited from TAO_Default_Resource_Factory
 TAO_ALLOCATOR_THREAD_LOCK
 
- Public Attributes inherited from TAO_Resource_Factory
 LRU
 
 LFU
 
 FIFO
 
 NOOP
 
 TAO_EAGER
 
 TAO_LAZY
 
- Public Attributes inherited from ACE_Service_Object
 ACE_ALLOC_HOOK_DECLARE
 
- Public Attributes inherited from ACE_Event_Handler
 LO_PRIORITY
 
 HI_PRIORITY
 
 NULL_MASK
 
 READ_MASK
 
 WRITE_MASK
 
 EXCEPT_MASK
 
 ACCEPT_MASK
 
 CONNECT_MASK
 
 TIMER_MASK
 
 QOS_MASK
 
 GROUP_QOS_MASK
 
 SIGNAL_MASK
 
 ALL_EVENTS_MASK
 
 RWE_MASK
 
 DONT_CALL
 
 ACE_EVENT_HANDLER_NOT_RESUMED
 
 ACE_REACTOR_RESUMES_HANDLER
 
 ACE_APPLICATION_RESUMES_HANDLER
 
- Protected Types inherited from TAO_Default_Resource_Factory
enum  Output_CDR_Allocator_Type
 
- Protected Types inherited from ACE_Event_Handler
typedef ACE_Atomic_Op< ACE_SYNCH_MUTEX, Reference_CountAtomic_Reference_Count
 

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 
TAO_REACTOR_DEV_POLL 
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).

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
protectedvirtual

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.

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  )
protectedvirtual

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

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: