CosNotifyFilter::Filter Interface Reference

Interface used to manipulate and evaluate filters. More...

import "CosNotifyFilter.idl";

List of all members.

Public Member Functions

ConstraintInfoSeq add_constraints (in ConstraintExpSeq constraint_list) raises (InvalidConstraint)
 Add constraints to a filter.
void modify_constraints (in ConstraintIDSeq del_list, in ConstraintInfoSeq modify_list) raises (InvalidConstraint, ConstraintNotFound)
 Modify and/or remove multiple constraints in the Filter.
ConstraintInfoSeq get_constraints (in ConstraintIDSeq id_list) raises (ConstraintNotFound)
 Obtain the one or more constraints given their IDs.
ConstraintInfoSeq get_all_constraints ()
 The all the constraints in the Filter.
void remove_all_constraints ()
 Remove all the constraints from the Filter.
void destroy ()
 Destroy the Filter.
boolean match (in any filterable_data) raises (UnsupportedFilterableData)
 Match a regular event against the constraints in the filter.
boolean match_structured (in CosNotification::StructuredEvent filterable_data) raises (UnsupportedFilterableData)
 Match a structured event against the constraints in the filter.
boolean match_typed (in CosNotification::PropertySeq filterable_data) raises (UnsupportedFilterableData)
 Match a typed event against the constraints in the filter.
CallbackID attach_callback (in CosNotifyComm::NotifySubscribe callback)
 Add a callback interface to the filter.
void detach_callback (in CallbackID callback) raises ( CallbackNotFound )
 Remove a callback interface from the filter.
CallbackIDSeq get_callbacks ()
 Return all the callback IDs in the Filter object.

Public Attributes

readonly attribute string constraint_grammar
 Constraint grammar used in this filter.


Detailed Description

Interface used to manipulate and evaluate filters.

An event filter posseses multiple constraints, each constraint applies to a limited range of event types, the filter is accepted if it matches one or more constraint expressions that apply to its event type.


Member Function Documentation

ConstraintInfoSeq CosNotifyFilter::Filter::add_constraints ( in ConstraintExpSeq  constraint_list  )  raises (InvalidConstraint)

Add constraints to a filter.

Return the constraints and their IDs.

Exceptions:
InvalidConstraint if one or more constraints contain invalid an invalid expression in the Filter constraint grammar.

void CosNotifyFilter::Filter::modify_constraints ( in ConstraintIDSeq  del_list,
in ConstraintInfoSeq  modify_list 
) raises (InvalidConstraint, ConstraintNotFound)

Modify and/or remove multiple constraints in the Filter.

The operation can raise InvalidConstraint if one or more constraints contain invalid expressions in the constraint grammar.

Parameters:
del_list List of constraint IDs to be removed
modify_list List of constrained modified
Exceptions:
ConstraintNotFound If one or more of the ConstraintID supplied are not found.

ConstraintInfoSeq CosNotifyFilter::Filter::get_constraints ( in ConstraintIDSeq  id_list  )  raises (ConstraintNotFound)

Obtain the one or more constraints given their IDs.

Parameters:
id_list List of IDs queried
Exceptions:
ConstraintNotFound if one or more of the ConstraintID supplied are not found.

ConstraintInfoSeq CosNotifyFilter::Filter::get_all_constraints (  ) 

The all the constraints in the Filter.

void CosNotifyFilter::Filter::remove_all_constraints (  ) 

Remove all the constraints from the Filter.

void CosNotifyFilter::Filter::destroy (  ) 

Destroy the Filter.

boolean CosNotifyFilter::Filter::match ( in any  filterable_data  )  raises (UnsupportedFilterableData)

Match a regular event against the constraints in the filter.

Parameters:
filterable_data The Notification Service event to be tested against the constraints in this Filter
Returns:
TRUE if at least one constraint evaluates to TRUE for the event.
Exceptions:
UnsupportedFilterableData if the event contents do not match the filtering expression, for example, if the expression for a filterable field expects a string, but the actual value is a number.

boolean CosNotifyFilter::Filter::match_structured ( in CosNotification::StructuredEvent  filterable_data  )  raises (UnsupportedFilterableData)

Match a structured event against the constraints in the filter.

Parameters:
filterable_data The Notification Service event to be tested against the constraints in this Filter
Returns:
TRUE if at least one constraint expression evaluates to TRUE for the event.
Exceptions:
UnsupportedFilterableData if the event contents do not match the filtering expression, for example, if the expression for a filterable field expects a string, but the actual value is a number.

boolean CosNotifyFilter::Filter::match_typed ( in CosNotification::PropertySeq  filterable_data  )  raises (UnsupportedFilterableData)

Match a typed event against the constraints in the filter.

Parameters:
filterable_data The sequence of properties that make the filterable portion of the Typed event.
Returns:
TRUE if at least one constraint expression evaluates to TRUE for the event.
Exceptions:
UnsupportedFilterableData if the event contents do not match the filtering expression, for example, if the expression for a filterable field expects a string, but the actual value is a number.

CallbackID CosNotifyFilter::Filter::attach_callback ( in CosNotifyComm::NotifySubscribe  callback  ) 

Add a callback interface to the filter.

Filters can communicate changes in the list of event types they potentially accept.

Parameters:
callback the object interested about changes in the Filter event type list.
Returns:
A unique ID attached to the callback interface.

void CosNotifyFilter::Filter::detach_callback ( in CallbackID  callback  )  raises ( CallbackNotFound )

Remove a callback interface from the filter.

Parameters:
callback The ID of the callback removed
Exceptions:
CallbackNotFound if the callback id supplied is not found in the internal list of callbacks.

CallbackIDSeq CosNotifyFilter::Filter::get_callbacks (  ) 

Return all the callback IDs in the Filter object.


Member Data Documentation

Constraint grammar used in this filter.

All filtering expressions in the filter should use this grammar.


The documentation for this interface was generated from the following file:

Generated on Thu Nov 27 05:44:24 2008 for TAO_CosNotification by  doxygen 1.5.6