TAO_RTEvent
2.0.8
|
The RtecEventChannelAdmin::EventChannel implementation. More...
#include <EC_Event_Channel_Base.h>
The RtecEventChannelAdmin::EventChannel implementation.
This class is the Mediator between all the classes in the EC implementation, its main task is to redirect the messages to the right components, to hold and manage the lifetime of the long lived objects (Timer_Module, SupplierAdmin, ConsumerAdmin and Dispatching) and to provide a simpler interface to the EC_Factory.
anonymous enum [protected] |
TAO_EC_Event_Channel_Base::~TAO_EC_Event_Channel_Base | ( | void | ) | [virtual] |
destructor
TAO_EC_Event_Channel_Base::TAO_EC_Event_Channel_Base | ( | const TAO_EC_Event_Channel_Attributes & | attributes, |
TAO_EC_Factory * | factory = 0 , |
||
int | own_factory = 0 |
||
) | [protected] |
Constructor If own_factory is not 0 it assumes ownership of the factory. If the factory is nil it uses the Service_Configurator to load the Factory, if not found it uses TAO_EC_Default_Resource_Factory
void TAO_EC_Event_Channel_Base::activate | ( | void | ) | [virtual] |
Start the internal threads (if any), etc. After this call the EC can be used.
RtecEventChannelAdmin::Observer_Handle TAO_EC_Event_Channel_Base::append_observer | ( | RtecEventChannelAdmin::Observer_ptr | observer | ) | [virtual] |
void TAO_EC_Event_Channel_Base::connected | ( | TAO_EC_ProxyPushConsumer * | consumer | ) | [virtual] |
Used to inform the EC that a Consumer has connected or disconnected from it.
void TAO_EC_Event_Channel_Base::connected | ( | TAO_EC_ProxyPushSupplier * | supplier | ) | [virtual] |
Used to inform the EC that a Supplier has connected or disconnected from it.
TAO_EC_ConsumerAdmin * TAO_EC_Event_Channel_Base::consumer_admin | ( | void | ) | const |
Access the consumer admin implementation, useful for controlling the activation...
TAO_EC_ConsumerControl * TAO_EC_Event_Channel_Base::consumer_control | ( | void | ) | const |
Access the client control strategies.
PortableServer::POA_ptr TAO_EC_Event_Channel_Base::consumer_poa | ( | void | ) |
int TAO_EC_Event_Channel_Base::consumer_reconnect | ( | void | ) | const |
Can the consumers reconnect to the EC?
ACE_Lock * TAO_EC_Event_Channel_Base::create_consumer_lock | ( | void | ) |
Locking strategies for the ProxyPushConsumer and ProxyPushSupplier objects
void TAO_EC_Event_Channel_Base::create_proxy | ( | TAO_EC_ProxyPushSupplier *& | x | ) |
Create and destroy a ProxyPushSupplier.
void TAO_EC_Event_Channel_Base::create_proxy | ( | TAO_EC_ProxyPushConsumer *& | x | ) |
Create and destroy a ProxyPushConsumer.
void TAO_EC_Event_Channel_Base::create_proxy_collection | ( | TAO_EC_ProxyPushSupplier_Collection *& | x | ) |
Create and destroy a the collections used to store ProxyPushSuppliers
void TAO_EC_Event_Channel_Base::create_proxy_collection | ( | TAO_EC_ProxyPushConsumer_Collection *& | x | ) |
Create and destroy a the collections used to store ProxyPushConsumers
void TAO_EC_Event_Channel_Base::create_strategies | ( | void | ) | [protected] |
Create all strategies
ACE_Lock * TAO_EC_Event_Channel_Base::create_supplier_lock | ( | void | ) |
void TAO_EC_Event_Channel_Base::deactivate_consumer_admin | ( | void | ) | [protected] |
Helpers. Deactivate admins from their POAs, ignoring any CORBA exceptions.
void TAO_EC_Event_Channel_Base::deactivate_supplier_admin | ( | void | ) | [protected] |
Helpers. Deactivate admins from their POAs, ignoring any CORBA exceptions.
void TAO_EC_Event_Channel_Base::destroy | ( | void | ) | [virtual] |
Commit suicide.
void TAO_EC_Event_Channel_Base::destroy_consumer_lock | ( | ACE_Lock * | x | ) |
void TAO_EC_Event_Channel_Base::destroy_proxy | ( | TAO_EC_ProxyPushSupplier * | supplier | ) |
void TAO_EC_Event_Channel_Base::destroy_proxy | ( | TAO_EC_ProxyPushConsumer * | consumer | ) |
void TAO_EC_Event_Channel_Base::destroy_proxy_collection | ( | TAO_EC_ProxyPushSupplier_Collection * | x | ) |
void TAO_EC_Event_Channel_Base::destroy_proxy_collection | ( | TAO_EC_ProxyPushConsumer_Collection * | x | ) |
void TAO_EC_Event_Channel_Base::destroy_supplier_lock | ( | ACE_Lock * | x | ) |
int TAO_EC_Event_Channel_Base::destroyed | ( | void | ) |
Return 1 if the event channel is already destroyed.
int TAO_EC_Event_Channel_Base::disconnect_callbacks | ( | void | ) | const |
Should we send callback disconnect messages when a proxy is disconnected by the client
void TAO_EC_Event_Channel_Base::disconnected | ( | TAO_EC_ProxyPushConsumer * | consumer | ) | [virtual] |
void TAO_EC_Event_Channel_Base::disconnected | ( | TAO_EC_ProxyPushSupplier * | supplier | ) | [virtual] |
TAO_EC_Dispatching * TAO_EC_Event_Channel_Base::dispatching | ( | void | ) | const |
Access the dispatching module....
TAO_EC_Factory * TAO_EC_Event_Channel_Base::factory | ( | void | ) | const [protected] |
Get the factory.
void TAO_EC_Event_Channel_Base::factory | ( | TAO_EC_Factory * | factory, |
int | own_factory = 0 |
||
) | [protected] |
Set the factory, if own_factory is not 0 it assumes ownership of the factory.
TAO_EC_Filter_Builder * TAO_EC_Event_Channel_Base::filter_builder | ( | void | ) | const |
Access the filter builder....
RtecEventChannelAdmin::ConsumerAdmin_ptr TAO_EC_Event_Channel_Base::for_consumers | ( | void | ) | [virtual] |
The default implementation is: this->consumer_admin ()->_this ();
void TAO_EC_Event_Channel_Base::for_each_consumer | ( | TAO_ESF_Worker< TAO_EC_ProxyPushSupplier > * | worker | ) | [virtual] |
void TAO_EC_Event_Channel_Base::for_each_supplier | ( | TAO_ESF_Worker< TAO_EC_ProxyPushConsumer > * | worker | ) | [virtual] |
RtecEventChannelAdmin::SupplierAdmin_ptr TAO_EC_Event_Channel_Base::for_suppliers | ( | void | ) | [virtual] |
The default implementation is: this->supplier_admin ()->_this ();
void TAO_EC_Event_Channel_Base::reconnected | ( | TAO_EC_ProxyPushConsumer * | consumer | ) | [virtual] |
void TAO_EC_Event_Channel_Base::reconnected | ( | TAO_EC_ProxyPushSupplier * | supplier | ) | [virtual] |
void TAO_EC_Event_Channel_Base::remove_observer | ( | RtecEventChannelAdmin::Observer_Handle | handle | ) | [virtual] |
CORBA::Object_ptr TAO_EC_Event_Channel_Base::scheduler | ( | void | ) |
Obtain the scheduler, the user must release.
TAO_EC_Scheduling_Strategy * TAO_EC_Event_Channel_Base::scheduling_strategy | ( | void | ) | const |
Access the scheduling strategy.
void TAO_EC_Event_Channel_Base::shutdown | ( | void | ) | [virtual] |
Shutdown any internal threads, cleanup all the internal structures, flush all the messages, etc.
TAO_EC_SupplierAdmin * TAO_EC_Event_Channel_Base::supplier_admin | ( | void | ) | const |
Access the supplier admin implementation, useful for controlling the activation...
TAO_EC_SupplierControl * TAO_EC_Event_Channel_Base::supplier_control | ( | void | ) | const |
TAO_EC_Supplier_Filter_Builder * TAO_EC_Event_Channel_Base::supplier_filter_builder | ( | void | ) | const |
Access the filter builder....
PortableServer::POA_ptr TAO_EC_Event_Channel_Base::supplier_poa | ( | void | ) |
Access the supplier and consumer POAs from the factory.
int TAO_EC_Event_Channel_Base::supplier_reconnect | ( | void | ) | const |
Can the suppliers reconnect to the EC?
TAO_EC_Timeout_Generator * TAO_EC_Event_Channel_Base::timeout_generator | ( | void | ) | const |
Access the timer module...
The ConsumerAdmin implementation.
Strategies to disconnect misbehaving or destroyed consumers.
int TAO_EC_Event_Channel_Base::consumer_reconnect_ [protected] |
Consumer reconnection flags.
int TAO_EC_Event_Channel_Base::disconnect_callbacks_ [protected] |
If not zero we send callbacks when a proxy is disconnected.
The dispatching "module".
TAO_EC_Factory* TAO_EC_Event_Channel_Base::factory_ [protected] |
This is the abstract factory that creates all the objects that compose an event channel, the event channel simply acts as a Mediator among them.
The filter builder.
TAO_SYNCH_MUTEX TAO_EC_Event_Channel_Base::mutex_ [protected] |
Mutex to protect the internal state.
The observer strategy.
int TAO_EC_Event_Channel_Base::own_factory_ [protected] |
Flag that indicates if we own the factory.
The scheduler (may be nil)
The scheduling strategy.
int TAO_EC_Event_Channel_Base::status_ [protected] |
The SupplierAdmin implementation.
Strategies to disconnect misbehaving or destroyed suppliers.
The filter builder for suppliers.
The POAs used to activate "supplier-side" and "consumer-side" objects.
int TAO_EC_Event_Channel_Base::supplier_reconnect_ [protected] |
Supplier reconnection flags.
The timeout generator.