TAO_CosEvent
2.2.8
|
#include <CEC_TypedEventChannel.h>
Classes | |
class | ServantBaseHash |
Public Types | |
typedef ACE_Hash_Map_Manager_Ex < PortableServer::ServantBase *, unsigned int, ServantBaseHash, ACE_Equal_To < PortableServer::ServantBase * > , TAO_SYNCH_MUTEX > | ServantRetryMap |
typedef ACE_Hash_Map_Manager_Ex< const char *, TAO_CEC_Operation_Params *, ACE_Hash< const char * > , ACE_Equal_To< const char * > , ACE_Null_Mutex > | InterfaceDescription |
typedef InterfaceDescription::iterator | Iterator |
Public Member Functions | |
TAO_CEC_TypedEventChannel (const TAO_CEC_TypedEventChannel_Attributes &attributes, TAO_CEC_Factory *factory=0, int own_factory=0) | |
virtual | ~TAO_CEC_TypedEventChannel (void) |
Destructor. More... | |
virtual void | activate (void) |
virtual void | shutdown (void) |
TAO_CEC_Dispatching * | dispatching (void) const |
Access the dispatching module.... More... | |
TAO_CEC_TypedConsumerAdmin * | typed_consumer_admin (void) const |
Access the consumer admin implementation. More... | |
TAO_CEC_TypedSupplierAdmin * | typed_supplier_admin (void) const |
Access the supplier admin implementation. More... | |
TAO_CEC_ConsumerControl * | consumer_control (void) const |
Access the consumer control strategy. More... | |
TAO_CEC_SupplierControl * | supplier_control (void) const |
Access the supplier control strategy. More... | |
void | create_proxy (TAO_CEC_ProxyPushSupplier *&) |
Create and destroy a ProxyPushSupplier. More... | |
void | destroy_proxy (TAO_CEC_ProxyPushSupplier *) |
void | create_proxy (TAO_CEC_TypedProxyPushConsumer *&) |
Create and destroy a TypedProxyPushConsumer. More... | |
void | destroy_proxy (TAO_CEC_TypedProxyPushConsumer *) |
void | create_proxy_collection (TAO_CEC_ProxyPushSupplier_Collection *&) |
void | destroy_proxy_collection (TAO_CEC_ProxyPushSupplier_Collection *) |
void | create_proxy_collection (TAO_CEC_TypedProxyPushConsumer_Collection *&) |
void | destroy_proxy_collection (TAO_CEC_TypedProxyPushConsumer_Collection *) |
PortableServer::POA_ptr | typed_supplier_poa (void) |
Access the supplier and consumer POAs from the factory. More... | |
PortableServer::POA_ptr | typed_consumer_poa (void) |
ACE_Lock * | create_consumer_lock (void) |
void | destroy_consumer_lock (ACE_Lock *) |
ACE_Lock * | create_supplier_lock (void) |
void | destroy_supplier_lock (ACE_Lock *) |
virtual void | connected (TAO_CEC_TypedProxyPushConsumer *) |
virtual void | reconnected (TAO_CEC_TypedProxyPushConsumer *) |
virtual void | disconnected (TAO_CEC_TypedProxyPushConsumer *) |
virtual void | connected (TAO_CEC_ProxyPushSupplier *) |
virtual void | reconnected (TAO_CEC_ProxyPushSupplier *) |
virtual void | disconnected (TAO_CEC_ProxyPushSupplier *) |
int | consumer_reconnect (void) const |
Can the consumers reconnect to the EC? More... | |
int | supplier_reconnect (void) const |
Can the suppliers reconnect to the EC? More... | |
int | disconnect_callbacks (void) const |
TAO_CEC_Operation_Params * | find_from_ifr_cache (const char *operation) |
Finds a operation/parameter from the IFR cache. More... | |
int | consumer_register_uses_interace (const char *uses_interface) |
Function allows consumer admin to register the uses interface. More... | |
int | supplier_register_supported_interface (const char *supported_interface) |
Function allows supplier admin to register the supported interface. More... | |
const char * | supported_interface (void) const |
Function to return the supported_interface_. More... | |
CORBA::RepositoryId | base_interfaces (CORBA::ULong index) const |
Function to return the base_interfaces_. More... | |
CORBA::ULong | number_of_base_interfaces (void) const |
Function to return the number of base_interfaces_. More... | |
virtual void | create_operation_list (TAO_CEC_Operation_Params *oper_params, CORBA::NVList_out new_list) |
Function populates the NVList from the provide param information. More... | |
virtual void | create_list (CORBA::Long count, CORBA::NVList_out new_list) |
Function creates an empty NVList. More... | |
virtual ::CosTypedEventChannelAdmin::TypedConsumerAdmin_ptr | for_consumers (void) |
virtual ::CosTypedEventChannelAdmin::TypedSupplierAdmin_ptr | for_suppliers (void) |
virtual void | destroy (void) |
ServantRetryMap & | get_servant_retry_map (void) |
CORBA::Policy_ptr | create_roundtrip_timeout_policy (const ACE_Time_Value &timeout) |
Forwarded to the factory. More... | |
Protected Member Functions | |
int | cache_interface_description (const char *interface_) |
Function caches the full interface description from the IFR. More... | |
int | insert_into_ifr_cache (const char *operation, TAO_CEC_Operation_Params *parameters) |
Insert a operation/parameter into the IFR cache. More... | |
int | clear_ifr_cache (void) |
Function clears the IFR cache. More... | |
Private Attributes | |
PortableServer::POA_var | typed_supplier_poa_ |
PortableServer::POA_var | typed_consumer_poa_ |
CORBA::ORB_var | orb_ |
The ORB. More... | |
CORBA::Repository_var | interface_repository_ |
Storage of the IFR reference. More... | |
TAO_CEC_Factory * | factory_ |
int | own_factory_ |
Flag that indicates if we own the factory. More... | |
TAO_CEC_Dispatching * | dispatching_ |
The dispatching "module". More... | |
TAO_CEC_TypedConsumerAdmin * | typed_consumer_admin_ |
The ConsumerAdmin implementation. More... | |
TAO_CEC_TypedSupplierAdmin * | typed_supplier_admin_ |
The SupplierAdmin implementation. More... | |
int | consumer_reconnect_ |
Consumer reconnection flags. More... | |
int | supplier_reconnect_ |
Supplier reconnection flags. More... | |
int | disconnect_callbacks_ |
If not zero we send callbacks when a proxy is disconnected. More... | |
int | destroy_on_shutdown_ |
If not zero the event channel is destroyed on shutdown. More... | |
int | destroyed_ |
Set if the event channel has been destroyed. More... | |
TAO_CEC_ConsumerControl * | consumer_control_ |
ServantRetryMap | retry_map_ |
TAO_CEC_SupplierControl * | supplier_control_ |
ACE_CString | uses_interface_ |
The uses_interface_ for the TypedConsumerAdmin. More... | |
ACE_CString | supported_interface_ |
The supported_interface_ for the TypedSupplierAdmin. More... | |
InterfaceDescription | interface_description_ |
The IFR cache for the interface description. More... | |
CORBA::RepositoryIdSeq | base_interfaces_ |
The supported_interface_ base interfaces. More... | |
typedef ACE_Hash_Map_Manager_Ex<const char *, TAO_CEC_Operation_Params *, ACE_Hash<const char *>, ACE_Equal_To<const char *>, ACE_Null_Mutex> TAO_CEC_TypedEventChannel::InterfaceDescription |
typedef ACE_Hash_Map_Manager_Ex<PortableServer::ServantBase*, unsigned int, ServantBaseHash, ACE_Equal_To<PortableServer::ServantBase*>, TAO_SYNCH_MUTEX> TAO_CEC_TypedEventChannel::ServantRetryMap |
TAO_CEC_TypedEventChannel::TAO_CEC_TypedEventChannel | ( | const TAO_CEC_TypedEventChannel_Attributes & | attributes, |
TAO_CEC_Factory * | factory = 0 , |
||
int | own_factory = 0 |
||
) |
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_CEC_Default_Resource_Factory
|
virtual |
Destructor.
|
virtual |
Start the internal threads (if any), etc. After this call the EC can be used.
CORBA::RepositoryId TAO_CEC_TypedEventChannel::base_interfaces | ( | CORBA::ULong | index | ) | const |
Function to return the base_interfaces_.
|
protected |
Function caches the full interface description from the IFR.
|
protected |
Function clears the IFR cache.
|
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_CEC_ConsumerControl * TAO_CEC_TypedEventChannel::consumer_control | ( | void | ) | const |
Access the consumer control strategy.
int TAO_CEC_TypedEventChannel::consumer_reconnect | ( | void | ) | const |
Can the consumers reconnect to the EC?
int TAO_CEC_TypedEventChannel::consumer_register_uses_interace | ( | const char * | uses_interface | ) |
Function allows consumer admin to register the uses interface.
ACE_Lock * TAO_CEC_TypedEventChannel::create_consumer_lock | ( | void | ) |
Locking strategies for the ProxyPushConsumer and ProxyPushSupplier objects
|
virtual |
Function creates an empty NVList.
|
virtual |
Function populates the NVList from the provide param information.
void TAO_CEC_TypedEventChannel::create_proxy | ( | TAO_CEC_ProxyPushSupplier *& | x | ) |
Create and destroy a ProxyPushSupplier.
void TAO_CEC_TypedEventChannel::create_proxy | ( | TAO_CEC_TypedProxyPushConsumer *& | x | ) |
Create and destroy a TypedProxyPushConsumer.
void TAO_CEC_TypedEventChannel::create_proxy_collection | ( | TAO_CEC_ProxyPushSupplier_Collection *& | x | ) |
Create and destroy a the collections used to store Proxy*Suppliers
void TAO_CEC_TypedEventChannel::create_proxy_collection | ( | TAO_CEC_TypedProxyPushConsumer_Collection *& | x | ) |
Create and destroy a the collections used to store Proxy*Consumers
CORBA::Policy_ptr TAO_CEC_TypedEventChannel::create_roundtrip_timeout_policy | ( | const ACE_Time_Value & | timeout | ) |
Forwarded to the factory.
ACE_Lock * TAO_CEC_TypedEventChannel::create_supplier_lock | ( | void | ) |
|
virtual |
void TAO_CEC_TypedEventChannel::destroy_consumer_lock | ( | ACE_Lock * | x | ) |
void TAO_CEC_TypedEventChannel::destroy_proxy | ( | TAO_CEC_ProxyPushSupplier * | supplier | ) |
void TAO_CEC_TypedEventChannel::destroy_proxy | ( | TAO_CEC_TypedProxyPushConsumer * | consumer | ) |
void TAO_CEC_TypedEventChannel::destroy_proxy_collection | ( | TAO_CEC_ProxyPushSupplier_Collection * | x | ) |
void TAO_CEC_TypedEventChannel::destroy_proxy_collection | ( | TAO_CEC_TypedProxyPushConsumer_Collection * | x | ) |
void TAO_CEC_TypedEventChannel::destroy_supplier_lock | ( | ACE_Lock * | x | ) |
int TAO_CEC_TypedEventChannel::disconnect_callbacks | ( | void | ) | const |
Should we send callback disconnect messages when a proxy is disconnected by the client
|
virtual |
|
virtual |
TAO_CEC_Dispatching * TAO_CEC_TypedEventChannel::dispatching | ( | void | ) | const |
Access the dispatching module....
TAO_CEC_Operation_Params * TAO_CEC_TypedEventChannel::find_from_ifr_cache | ( | const char * | operation | ) |
Finds a operation/parameter from the IFR cache.
CosTypedEventChannelAdmin::TypedConsumerAdmin_ptr TAO_CEC_TypedEventChannel::for_consumers | ( | void | ) |
CosTypedEventChannelAdmin::TypedSupplierAdmin_ptr TAO_CEC_TypedEventChannel::for_suppliers | ( | void | ) |
TAO_CEC_TypedEventChannel::ServantRetryMap & TAO_CEC_TypedEventChannel::get_servant_retry_map | ( | void | ) |
|
protected |
Insert a operation/parameter into the IFR cache.
CORBA::ULong TAO_CEC_TypedEventChannel::number_of_base_interfaces | ( | void | ) | const |
Function to return the number of base_interfaces_.
|
virtual |
|
virtual |
|
virtual |
Shutdown any internal threads, cleanup all the internal structures, flush all the messages, etc.
TAO_CEC_SupplierControl * TAO_CEC_TypedEventChannel::supplier_control | ( | void | ) | const |
Access the supplier control strategy.
int TAO_CEC_TypedEventChannel::supplier_reconnect | ( | void | ) | const |
Can the suppliers reconnect to the EC?
int TAO_CEC_TypedEventChannel::supplier_register_supported_interface | ( | const char * | supported_interface | ) |
Function allows supplier admin to register the supported interface.
const char * TAO_CEC_TypedEventChannel::supported_interface | ( | void | ) | const |
Function to return the supported_interface_.
TAO_CEC_TypedConsumerAdmin * TAO_CEC_TypedEventChannel::typed_consumer_admin | ( | void | ) | const |
Access the consumer admin implementation.
PortableServer::POA_ptr TAO_CEC_TypedEventChannel::typed_consumer_poa | ( | void | ) |
TAO_CEC_TypedSupplierAdmin * TAO_CEC_TypedEventChannel::typed_supplier_admin | ( | void | ) | const |
Access the supplier admin implementation.
PortableServer::POA_ptr TAO_CEC_TypedEventChannel::typed_supplier_poa | ( | void | ) |
Access the supplier and consumer POAs from the factory.
|
private |
The supported_interface_ base interfaces.
|
private |
Strategies to disconnect misbehaving or destroyed consumers and suppliers
|
private |
Consumer reconnection flags.
|
private |
If not zero the event channel is destroyed on shutdown.
|
private |
Set if the event channel has been destroyed.
|
private |
If not zero we send callbacks when a proxy is disconnected.
|
private |
The dispatching "module".
|
private |
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.
|
private |
The IFR cache for the interface description.
|
private |
Storage of the IFR reference.
|
private |
The ORB.
|
private |
Flag that indicates if we own the factory.
|
private |
|
private |
|
private |
Supplier reconnection flags.
|
private |
The supported_interface_ for the TypedSupplierAdmin.
|
private |
The ConsumerAdmin implementation.
|
private |
|
private |
The SupplierAdmin implementation.
|
private |
The POAs used to activate "supplier-side" and "consumer-side" objects.
|
private |
The uses_interface_ for the TypedConsumerAdmin.