TAO_CosNotification  2.1.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | List of all members
CosNotifyFilter::Filter Interface Reference

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

import "CosNotifyFilter.idl";

Collaboration diagram for CosNotifyFilter::Filter:
Collaboration graph

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
InvalidConstraintif one or more constraints contain invalid an invalid expression in the Filter constraint grammar.
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
callbackthe object interested about changes in the Filter event type list.
Returns
A unique ID attached to the callback interface.
void CosNotifyFilter::Filter::destroy ( )

Destroy the Filter.

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

Remove a callback interface from the filter.

Parameters
callbackThe ID of the callback removed
Exceptions
CallbackNotFoundif the callback id supplied is not found in the internal list of callbacks.
ConstraintInfoSeq CosNotifyFilter::Filter::get_all_constraints ( )

The all the constraints in the Filter.

CallbackIDSeq CosNotifyFilter::Filter::get_callbacks ( )

Return all the callback IDs in the Filter object.

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

Obtain the one or more constraints given their IDs.

Parameters
id_listList of IDs queried
Exceptions
ConstraintNotFoundif one or more of the ConstraintID supplied are not found.
boolean CosNotifyFilter::Filter::match ( in any  filterable_data) raises (UnsupportedFilterableData)

Match a regular event against the constraints in the filter.

Parameters
filterable_dataThe 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
UnsupportedFilterableDataif 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_dataThe 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
UnsupportedFilterableDataif 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_dataThe 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
UnsupportedFilterableDataif 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.
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_listList of constraint IDs to be removed
modify_listList of constrained modified
Exceptions
ConstraintNotFoundIf one or more of the ConstraintID supplied are not found.
void CosNotifyFilter::Filter::remove_all_constraints ( )

Remove all the constraints from the Filter.

Member Data Documentation

readonly attribute string CosNotifyFilter::Filter::constraint_grammar

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: