Remaining Bodydomain_name
3.2 The CosNotifyFilter Module
3.2.2 The MappingFilter Interface
3.2.2.8 remove_all_mapping_constraints
Theremove_all_mapping_constraintsoperation is invoked to remove all of the constraint-value pairs currently encapsulated by the target filter object. Upon completion, the target filter object will still exist but have no constraint-value pairs associated with it.
3.2.2.9 destroy
Thedestroyoperation destroys the target filter object, invalidating its object reference.
3.2.2.10 match
Thematchoperation is invoked on an object supporting theMappingFilterinterface in order to determine how some property value of a particular event supplied to the channel in the form of aCORBA::Anyshould be modified. The operation accepts an Any as input, which contains the event being evaluated. Upon invocation, the target mapping filter object begins applying the constraints it encapsulates in order according to each constraints associated value, starting with the constraint with the “best” associated value for the specific property the mapping filter object was designed to affect (e.g., the highest priority, the longest lifetime, etc.), and ending with the constraint with the “worst” associated value. Upon encountering a constraint which the input filterable data matches, the operation sets the output parameter contained in its
signature to the value associated with the constraint, and sets the return value of the operation to TRUE. If the input filterable data satisfies none of the constraints encapsulated by the target mapping filter object, the return value of the operation is set to FALSE, and the output parameter is set to the value of thedefault_valueattribute associated with the target mapping filter object. The act of determining whether or not a given filterable event data passes a given filter constraint is specific to the type of grammar in which the filter constraint is specified. Thus, this operation will need to be re-implemented for each supported grammar.
If the input parameter contains data that thematchoperation is not designed to handle, theUnsupportedFilterableDataexception will be raised. An example of this would be if the filterable data contained a field whose name corresponds to a standard event field that has a numeric value, but the actual value associated with this field name within the event is a string.
3.2.2.11 match_structured
Thematch_structuredoperation is invoked on an object supporting the
MappingFilterinterface in order to determine how some property value of a particular event supplied to the channel in the form of a Structured Event should be modified. The operation accepts aCosNotification::StructuredEventas input, which contains the event being evaluated. Upon invocation, the target mapping filter object begins applying the constraints it encapsulates in order according to each constraints associated value, starting with the constraint with the “best” associated value for the specific property the mapping filter object was designed to affect (e.g., the highest priority, the longest lifetime, etc.), and ending with the constraint with the “worst” associated value. Upon encountering a constraint which the input filterable data matches, the operation sets the output parameter contained in its signature to the value associated with the constraint, and sets the return value of the operation to TRUE. If the input filterable data satisfies none of the constraints encapsulated by the target mapping filter object, the return value of the operation is set to FALSE, and the output parameter is set to the value of thedefault_valueattribute associated with the target mapping filter object. The act of determining whether or not a given filterable event data passes a given filter constraint is specific to the type of grammar in which the filter constraint is specified. Thus, this operation will need to be re-implemented for each supported grammar.
If the input parameter contains data that thematchoperation is not designed to handle, theUnsupportedFilterableDataexception will be raised. An example of this would be if the filterable data contained a field whose name corresponds to a standard event field that has a numeric value, but the actual value associated with this field name within the event is a string.
3.2.2.12 match_typed
Thematch_typedoperation is invoked on an object supporting theMappingFilter
interface in order to determine how some property value of a particular event supplied to the channel in the form of a typed event should be modified. The operation accepts as input a sequence of name-value pairs which contains the contents of the event to be
evaluated (how a typed event is converted to a sequence of name-value pairs by the channel is described in Section 2.7, “Filtering Typed Events,” on page 2-52). Upon invocation, the target mapping filter object begins applying the constraints it
encapsulates in order according to each constraints associated value, starting with the constraint with the “best” associated value for the specific property the mapping filter object was designed to affect (e.g., the highest priority, the longest lifetime, etc.), and ending with the constraint with the “worst” associated value. Upon encountering a constraint which the input filterable data matches, the operation sets the output parameter contained in its signature to the value associated with the constraint, and sets the return value of the operation to TRUE. If the input filterable data satisfies none of the constraints encapsulated by the target mapping filter object, the return value of the operation is set to FALSE, and the output parameter is set to the value of the
default_valueattribute associated with the target mapping filter object. The act of determining whether or not a given filterable event data passes a given filter constraint is specific to the type of grammar in which the filter constraint is specified. Thus, this operation will need to be re-implemented for each supported grammar.
If the input parameter contains data that thematchoperation is not designed to handle, theUnsupportedFilterableData exception will be raised. An example of this would be if the filterable data contained a field whose name corresponds to a standard event field that has a numeric value, but the actual value associated with this field name within the event is a string.