OpenFusionIDL
CosNotifyFilter.idl
Go to the documentation of this file.
1 #ifndef COSNOTIFYFILTER_IDL
2 #define COSNOTIFYFILTER_IDL
3 
14 #include <orbdefs.idl>
15 
16 #include <CosNotification.idl>
17 #include <CosNotifyComm.idl>
18 
19 #pragma prefix "omg.org"
20 
21 module CosNotifyFilter
22 {
26  typedef long ConstraintID;
27 
33  {
36  };
37 
41  typedef sequence<ConstraintID> ConstraintIDSeq;
42 
46  typedef sequence<ConstraintExp> ConstraintExpSeq;
47 
52  {
54  ConstraintID constraint_id;
55  };
56 
60  typedef sequence<ConstraintInfo> ConstraintInfoSeq;
61 
67  {
70  };
71 
75  typedef sequence<MappingConstraintPair> MappingConstraintPairSeq;
76 
82  {
84  ConstraintID constraint_id;
85  any value;
86  };
87 
91  typedef sequence<MappingConstraintInfo> MappingConstraintInfoSeq;
92 
96  typedef long CallbackID;
97 
101  typedef sequence<CallbackID> CallbackIDSeq;
102 
107 
111  exception InvalidGrammar {};
112 
117 
121  exception DuplicateConstraintID {ConstraintID id;};
122 
126  exception ConstraintNotFound {ConstraintID id;};
127 
131  exception CallbackNotFound {};
132 
136  exception InvalidValue {ConstraintExp constr; any value;};
137 
141  interface Filter
142  {
146  readonly attribute string constraint_grammar;
147 
155  ConstraintInfoSeq add_constraints (
156  in ConstraintExpSeq constraint_list)
157  raises (InvalidConstraint);
158 
168  void modify_constraints (
169  in ConstraintIDSeq del_list,
170  in ConstraintInfoSeq modify_list)
172 
179  ConstraintInfoSeq get_constraints(
180  in ConstraintIDSeq id_list)
181  raises (ConstraintNotFound);
182 
187  ConstraintInfoSeq get_all_constraints();
188 
192  void remove_all_constraints();
193 
197  void destroy();
198 
209  boolean match ( in any filterable_data )
210  raises (UnsupportedFilterableData);
211 
222  boolean match_structured (
223  in CosNotification::StructuredEvent filterable_data )
224  raises (UnsupportedFilterableData);
225 
236  boolean match_typed (
237  in CosNotification::PropertySeq filterable_data )
238  raises (UnsupportedFilterableData);
239 
247  CallbackID attach_callback (
248  in CosNotifyComm::NotifySubscribe callback);
249 
256  void detach_callback ( in CallbackID callback)
257  raises ( CallbackNotFound );
258 
263  CallbackIDSeq get_callbacks();
264 
265  }; // Filter
266 
270  interface MappingFilter
271  {
275  readonly attribute string constraint_grammar;
276 
281  readonly attribute CORBA::TypeCode value_type;
282 
286  readonly attribute any default_value;
287 
298  MappingConstraintInfoSeq add_mapping_constraints (
299  in MappingConstraintPairSeq pair_list)
301 
313  void modify_mapping_constraints (
314  in ConstraintIDSeq del_list,
315  in MappingConstraintInfoSeq modify_list)
318 
327  MappingConstraintInfoSeq get_mapping_constraints (
328  in ConstraintIDSeq id_list)
329  raises (ConstraintNotFound);
330 
335  MappingConstraintInfoSeq get_all_mapping_constraints();
336 
340  void remove_all_mapping_constraints();
341 
345  void destroy();
346 
360  boolean match ( in any filterable_data,
361  out any result_to_set )
362  raises (UnsupportedFilterableData);
363 
377  boolean match_structured (
378  in CosNotification::StructuredEvent filterable_data,
379  out any result_to_set)
380  raises (UnsupportedFilterableData);
381 
395  boolean match_typed (
396  in CosNotification::PropertySeq filterable_data,
397  out any result_to_set)
398  raises (UnsupportedFilterableData);
399 
400  }; // MappingFilter
401 
405  interface FilterFactory
406  {
414  Filter create_filter (
415  in string constraint_grammar)
416  raises (InvalidGrammar);
417 
428  MappingFilter create_mapping_filter (
429  in string constraint_grammar,
430  in any default_value)
431  raises(InvalidGrammar);
432 
433  }; // FilterFactory
434 
438  typedef long FilterID;
439 
443  typedef sequence<FilterID> FilterIDSeq;
444 
448  exception FilterNotFound {};
449 
453  interface FilterAdmin
454  {
461  FilterID add_filter ( in Filter new_filter );
462 
469  void remove_filter ( in FilterID filter )
470  raises ( FilterNotFound );
471 
478  Filter get_filter ( in FilterID filter )
479  raises ( FilterNotFound );
480 
485  FilterIDSeq get_all_filters();
486 
490  void remove_all_filters();
491 
492  }; // FilterAdmin
493 
494 }; // CosNotifyFilter
495 
496 #endif /* COSNOTIFYFILTER_IDL */
Interface for a filter.
Definition: CosNotifyFilter.idl:141
readonly attribute CORBA::TypeCode value_type
The data type of the property value that this filter was designed to affect.
Definition: CosNotifyFilter.idl:281
Exception used when a filter could not be found.
Definition: CosNotifyFilter.idl:448
Exception used to indicate invalid grammer.
Definition: CosNotifyFilter.idl:111
any value
Definition: CosNotifyFilter.idl:85
Interface for a filter factory.
Definition: CosNotifyFilter.idl:405
Exception used to indicate a that a constraint was not found.
Definition: CosNotifyFilter.idl:126
Interface for a mapping filter.
Definition: CosNotifyFilter.idl:270
const AttributeType filter
Definition: DsLogNotification.idl:116
Definition of a constraint.
Definition: CosNotifyFilter.idl:32
ConstraintExp constraint_expression
Definition: CosNotifyFilter.idl:68
long FilterID
A unique identifier used to identify filters.
Definition: CosNotifyFilter.idl:433
Exception used to that an event contains data which is not filterable.
Definition: CosNotifyFilter.idl:106
ConstraintExp constr
Definition: CosNotifyFilter.idl:116
Exception used to indicate a duplicate constraint ID.
Definition: CosNotifyFilter.idl:121
sequence< Property > PropertySeq
Definition: CosNotification.idl:35
sequence< ConstraintID > ConstraintIDSeq
A sequence of ConstraintID.
Definition: CosNotifyFilter.idl:41
Interface for filter administrators.
Definition: CosNotifyFilter.idl:453
An interface used by event subscribers.
Definition: CosNotifyComm.idl:49
Structure used when an ID has been assigned to a mapping constraint expression.
Definition: CosNotifyFilter.idl:81
Definition of a structured event.
Definition: CosNotification.idl:163
ConstraintExp constraint_expression
Definition: CosNotifyFilter.idl:53
readonly attribute string constraint_grammar
The constraint grammer used by this filter.
Definition: CosNotifyFilter.idl:275
sequence< MappingConstraintInfo > MappingConstraintInfoSeq
A sequence of MappingConstraintInfo structures.
Definition: CosNotifyFilter.idl:91
Definition of a mapping constraint.
Definition: CosNotifyFilter.idl:66
sequence< MappingConstraintPair > MappingConstraintPairSeq
A sequence of MappingConstraintPair structures.
Definition: CosNotifyFilter.idl:75
sequence< FilterID > FilterIDSeq
A sequence of FilterID.
Definition: CosNotifyFilter.idl:443
Exception used to indicate a that a constraint value is invalid.
Definition: CosNotifyFilter.idl:136
long ConstraintID
A unique identifier used to identify filter constraints.
Definition: CosNotifyFilter.idl:26
any result_to_set
Definition: CosNotifyFilter.idl:69
string constraint_expr
Definition: CosNotifyFilter.idl:35
sequence< ConstraintInfo > ConstraintInfoSeq
A sequence of ConstraintInfo structures.
Definition: CosNotifyFilter.idl:60
CosNotification::EventTypeSeq event_types
Definition: CosNotifyFilter.idl:34
sequence< CallbackID > CallbackIDSeq
A sequence of CallbackID.
Definition: CosNotifyFilter.idl:101
ConstraintID id
Definition: CosNotifyFilter.idl:126
ConstraintID id
Definition: CosNotifyFilter.idl:121
ConstraintID constraint_id
Definition: CosNotifyFilter.idl:54
sequence< EventType > EventTypeSeq
A sequence of EventType structures.
Definition: CosNotification.idl:71
readonly attribute any default_value
The output value for any match operation that returns true.
Definition: CosNotifyFilter.idl:286
any value
Definition: CosNotifyFilter.idl:136
ConstraintID constraint_id
Definition: CosNotifyFilter.idl:84
Exception used to indicate invalid filter constraint.
Definition: CosNotifyFilter.idl:116
Exception used to indicate a that a callback object was not found.
Definition: CosNotifyFilter.idl:131
Structure used when an ID has been assigned to a constraint expression.
Definition: CosNotifyFilter.idl:51
long CallbackID
A unique identifier used to identify callback objects.
Definition: CosNotifyFilter.idl:96
sequence< ConstraintExp > ConstraintExpSeq
A sequence of ConstraintExp structures.
Definition: CosNotifyFilter.idl:46
readonly attribute string constraint_grammar
The constraint grammer used by this filter.
Definition: CosNotifyFilter.idl:146
ConstraintExp constraint_expression
Definition: CosNotifyFilter.idl:83