TAO_Notify_EventChannel Class Reference

Implementation of CosNotifyChannelAdmin::EventChannel. More...

#include <EventChannel.h>

Inheritance diagram for TAO_Notify_EventChannel:

Inheritance graph
[legend]
Collaboration diagram for TAO_Notify_EventChannel:

Collaboration graph
[legend]
List of all members.

Public Types

typedef TAO_Notify_Refcountable_Guard_T<
TAO_Notify_EventChannel
Ptr
typedef CosNotifyChannelAdmin::ChannelIDSeq SEQ
typedef CosNotifyChannelAdmin::ChannelIDSeq_var SEQ_VAR

Public Member Functions

 TAO_Notify_EventChannel (void)
 Constuctor.
virtual ~TAO_Notify_EventChannel ()
 Destructor.
void init (TAO_Notify_EventChannelFactory *ecf, const CosNotification::QoSProperties &initial_qos, const CosNotification::AdminProperties &initial_admin ACE_ENV_ARG_DECL)
 Init.
void init (TAO_Notify::Topology_Parent *parent ACE_ENV_ARG_DECL)
 Init (for reload).
void remove (TAO_Notify_ConsumerAdmin *consumer_admin ACE_ENV_ARG_DECL)
 Remove ConsumerAdmin from its container.
void remove (TAO_Notify_SupplierAdmin *supplier_admin ACE_ENV_ARG_DECL)
 Remove SupplierAdmin from its container.
virtual void _add_ref (ACE_ENV_SINGLE_ARG_DECL)
 ServantBase refcount methods.
virtual void _remove_ref (ACE_ENV_SINGLE_ARG_DECL)
virtual void save_persistent (TAO_Notify::Topology_Saver &saver ACE_ENV_ARG_DECL)
virtual TAO_Notify::Topology_Objectload_child (const ACE_CString &type, CORBA::Long id, const TAO_Notify::NVPList &attrs ACE_ENV_ARG_DECL)
virtual void reconnect (ACE_ENV_SINGLE_ARG_DECL)
virtual TAO_Notify_Object::ID get_id () const
 Find the id associated with topology object.
TAO_Notify_ProxyConsumerfind_proxy_consumer (TAO_Notify::IdVec &id_path, size_t position ACE_ENV_ARG_DECL)
TAO_Notify_ProxySupplierfind_proxy_supplier (TAO_Notify::IdVec &id_path, size_t position ACE_ENV_ARG_DECL)
virtual int shutdown (ACE_ENV_SINGLE_ARG_DECL)
 Shutdown.
virtual void load_attrs (const TAO_Notify::NVPList &attrs)

Private Types

typedef TAO_Notify_Container_T<
TAO_Notify_ConsumerAdmin
TAO_Notify_ConsumerAdmin_Container
typedef TAO_Notify_Container_T<
TAO_Notify_SupplierAdmin
TAO_Notify_SupplierAdmin_Container

Private Member Functions

virtual void save_attrs (TAO_Notify::NVPList &attrs)
virtual void destroy (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
 =CosNotifyChannelAdminEventChannel methods
virtual ::CosNotifyChannelAdmin::EventChannelFactory_ptr MyFactory (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
virtual ::CosNotifyChannelAdmin::ConsumerAdmin_ptr default_consumer_admin (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
virtual ::CosNotifyChannelAdmin::SupplierAdmin_ptr default_supplier_admin (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
virtual ::CosNotifyFilter::FilterFactory_ptr default_filter_factory (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
virtual ::CosNotifyChannelAdmin::ConsumerAdmin_ptr new_for_consumers (CosNotifyChannelAdmin::InterFilterGroupOperator op, CosNotifyChannelAdmin::AdminID_out id ACE_ENV_ARG_DECL) throw ( CORBA::SystemException )
virtual ::CosNotifyChannelAdmin::SupplierAdmin_ptr new_for_suppliers (CosNotifyChannelAdmin::InterFilterGroupOperator op, CosNotifyChannelAdmin::AdminID_out id ACE_ENV_ARG_DECL) throw ( CORBA::SystemException )
virtual ::CosNotifyChannelAdmin::ConsumerAdmin_ptr get_consumeradmin (CosNotifyChannelAdmin::AdminID id ACE_ENV_ARG_DECL) throw ( CORBA::SystemException , CosNotifyChannelAdmin::AdminNotFound )
virtual ::CosNotifyChannelAdmin::SupplierAdmin_ptr get_supplieradmin (CosNotifyChannelAdmin::AdminID id ACE_ENV_ARG_DECL) throw ( CORBA::SystemException , CosNotifyChannelAdmin::AdminNotFound )
virtual ::CosNotifyChannelAdmin::AdminIDSeqget_all_consumeradmins (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
virtual ::CosNotifyChannelAdmin::AdminIDSeqget_all_supplieradmins (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
virtual ::CosNotification::QoSPropertiesget_qos (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
 Get the QoS Properties.
virtual void set_qos (const CosNotification::QoSProperties &qos ACE_ENV_ARG_DECL) throw ( CORBA::SystemException , CosNotification::UnsupportedQoS )
 Set the QoS Properties.
virtual void validate_qos (const CosNotification::QoSProperties &required_qos, CosNotification::NamedPropertyRangeSeq_out available_qos ACE_ENV_ARG_DECL) throw ( CORBA::SystemException , CosNotification::UnsupportedQoS )
virtual ::CosNotification::AdminPropertiesget_admin (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
virtual void set_admin (const CosNotification::AdminProperties &admin ACE_ENV_ARG_DECL) throw ( CORBA::SystemException , CosNotification::UnsupportedAdmin )
virtual ::CosEventChannelAdmin::ConsumerAdmin_ptr for_consumers (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
virtual ::CosEventChannelAdmin::SupplierAdmin_ptr for_suppliers (ACE_ENV_SINGLE_ARG_DECL) throw ( CORBA::SystemException )
TAO_Notify_ConsumerAdmin_Containerca_container ()
TAO_Notify_SupplierAdmin_Containersa_container ()
virtual void release (void)
 Release.

Private Attributes

TAO_Notify_EventChannelFactory::Ptr ecf_
TAO_SYNCH_MUTEX default_admin_mutex_
CosNotifyChannelAdmin::ConsumerAdmin_var default_consumer_admin_
CosNotifyChannelAdmin::SupplierAdmin_var default_supplier_admin_
ACE_Auto_Ptr< TAO_Notify_ConsumerAdmin_Containerca_container_
 ConsumerAdmin Container.
ACE_Auto_Ptr< TAO_Notify_SupplierAdmin_Containersa_container_
 SupplierAdmin Container.

Friends

class TAO_Notify_Builder

Detailed Description

Implementation of CosNotifyChannelAdmin::EventChannel.


Member Typedef Documentation

typedef TAO_Notify_Refcountable_Guard_T< TAO_Notify_EventChannel > TAO_Notify_EventChannel::Ptr
 

Reimplemented from TAO_Notify_Refcountable.

typedef CosNotifyChannelAdmin::ChannelIDSeq TAO_Notify_EventChannel::SEQ
 

typedef CosNotifyChannelAdmin::ChannelIDSeq_var TAO_Notify_EventChannel::SEQ_VAR
 

typedef TAO_Notify_Container_T<TAO_Notify_ConsumerAdmin> TAO_Notify_EventChannel::TAO_Notify_ConsumerAdmin_Container [private]
 

typedef TAO_Notify_Container_T<TAO_Notify_SupplierAdmin> TAO_Notify_EventChannel::TAO_Notify_SupplierAdmin_Container [private]
 


Constructor & Destructor Documentation

TAO_Notify_EventChannel::TAO_Notify_EventChannel void   ) 
 

Constuctor.

TAO_Notify_EventChannel::~TAO_Notify_EventChannel  )  [virtual]
 

Destructor.


Member Function Documentation

virtual void TAO_Notify_EventChannel::_add_ref ACE_ENV_SINGLE_ARG_DECL   )  [virtual]
 

ServantBase refcount methods.

virtual void TAO_Notify_EventChannel::_remove_ref ACE_ENV_SINGLE_ARG_DECL   )  [virtual]
 

TAO_Notify_ConsumerAdmin_Container& TAO_Notify_EventChannel::ca_container  )  [private]
 

CosNotifyChannelAdmin::ConsumerAdmin_ptr TAO_Notify_EventChannel::default_consumer_admin ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

CosNotifyFilter::FilterFactory_ptr TAO_Notify_EventChannel::default_filter_factory ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

CosNotifyChannelAdmin::SupplierAdmin_ptr TAO_Notify_EventChannel::default_supplier_admin ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

void TAO_Notify_EventChannel::destroy ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private, virtual]
 

=CosNotifyChannelAdminEventChannel methods

TAO_Notify_ProxyConsumer * TAO_Notify_EventChannel::find_proxy_consumer TAO_Notify::IdVec id_path,
size_t position  ACE_ENV_ARG_DECL
 

TAO_Notify_ProxySupplier * TAO_Notify_EventChannel::find_proxy_supplier TAO_Notify::IdVec id_path,
size_t position  ACE_ENV_ARG_DECL
 

CosEventChannelAdmin::ConsumerAdmin_ptr TAO_Notify_EventChannel::for_consumers ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

CosEventChannelAdmin::SupplierAdmin_ptr TAO_Notify_EventChannel::for_suppliers ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

CosNotification::AdminProperties * TAO_Notify_EventChannel::get_admin ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

CosNotifyChannelAdmin::AdminIDSeq * TAO_Notify_EventChannel::get_all_consumeradmins ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

CosNotifyChannelAdmin::AdminIDSeq * TAO_Notify_EventChannel::get_all_supplieradmins ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

CosNotifyChannelAdmin::ConsumerAdmin_ptr TAO_Notify_EventChannel::get_consumeradmin CosNotifyChannelAdmin::AdminID id  ACE_ENV_ARG_DECL  )  throw ( CORBA::SystemException , CosNotifyChannelAdmin::AdminNotFound ) [private]
 

virtual TAO_Notify_Object::ID TAO_Notify_EventChannel::get_id  )  const [inline, virtual]
 

Find the id associated with topology object.

A bit of a hack because id is unknown to Topology_Object the get_id returns the same thing as id -- we just need someone to find it for us.

Reimplemented from TAO_Notify::Topology_Object.

CosNotification::QoSProperties * TAO_Notify_EventChannel::get_qos ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

Get the QoS Properties.

Reimplemented from TAO_Notify_Object.

CosNotifyChannelAdmin::SupplierAdmin_ptr TAO_Notify_EventChannel::get_supplieradmin CosNotifyChannelAdmin::AdminID id  ACE_ENV_ARG_DECL  )  throw ( CORBA::SystemException , CosNotifyChannelAdmin::AdminNotFound ) [private]
 

void TAO_Notify_EventChannel::init TAO_Notify::Topology_Parent *parent  ACE_ENV_ARG_DECL  ) 
 

Init (for reload).

void TAO_Notify_EventChannel::init TAO_Notify_EventChannelFactory ecf,
const CosNotification::QoSProperties initial_qos,
const CosNotification::AdminProperties &initial_admin  ACE_ENV_ARG_DECL
 

Init.

void TAO_Notify_EventChannel::load_attrs const TAO_Notify::NVPList attrs  )  [virtual]
 

Load our attributes. Each derived type should call the superclass load first before loading its own attributes.

Reimplemented from TAO_Notify_Object.

TAO_Notify::Topology_Object * TAO_Notify_EventChannel::load_child const ACE_CString type,
CORBA::Long  id,
const TAO_Notify::NVPList &attrs  ACE_ENV_ARG_DECL
[virtual]
 

CosNotifyChannelAdmin::EventChannelFactory_ptr TAO_Notify_EventChannel::MyFactory ACE_ENV_SINGLE_ARG_DECL   )  throw ( CORBA::SystemException ) [private]
 

CosNotifyChannelAdmin::ConsumerAdmin_ptr TAO_Notify_EventChannel::new_for_consumers CosNotifyChannelAdmin::InterFilterGroupOperator  op,
CosNotifyChannelAdmin::AdminID_out id  ACE_ENV_ARG_DECL
throw ( CORBA::SystemException ) [private]
 

CosNotifyChannelAdmin::SupplierAdmin_ptr TAO_Notify_EventChannel::new_for_suppliers CosNotifyChannelAdmin::InterFilterGroupOperator  op,
CosNotifyChannelAdmin::AdminID_out id  ACE_ENV_ARG_DECL
throw ( CORBA::SystemException ) [private]
 

void TAO_Notify_EventChannel::reconnect ACE_ENV_SINGLE_ARG_DECL   )  [virtual]
 

void TAO_Notify_EventChannel::release void   )  [private, virtual]
 

Release.

Implements TAO_Notify_Refcountable.

void TAO_Notify_EventChannel::remove TAO_Notify_SupplierAdmin *supplier_admin  ACE_ENV_ARG_DECL  ) 
 

Remove SupplierAdmin from its container.

void TAO_Notify_EventChannel::remove TAO_Notify_ConsumerAdmin *consumer_admin  ACE_ENV_ARG_DECL  ) 
 

Remove ConsumerAdmin from its container.

TAO_Notify_SupplierAdmin_Container& TAO_Notify_EventChannel::sa_container  )  [private]
 

void TAO_Notify_EventChannel::save_attrs TAO_Notify::NVPList attrs  )  [private, virtual]
 

Called by derived types to save their attributes. Each derived type should call its superclass version before saving its own attrs.

Reimplemented from TAO_Notify_Object.

void TAO_Notify_EventChannel::save_persistent TAO_Notify::Topology_Saver &saver  ACE_ENV_ARG_DECL  )  [virtual]
 

Save our state to a Topology_Saver.

Use the methods of a Topology_Saver to store all information we want persisted. This function is called by our parent, which gives us a saver to use. In turn, we must call this function on all of our children. The implementation should look like: bool change = this->self_changed_; this->self_changed_ = false; this->children_changed_ = false; if (is_persistent ()) { bool want_all_children = saver.begin_object( this->id(), type, attrs, change ACE_ENV_ARG_PARAMETER); ACE_CHECK; for all children { if (want_all_children || child.is_changed()) { child.save_persistent(saver ACE_ENV_ARG_PARAMETER); ACE_CHECK; } } for all deleted children { saver.delete_child(child_type, child_id); } saver.end_object(this->id(), type ACE_ENV_ARG_PARAMETER); )

Implements TAO_Notify::Topology_Savable.

void TAO_Notify_EventChannel::set_admin const CosNotification::AdminProperties &admin  ACE_ENV_ARG_DECL  )  throw ( CORBA::SystemException , CosNotification::UnsupportedAdmin ) [private, virtual]
 

void TAO_Notify_EventChannel::set_qos const CosNotification::QoSProperties &qos  ACE_ENV_ARG_DECL  )  throw ( CORBA::SystemException , CosNotification::UnsupportedQoS ) [private, virtual]
 

Set the QoS Properties.

Reimplemented from TAO_Notify_Object.

int TAO_Notify_EventChannel::shutdown ACE_ENV_SINGLE_ARG_DECL   )  [virtual]
 

Shutdown.

Reimplemented from TAO_Notify_Object.

virtual void TAO_Notify_EventChannel::validate_qos const CosNotification::QoSProperties required_qos,
CosNotification::NamedPropertyRangeSeq_out available_qos  ACE_ENV_ARG_DECL
throw ( CORBA::SystemException , CosNotification::UnsupportedQoS ) [private, virtual]
 


Friends And Related Function Documentation

friend class TAO_Notify_Builder [friend]
 

Reimplemented from TAO_Notify_Object.


Member Data Documentation

ACE_Auto_Ptr< TAO_Notify_ConsumerAdmin_Container > TAO_Notify_EventChannel::ca_container_ [private]
 

ConsumerAdmin Container.

TAO_SYNCH_MUTEX TAO_Notify_EventChannel::default_admin_mutex_ [private]
 

CosNotifyChannelAdmin::ConsumerAdmin_var TAO_Notify_EventChannel::default_consumer_admin_ [private]
 

CosNotifyChannelAdmin::SupplierAdmin_var TAO_Notify_EventChannel::default_supplier_admin_ [private]
 

TAO_Notify_EventChannelFactory::Ptr TAO_Notify_EventChannel::ecf_ [private]
 

= Data Members The parent object.

ACE_Auto_Ptr< TAO_Notify_SupplierAdmin_Container > TAO_Notify_EventChannel::sa_container_ [private]
 

SupplierAdmin Container.


The documentation for this class was generated from the following files:
Generated on Wed Nov 23 16:23:07 2005 for TAO_CosNotification by  doxygen 1.4.5