TAO_CosEvent
2.0.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. | |
virtual void | activate (void) |
virtual void | shutdown (void) |
TAO_CEC_Dispatching * | dispatching (void) const |
Access the dispatching module.... | |
TAO_CEC_TypedConsumerAdmin * | typed_consumer_admin (void) const |
Access the consumer admin implementation. | |
TAO_CEC_TypedSupplierAdmin * | typed_supplier_admin (void) const |
Access the supplier admin implementation. | |
TAO_CEC_ConsumerControl * | consumer_control (void) const |
Access the consumer control strategy. | |
TAO_CEC_SupplierControl * | supplier_control (void) const |
Access the supplier control strategy. | |
void | create_proxy (TAO_CEC_ProxyPushSupplier *&) |
Create and destroy a ProxyPushSupplier. | |
void | destroy_proxy (TAO_CEC_ProxyPushSupplier *) |
void | create_proxy (TAO_CEC_TypedProxyPushConsumer *&) |
Create and destroy a TypedProxyPushConsumer. | |
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. | |
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? | |
int | supplier_reconnect (void) const |
Can the suppliers reconnect to the EC? | |
int | disconnect_callbacks (void) const |
TAO_CEC_Operation_Params * | find_from_ifr_cache (const char *operation) |
Finds a operation/parameter from the IFR cache. | |
int | consumer_register_uses_interace (const char *uses_interface) |
Function allows consumer admin to register the uses interface. | |
int | supplier_register_supported_interface (const char *supported_interface) |
Function allows supplier admin to register the supported interface. | |
const char * | supported_interface (void) const |
Function to return the supported_interface_. | |
CORBA::RepositoryId | base_interfaces (CORBA::ULong index) const |
Function to return the base_interfaces_. | |
CORBA::ULong | number_of_base_interfaces (void) const |
Function to return the number of base_interfaces_. | |
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. | |
virtual void | create_list (CORBA::Long count, CORBA::NVList_out new_list) |
Function creates an empty NVList. | |
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. | |
Protected Member Functions | |
int | cache_interface_description (const char *interface_) |
Function caches the full interface description from the IFR. | |
int | insert_into_ifr_cache (const char *operation, TAO_CEC_Operation_Params *parameters) |
Insert a operation/parameter into the IFR cache. | |
int | clear_ifr_cache (void) |
Function clears the IFR cache. | |
Private Attributes | |
PortableServer::POA_var | typed_supplier_poa_ |
PortableServer::POA_var | typed_consumer_poa_ |
CORBA::ORB_var | orb_ |
The ORB. | |
CORBA::Repository_var | interface_repository_ |
Storage of the IFR reference. | |
TAO_CEC_Factory * | factory_ |
int | own_factory_ |
Flag that indicates if we own the factory. | |
TAO_CEC_Dispatching * | dispatching_ |
The dispatching "module". | |
TAO_CEC_TypedConsumerAdmin * | typed_consumer_admin_ |
The ConsumerAdmin implementation. | |
TAO_CEC_TypedSupplierAdmin * | typed_supplier_admin_ |
The SupplierAdmin implementation. | |
int | consumer_reconnect_ |
Consumer reconnection flags. | |
int | supplier_reconnect_ |
Supplier reconnection flags. | |
int | disconnect_callbacks_ |
If not zero we send callbacks when a proxy is disconnected. | |
int | destroy_on_shutdown_ |
If not zero the event channel is destroyed on shutdown. | |
int | destroyed_ |
Set if the event channel has been destroyed. | |
TAO_CEC_ConsumerControl * | consumer_control_ |
ServantRetryMap | retry_map_ |
TAO_CEC_SupplierControl * | supplier_control_ |
ACE_CString | uses_interface_ |
The uses_interface_ for the TypedConsumerAdmin. | |
ACE_CString | supported_interface_ |
The supported_interface_ for the TypedSupplierAdmin. | |
InterfaceDescription | interface_description_ |
The IFR cache for the interface description. | |
CORBA::RepositoryIdSeq | base_interfaces_ |
The supported_interface_ base interfaces. |
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
TAO_CEC_TypedEventChannel::~TAO_CEC_TypedEventChannel | ( | void | ) | [virtual] |
Destructor.
void TAO_CEC_TypedEventChannel::activate | ( | void | ) | [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_.
int TAO_CEC_TypedEventChannel::cache_interface_description | ( | const char * | interface_ | ) | [protected] |
Function caches the full interface description from the IFR.
int TAO_CEC_TypedEventChannel::clear_ifr_cache | ( | void | ) | [protected] |
Function clears the IFR cache.
void TAO_CEC_TypedEventChannel::connected | ( | TAO_CEC_TypedProxyPushConsumer * | consumer | ) | [virtual] |
Used to inform the EC that a Consumer has connected or disconnected from it.
void TAO_CEC_TypedEventChannel::connected | ( | TAO_CEC_ProxyPushSupplier * | supplier | ) | [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
void TAO_CEC_TypedEventChannel::create_list | ( | CORBA::Long | count, |
CORBA::NVList_out | new_list | ||
) | [virtual] |
Function creates an empty NVList.
void TAO_CEC_TypedEventChannel::create_operation_list | ( | TAO_CEC_Operation_Params * | oper_params, |
CORBA::NVList_out | new_list | ||
) | [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 | ) |
void TAO_CEC_TypedEventChannel::destroy | ( | 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
void TAO_CEC_TypedEventChannel::disconnected | ( | TAO_CEC_TypedProxyPushConsumer * | consumer | ) | [virtual] |
void TAO_CEC_TypedEventChannel::disconnected | ( | TAO_CEC_ProxyPushSupplier * | supplier | ) | [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 | ) |
int TAO_CEC_TypedEventChannel::insert_into_ifr_cache | ( | const char * | operation, |
TAO_CEC_Operation_Params * | parameters | ||
) | [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_.
void TAO_CEC_TypedEventChannel::reconnected | ( | TAO_CEC_TypedProxyPushConsumer * | consumer | ) | [virtual] |
void TAO_CEC_TypedEventChannel::reconnected | ( | TAO_CEC_ProxyPushSupplier * | supplier | ) | [virtual] |
void TAO_CEC_TypedEventChannel::shutdown | ( | void | ) | [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.
CORBA::RepositoryIdSeq TAO_CEC_TypedEventChannel::base_interfaces_ [private] |
The supported_interface_ base interfaces.
Strategies to disconnect misbehaving or destroyed consumers and suppliers
int TAO_CEC_TypedEventChannel::consumer_reconnect_ [private] |
Consumer reconnection flags.
int TAO_CEC_TypedEventChannel::destroy_on_shutdown_ [private] |
If not zero the event channel is destroyed on shutdown.
int TAO_CEC_TypedEventChannel::destroyed_ [private] |
Set if the event channel has been destroyed.
int TAO_CEC_TypedEventChannel::disconnect_callbacks_ [private] |
If not zero we send callbacks when a proxy is disconnected.
The dispatching "module".
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 IFR cache for the interface description.
CORBA::Repository_var TAO_CEC_TypedEventChannel::interface_repository_ [private] |
Storage of the IFR reference.
The ORB.
int TAO_CEC_TypedEventChannel::own_factory_ [private] |
Flag that indicates if we own the factory.
int TAO_CEC_TypedEventChannel::supplier_reconnect_ [private] |
Supplier reconnection flags.
The supported_interface_ for the TypedSupplierAdmin.
The ConsumerAdmin implementation.
The SupplierAdmin implementation.
The POAs used to activate "supplier-side" and "consumer-side" objects.
The uses_interface_ for the TypedConsumerAdmin.