cosproperty.idl

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

IDL
193
字号
#ifndef _COSPROPERTY_IDL#define _COSPROPERTY_IDL#pragma prefix "omg.org"module CosPropertyService {   /*****************************************************/   /*                Data Types                         */   /*****************************************************/   typedef string PropertyName;     struct Property {     PropertyName property_name;     any property_value;   };     enum PropertyModeType {     normal, read_only, fixed_normal, fixed_readonly, undefined };   struct PropertyDef {     PropertyName property_name;     any property_value;     PropertyModeType property_mode;   };   struct PropertyMode {     PropertyName property_name;     PropertyModeType property_mode;   };   typedef sequence<PropertyName> PropertyNames;   typedef sequence<Property> Properties;   typedef sequence<PropertyDef> PropertyDefs;   typedef sequence<PropertyMode> PropertyModes;   typedef sequence<CORBA::TypeCode> PropertyTypes;   interface PropertyNamesIterator;   interface PropertiesIterator;   interface PropertySetFactory;   interface PropertySetDef;   interface PropertySet;   /*****************************************************/   /*               Exceptions                          */   /*****************************************************/   exception ConstraintNotSupported{};   exception InvalidPropertyName {};   exception ConflictingProperty {};  exception PropertyNotFound {};   exception UnsupportedTypeCode {};   exception UnsupportedProperty {};   exception UnsupportedMode {};   exception FixedProperty {};   exception ReadOnlyProperty {};   enum ExceptionReason { invalid_property_name, conflicting_property, 			 property_not_found, unsupported_type_code, 			 unsupported_property, unsupported_mode, 			 fixed_property, read_only_property };   struct PropertyException {     ExceptionReason reason;     PropertyName failing_property_name;   };   typedef sequence<PropertyException> PropertyExceptions;   exception MultipleExceptions { PropertyExceptions exceptions; };   /*****************************************************/   /*              Interface Definitions                */   /*****************************************************/   interface PropertySetFactory {     PropertySet create_propertyset();         PropertySet create_constrained_propertyset( in PropertyTypes allowed_property_types, 						in Properties allowed_properties)       raises(ConstraintNotSupported);     PropertySet create_initial_propertyset( in Properties initial_properties)       raises(MultipleExceptions); };     /*---------------------------------------------------*/   interface PropertySetDefFactory {     PropertySetDef create_propertysetdef();     PropertySetDef create_constrained_propertysetdef( in PropertyTypes allowed_property_types, 						      in PropertyDefs allowed_property_defs)       raises(ConstraintNotSupported);     PropertySetDef create_initial_propertysetdef( in PropertyDefs initial_property_defs)       raises(MultipleExceptions);  };   /*---------------------------------------------------*/   interface PropertySet {     /* Support for defining and modifying properties */     void define_property( in PropertyName property_name, in any property_value)       raises(InvalidPropertyName, ConflictingProperty, UnsupportedTypeCode, 	     UnsupportedProperty, ReadOnlyProperty);     void define_properties( in Properties nproperties)       raises(MultipleExceptions);     /* Support for Getting Properties and their Names */     unsigned long get_number_of_properties();     void get_all_property_names( in unsigned long how_many, 				 out PropertyNames property_names, 				 out PropertyNamesIterator rest);     any get_property_value( in PropertyName property_name)       raises(PropertyNotFound, InvalidPropertyName);     boolean get_properties( in PropertyNames property_names, 			    out Properties nproperties);     void get_all_properties( in unsigned long how_many, 			     out Properties nproperties, 			     out PropertiesIterator rest);     /* Support for Deleting Properties */     void delete_property( in PropertyName property_name)       raises(PropertyNotFound, InvalidPropertyName, FixedProperty);     void delete_properties( in PropertyNames property_names)       raises(MultipleExceptions);     boolean delete_all_properties();     /* Support for Existence Check */    boolean is_property_defined( in PropertyName property_name)       raises(InvalidPropertyName);   };   /*---------------------------------------------------*/   interface PropertySetDef:PropertySet {     /* Support for retrieval of PropertySet constraints*/     void get_allowed_property_types( out PropertyTypes property_types);     void get_allowed_properties( out PropertyDefs property_defs);     /* Support for defining and modifying properties */     void define_property_with_mode( in PropertyName property_name, 				    in any property_value, 				    in PropertyModeType property_mode)       raises(InvalidPropertyName, ConflictingProperty, UnsupportedTypeCode, 	     UnsupportedProperty, UnsupportedMode, ReadOnlyProperty);     void define_properties_with_modes( in PropertyDefs property_defs)       raises(MultipleExceptions);         /* Support for Getting and Setting Property Modes */     PropertyModeType get_property_mode( in PropertyName property_name)       raises(PropertyNotFound, InvalidPropertyName);     boolean get_property_modes( in PropertyNames property_names, 				out PropertyModes property_modes);     void set_property_mode( in PropertyName property_name, 			    in PropertyModeType property_mode)       raises(InvalidPropertyName, PropertyNotFound, UnsupportedMode);     void set_property_modes( in PropertyModes property_modes)       raises(MultipleExceptions);   };   /*---------------------------------------------------*/   interface PropertyNamesIterator{     void reset();     boolean next_one( out PropertyName property_name);     boolean next_n ( in unsigned long how_many, 		     out PropertyNames property_names);     void destroy();   };   /*---------------------------------------------------*/   interface PropertiesIterator {     void reset();     boolean next_one( out Property aproperty);     boolean next_n( in unsigned long how_many, 		    out Properties nproperties);     void destroy();   }; };#endif

⌨️ 快捷键说明

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