Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

TAO_CEC_TypedEventChannel Class Reference

#include <CEC_TypedEventChannel.h>

Collaboration diagram for TAO_CEC_TypedEventChannel:

Collaboration graph
[legend]
List of all members.

Public Types

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 Methods

 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 (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
virtual void shutdown (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
TAO_CEC_Dispatchingdispatching (void) const
 Access the dispatching module....

TAO_CEC_TypedConsumerAdmintyped_consumer_admin (void) const
 Access the consumer admin implementation.

TAO_CEC_TypedSupplierAdmintyped_supplier_admin (void) const
 Access the supplier admin implementation.

TAO_CEC_ConsumerControlconsumer_control (void) const
 Access the consumer control strategy.

TAO_CEC_SupplierControlsupplier_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_Lockcreate_consumer_lock (void)
void destroy_consumer_lock (ACE_Lock *)
ACE_Lockcreate_supplier_lock (void)
void destroy_supplier_lock (ACE_Lock *)
virtual void connected (TAO_CEC_TypedProxyPushConsumer *ACE_ENV_ARG_DECL_NOT_USED)
virtual void reconnected (TAO_CEC_TypedProxyPushConsumer *ACE_ENV_ARG_DECL_NOT_USED)
virtual void disconnected (TAO_CEC_TypedProxyPushConsumer *ACE_ENV_ARG_DECL_NOT_USED)
virtual void connected (TAO_CEC_ProxyPushSupplier *ACE_ENV_ARG_DECL_NOT_USED)
virtual void reconnected (TAO_CEC_ProxyPushSupplier *ACE_ENV_ARG_DECL_NOT_USED)
virtual void disconnected (TAO_CEC_ProxyPushSupplier *ACE_ENV_ARG_DECL_NOT_USED)
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_Paramsfind_from_ifr_cache (const char *operation)
 Finds a operation/parameter from the IFR cache.

int consumer_register_uses_interace (const char *uses_interface ACE_ENV_ARG_DECL)
 Function allows consumer admin to register the uses interface.

int supplier_register_supported_interface (const char *supported_interface ACE_ENV_ARG_DECL)
 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 ACE_ENV_ARG_DECL)
 Function populates the NVList from the provide param information.

virtual void create_list (CORBA::Long count, CORBA::NVList_out new_list ACE_ENV_ARG_DECL)
 Function creates an empty NVList.

virtual::CosTypedEventChannelAdmin::TypedConsumerAdmin_ptr for_consumers (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
virtual::CosTypedEventChannelAdmin::TypedSupplierAdmin_ptr for_suppliers (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
virtual void destroy (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)

Protected Methods

int cache_interface_description (const char *interface ACE_ENV_ARG_DECL)
 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_Factoryfactory_
int own_factory_
 Flag that indicates if we own the factory.

TAO_CEC_Dispatchingdispatching_
 The dispatching "module".

TAO_CEC_TypedConsumerAdmintyped_consumer_admin_
 The ConsumerAdmin implementation.

TAO_CEC_TypedSupplierAdmintyped_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_ConsumerControlconsumer_control_
TAO_CEC_SupplierControlsupplier_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.


Member Typedef Documentation

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 InterfaceDescription::iterator TAO_CEC_TypedEventChannel::Iterator
 


Constructor & Destructor Documentation

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.


Member Function Documentation

void TAO_CEC_TypedEventChannel::activate ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    [virtual]
 

Start the internal threads (if any), etc. After this call the EC can be used.

ACE_INLINE 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    ACE_ENV_ARG_DECL [protected]
 

Function caches the full interface description from the IFR.

int TAO_CEC_TypedEventChannel::clear_ifr_cache void    [protected]
 

Function clears the IFR cache.

virtual void TAO_CEC_TypedEventChannel::connected TAO_CEC_ProxyPushSupplier   ACE_ENV_ARG_DECL_NOT_USED [virtual]
 

Used to inform the EC that a Supplier has connected or disconnected from it.

virtual void TAO_CEC_TypedEventChannel::connected TAO_CEC_TypedProxyPushConsumer   ACE_ENV_ARG_DECL_NOT_USED [virtual]
 

Used to inform the EC that a Consumer has connected or disconnected from it.

ACE_INLINE TAO_CEC_ConsumerControl * TAO_CEC_TypedEventChannel::consumer_control void    const
 

Access the consumer control strategy.

ACE_INLINE 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    ACE_ENV_ARG_DECL
 

Function allows consumer admin to register the uses interface.

ACE_INLINE 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    ACE_ENV_ARG_DECL
[virtual]
 

Function creates an empty NVList.

void TAO_CEC_TypedEventChannel::create_operation_list TAO_CEC_Operation_Params   oper_params,
CORBA::NVList_out new_list    ACE_ENV_ARG_DECL
[virtual]
 

Function populates the NVList from the provide param information.

ACE_INLINE void TAO_CEC_TypedEventChannel::create_proxy TAO_CEC_TypedProxyPushConsumer *&   
 

Create and destroy a TypedProxyPushConsumer.

ACE_INLINE void TAO_CEC_TypedEventChannel::create_proxy TAO_CEC_ProxyPushSupplier *&   
 

Create and destroy a ProxyPushSupplier.

ACE_INLINE void TAO_CEC_TypedEventChannel::create_proxy_collection TAO_CEC_TypedProxyPushConsumer_Collection *&   
 

Create and destroy a the collections used to store Proxy*Consumers

ACE_INLINE void TAO_CEC_TypedEventChannel::create_proxy_collection TAO_CEC_ProxyPushSupplier_Collection *&   
 

Create and destroy a the collections used to store Proxy*Suppliers

ACE_INLINE ACE_Lock * TAO_CEC_TypedEventChannel::create_supplier_lock void   
 

void TAO_CEC_TypedEventChannel::destroy ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException) [virtual]
 

ACE_INLINE void TAO_CEC_TypedEventChannel::destroy_consumer_lock ACE_Lock  
 

ACE_INLINE void TAO_CEC_TypedEventChannel::destroy_proxy TAO_CEC_TypedProxyPushConsumer  
 

ACE_INLINE void TAO_CEC_TypedEventChannel::destroy_proxy TAO_CEC_ProxyPushSupplier  
 

ACE_INLINE void TAO_CEC_TypedEventChannel::destroy_proxy_collection TAO_CEC_TypedProxyPushConsumer_Collection *   
 

ACE_INLINE void TAO_CEC_TypedEventChannel::destroy_proxy_collection TAO_CEC_ProxyPushSupplier_Collection  
 

ACE_INLINE void TAO_CEC_TypedEventChannel::destroy_supplier_lock ACE_Lock  
 

ACE_INLINE int TAO_CEC_TypedEventChannel::disconnect_callbacks void    const
 

Should we send callback disconnect messages when a proxy is disconnected by the client

virtual void TAO_CEC_TypedEventChannel::disconnected TAO_CEC_ProxyPushSupplier   ACE_ENV_ARG_DECL_NOT_USED [virtual]
 

virtual void TAO_CEC_TypedEventChannel::disconnected TAO_CEC_TypedProxyPushConsumer   ACE_ENV_ARG_DECL_NOT_USED [virtual]
 

ACE_INLINE 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 ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

CosTypedEventChannelAdmin::TypedSupplierAdmin_ptr TAO_CEC_TypedEventChannel::for_suppliers ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

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.

ACE_INLINE CORBA::ULong TAO_CEC_TypedEventChannel::number_of_base_interfaces void    const
 

Function to return the number of base_interfaces_.

virtual void TAO_CEC_TypedEventChannel::reconnected TAO_CEC_ProxyPushSupplier   ACE_ENV_ARG_DECL_NOT_USED [virtual]
 

virtual void TAO_CEC_TypedEventChannel::reconnected TAO_CEC_TypedProxyPushConsumer   ACE_ENV_ARG_DECL_NOT_USED [virtual]
 

void TAO_CEC_TypedEventChannel::shutdown ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    [virtual]
 

Shutdown any internal threads, cleanup all the internal structures, flush all the messages, etc.

ACE_INLINE TAO_CEC_SupplierControl * TAO_CEC_TypedEventChannel::supplier_control void    const
 

Access the supplier control strategy.

ACE_INLINE 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    ACE_ENV_ARG_DECL
 

Function allows supplier admin to register the supported interface.

ACE_INLINE const char * TAO_CEC_TypedEventChannel::supported_interface void    const
 

Function to return the supported_interface_.

ACE_INLINE TAO_CEC_TypedConsumerAdmin * TAO_CEC_TypedEventChannel::typed_consumer_admin void    const
 

Access the consumer admin implementation.

ACE_INLINE PortableServer::POA_ptr TAO_CEC_TypedEventChannel::typed_consumer_poa void   
 

ACE_INLINE TAO_CEC_TypedSupplierAdmin * TAO_CEC_TypedEventChannel::typed_supplier_admin void    const
 

Access the supplier admin implementation.

ACE_INLINE PortableServer::POA_ptr TAO_CEC_TypedEventChannel::typed_supplier_poa void   
 

Access the supplier and consumer POAs from the factory.


Member Data Documentation

CORBA::RepositoryIdSeq TAO_CEC_TypedEventChannel::base_interfaces_ [private]
 

The supported_interface_ base interfaces.

TAO_CEC_ConsumerControl* TAO_CEC_TypedEventChannel::consumer_control_ [private]
 

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.

TAO_CEC_Dispatching* TAO_CEC_TypedEventChannel::dispatching_ [private]
 

The dispatching "module".

TAO_CEC_Factory* TAO_CEC_TypedEventChannel::factory_ [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.

InterfaceDescription TAO_CEC_TypedEventChannel::interface_description_ [private]
 

The IFR cache for the interface description.

CORBA::Repository_var TAO_CEC_TypedEventChannel::interface_repository_ [private]
 

Storage of the IFR reference.

CORBA::ORB_var TAO_CEC_TypedEventChannel::orb_ [private]
 

The ORB.

int TAO_CEC_TypedEventChannel::own_factory_ [private]
 

Flag that indicates if we own the factory.

TAO_CEC_SupplierControl* TAO_CEC_TypedEventChannel::supplier_control_ [private]
 

int TAO_CEC_TypedEventChannel::supplier_reconnect_ [private]
 

Supplier reconnection flags.

ACE_CString TAO_CEC_TypedEventChannel::supported_interface_ [private]
 

The supported_interface_ for the TypedSupplierAdmin.

TAO_CEC_TypedConsumerAdmin* TAO_CEC_TypedEventChannel::typed_consumer_admin_ [private]
 

The ConsumerAdmin implementation.

PortableServer::POA_var TAO_CEC_TypedEventChannel::typed_consumer_poa_ [private]
 

TAO_CEC_TypedSupplierAdmin* TAO_CEC_TypedEventChannel::typed_supplier_admin_ [private]
 

The SupplierAdmin implementation.

PortableServer::POA_var TAO_CEC_TypedEventChannel::typed_supplier_poa_ [private]
 

The POAs used to activate "supplier-side" and "consumer-side" objects.

ACE_CString TAO_CEC_TypedEventChannel::uses_interface_ [private]
 

The uses_interface_ for the TypedConsumerAdmin.


The documentation for this class was generated from the following files:
Generated on Thu Jan 15 00:30:51 2004 for TAO_CosEvent by doxygen1.2.18