TAO_RTEvent
2.3.1
|
The RtecEventChannelAdmin::EventChannel implementation. More...
#include <EC_Event_Channel_Base.h>
Protected Types | |
enum | { EC_S_IDLE, EC_S_ACTIVATING, EC_S_ACTIVE, EC_S_DESTROYING, EC_S_DESTROYED } |
Flag to track the status of the event channel. More... | |
Protected Member Functions | |
TAO_EC_Event_Channel_Base (const TAO_EC_Event_Channel_Attributes &attributes, TAO_EC_Factory *factory=0, int own_factory=0) | |
TAO_EC_Factory * | factory (void) const |
void | factory (TAO_EC_Factory *factory, int own_factory=0) |
void | create_strategies (void) |
void | deactivate_supplier_admin (void) |
void | deactivate_consumer_admin (void) |
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.
|
protected |
|
virtual |
destructor
|
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
|
virtual |
Start the internal threads (if any), etc. After this call the EC can be used.
|
virtual |
|
virtual |
Used to inform the EC that a Consumer has connected or disconnected from it.
|
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
|
protected |
Create all strategies
ACE_Lock * TAO_EC_Event_Channel_Base::create_supplier_lock | ( | void | ) |
|
protected |
Helpers. Deactivate admins from their POAs, ignoring any CORBA exceptions.
|
protected |
Helpers. Deactivate admins from their POAs, ignoring any CORBA exceptions.
|
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
|
virtual |
|
virtual |
TAO_EC_Dispatching * TAO_EC_Event_Channel_Base::dispatching | ( | void | ) | const |
Access the dispatching module....
|
protected |
Get the factory.
|
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....
|
virtual |
The default implementation is: this->consumer_admin ()->_this ();
|
virtual |
|
virtual |
|
virtual |
The default implementation is: this->supplier_admin ()->_this ();
|
virtual |
|
virtual |
|
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.
|
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...
|
protected |
The ConsumerAdmin implementation.
|
protected |
Strategies to disconnect misbehaving or destroyed consumers.
|
protected |
|
protected |
Consumer reconnection flags.
|
protected |
If not zero we send callbacks when a proxy is disconnected.
|
protected |
The dispatching "module".
|
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.
|
protected |
The filter builder.
|
protected |
Mutex to protect the internal state.
|
protected |
The observer strategy.
|
protected |
Flag that indicates if we own the factory.
|
protected |
The scheduler (may be nil)
|
protected |
The scheduling strategy.
|
protected |
|
protected |
The SupplierAdmin implementation.
|
protected |
Strategies to disconnect misbehaving or destroyed suppliers.
|
protected |
The filter builder for suppliers.
|
protected |
The POAs used to activate "supplier-side" and "consumer-side" objects.
|
protected |
Supplier reconnection flags.
|
protected |
The timeout generator.