cosnotifyfilter.idl

来自「OTP是开放电信平台的简称」· IDL 代码 · 共 141 行

IDL
141
字号
#ifndef _COS_NOTIFYFILTER_IDL_#define _COS_NOTIFYFILTER_IDL_#pragma prefix "omg.org"#include<CosNotifyComm.idl>#include<CosNotification.idl>module CosNotifyFilter {  typedef long ConstraintID;  struct ConstraintExp {    CosNotification::EventTypeSeq event_types;    string constraint_expr;  };    typedef sequence<ConstraintID> ConstraintIDSeq;  typedef sequence<ConstraintExp> ConstraintExpSeq;  struct ConstraintInfo {    ConstraintExp constraint_expression;    ConstraintID constraint_id;  };  typedef sequence<ConstraintInfo> ConstraintInfoSeq;  struct MappingConstraintPair {    ConstraintExp constraint_expression;    any result_to_set;  };  typedef sequence<MappingConstraintPair> MappingConstraintPairSeq;  struct MappingConstraintInfo {    ConstraintExp constraint_expression;    ConstraintID constraint_id;    any value;  };  typedef sequence<MappingConstraintInfo> MappingConstraintInfoSeq;  typedef long CallbackID;  typedef sequence<CallbackID> CallbackIDSeq;  exception UnsupportedFilterableData {};  exception InvalidGrammar {};  exception InvalidConstraint {ConstraintExp constr;};  exception DuplicateConstraintID {ConstraintID id;};  exception ConstraintNotFound {ConstraintID id;};  exception CallbackNotFound {};  exception InvalidValue {ConstraintExp constr; any value;};  interface Filter {    readonly attribute string constraint_grammar;    ConstraintInfoSeq add_constraints (in ConstraintExpSeq constraint_list)      raises (InvalidConstraint);        void modify_constraints (in ConstraintIDSeq del_list,			     in ConstraintInfoSeq modify_list)      raises (InvalidConstraint, ConstraintNotFound);        ConstraintInfoSeq get_constraints(in ConstraintIDSeq id_list)      raises (ConstraintNotFound);        ConstraintInfoSeq get_all_constraints();        void remove_all_constraints();    void destroy();    boolean match (in any filterable_data)      raises (UnsupportedFilterableData);        boolean match_structured (in CosNotification::StructuredEvent filterable_data)      raises (UnsupportedFilterableData);        boolean match_typed (in CosNotification::PropertySeq filterable_data)      raises (UnsupportedFilterableData);        CallbackID attach_callback (in CosNotifyComm::NotifySubscribe callback);        void detach_callback (in CallbackID callback)      raises ( CallbackNotFound );        CallbackIDSeq get_callbacks();  }; // Filter    interface MappingFilter {    readonly attribute string constraint_grammar;        readonly attribute CORBA::TypeCode value_type;        readonly attribute any default_value;        MappingConstraintInfoSeq add_mapping_constraints (in MappingConstraintPairSeq pair_list)      raises (InvalidConstraint, InvalidValue);        void modify_mapping_constraints (in ConstraintIDSeq del_list,				     in MappingConstraintInfoSeq modify_list)      raises (InvalidConstraint, InvalidValue, ConstraintNotFound);        MappingConstraintInfoSeq get_mapping_constraints (in ConstraintIDSeq id_list)      raises (ConstraintNotFound);        MappingConstraintInfoSeq get_all_mapping_constraints();        void remove_all_mapping_constraints();        void destroy();        boolean match (in any filterable_data, out any result_to_set)      raises (UnsupportedFilterableData);        boolean match_structured (in CosNotification::StructuredEvent filterable_data, out any result_to_set)      raises (UnsupportedFilterableData);        boolean match_typed (in CosNotification::PropertySeq filterable_data, out any result_to_set)      raises (UnsupportedFilterableData);  }; // MappingFilter      interface FilterFactory {        Filter create_filter (in string constraint_grammar)      raises (InvalidGrammar);        MappingFilter create_mapping_filter (in string constraint_grammar, in any default_value)      raises(InvalidGrammar);  }; // FilterFactory    typedef long FilterID;  typedef sequence<FilterID> FilterIDSeq;  exception FilterNotFound {};    interface FilterAdmin {    FilterID add_filter (in Filter new_filter);        void remove_filter (in FilterID filter)      raises (FilterNotFound);        Filter get_filter (in FilterID filter)      raises (FilterNotFound);        FilterIDSeq get_all_filters();        void remove_all_filters();  }; // FilterAdmin}; // CosNotifyFilter#endif /* ifndef _COS_NOTIFYFILTER_IDL_ */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?