Public Member Functions | Private Types | Private Member Functions | Private Attributes

TAO_Notify_FilterAdmin Class Reference

FilterAdmin interface methods implementation. More...

#include <FilterAdmin.h>

Inheritance diagram for TAO_Notify_FilterAdmin:
Inheritance graph
Collaboration diagram for TAO_Notify_FilterAdmin:
Collaboration graph

List of all members.

Public Member Functions

 TAO_Notify_FilterAdmin (void)
virtual ~TAO_Notify_FilterAdmin (void)
CORBA::Boolean match (const TAO_Notify_Event::Ptr &event)
 See if any of the filters match.
CORBA::Boolean match (const TAO_Notify_Event *event)
 See if any of the filters match.
virtual CosNotifyFilter::FilterID add_filter (CosNotifyFilter::Filter_ptr new_filter)
virtual void remove_filter (CosNotifyFilter::FilterID filter)
virtual CosNotifyFilter::Filter_ptr get_filter (CosNotifyFilter::FilterID filter)
get_all_filters (void)
virtual void remove_all_filters (void)
virtual void save_persistent (TAO_Notify::Topology_Saver &saver)
load_child (const ACE_CString &type, CORBA::Long id, const TAO_Notify::NVPList &attrs)
 Create a child of the appropriate type and return it.
void event_channel (TAO_Notify_EventChannel *ec)

Private Types

typedef ACE_Hash_Map_Manager
< CosNotifyFilter::FilterID,

Private Member Functions

virtual void release (void)
 The release method is called when the refcount reaches 0.

Private Attributes

 Mutex to serialize access to data members.
FILTER_LIST filter_list_
 List of filters.
TAO_Notify_ID_Factory filter_ids_
 Id generator for proxy suppliers.
TAO_Notify_EventChannel::Ptr ec_

Detailed Description

FilterAdmin interface methods implementation.

Member Typedef Documentation

typedef ACE_Hash_Map_Manager<CosNotifyFilter::FilterID, CosNotifyFilter::Filter_var, ACE_SYNCH_NULL_MUTEX> TAO_Notify_FilterAdmin::FILTER_LIST [private]

Constructor & Destructor Documentation

TAO_Notify_FilterAdmin::TAO_Notify_FilterAdmin ( void   )


TAO_Notify_FilterAdmin::~TAO_Notify_FilterAdmin ( void   ) [virtual]


Member Function Documentation

CosNotifyFilter::FilterID TAO_Notify_FilterAdmin::add_filter ( CosNotifyFilter::Filter_ptr  new_filter ) [virtual]
void TAO_Notify_FilterAdmin::event_channel ( TAO_Notify_EventChannel ec )
CosNotifyFilter::FilterIDSeq * TAO_Notify_FilterAdmin::get_all_filters ( void   ) [virtual]
CosNotifyFilter::Filter_ptr TAO_Notify_FilterAdmin::get_filter ( CosNotifyFilter::FilterID  filter ) [virtual]
TAO_Notify::Topology_Object * TAO_Notify_FilterAdmin::load_child ( const ACE_CString type,
CORBA::Long  id,
const TAO_Notify::NVPList attrs 
) [virtual]

Create a child of the appropriate type and return it.

Use "type" as passed in to determine what kind of child (supporting the Topology_Object interface) to create and return. Inform it of its new ID.

Reimplemented from TAO_Notify::Topology_Object.

CORBA::Boolean TAO_Notify_FilterAdmin::match ( const TAO_Notify_Event event )

See if any of the filters match.

CORBA::Boolean TAO_Notify_FilterAdmin::match ( const TAO_Notify_Event::Ptr event )

See if any of the filters match.

void TAO_Notify_FilterAdmin::release ( void   ) [private, virtual]

The release method is called when the refcount reaches 0.

Implements TAO_Notify_Refcountable.

void TAO_Notify_FilterAdmin::remove_all_filters ( void   ) [virtual]
void TAO_Notify_FilterAdmin::remove_filter ( CosNotifyFilter::FilterID  filter ) [virtual]
void TAO_Notify_FilterAdmin::save_persistent ( TAO_Notify::Topology_Saver saver ) [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); for all children { if (want_all_children || child.is_changed()) { child.save_persistent(saver); } } for all deleted children { saver.delete_child(child_type, child_id); } saver.end_object(this->id(), type); )

Implements TAO_Notify::Topology_Savable.

Member Data Documentation

Id generator for proxy suppliers.

List of filters.

TAO_SYNCH_MUTEX TAO_Notify_FilterAdmin::lock_ [private]

Mutex to serialize access to data members.

Reimplemented from TAO_Notify_Object.

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines