org.omg.CosPropertyService
Interface PropertySetDef

All Superinterfaces:
org.omg.CORBA.portable.IDLEntity, org.omg.CORBA.Object, PropertySet, PropertySetDefOperations, PropertySetOperations, java.io.Serializable
All Known Implementing Classes:
_PropertySetDefStub

public interface PropertySetDef
extends PropertySetDefOperations, PropertySet, org.omg.CORBA.Object, org.omg.CORBA.portable.IDLEntity

The PropertySetDef interface is a specialization (subclass) of the PropertySet interface. The PropertySetDef interface provides operations to retrieve PropertySet constraints, define and modify properties with modes, and to get or set property modes.

It should be noted that a PropertySetDef is still considered a PropertySet. The specialization operations are simply to provide more client access and control of the characteristics (metadata) of a PropertySet.

The PropertySetDef interface also provides "batch" operations, such as define_properties_with_modes, to deal with sets of property definitions as a whole. The execution of the "batch" operations is considered best effort (i.e., not an atomic set) in that not all suboperations need to succeed for any suboperation to succeed.

For define_properties_with_modes and set_property_modes, if any suboperation fails, a MultipleExceptions exception is returned to identify which property name had which exception.

For example, a client may invoke define_properties_with_modes using four property definition structures. The first property could be accepted (added or modified), the second could fail due to an UnsupportedMode, the third could fail due to a ConflictingProperty, and the fourth could fail due to ReadOnlyProperty.

In this case a property is either added or modified in the PropertySetDef and a MultipleExceptions exception is raised with three items in the PropertyExceptions sequence.

The get_property_modes "batch" operation utilizes a boolean flag to signal that mixed results occurred and additional processing may be required to fully analyze the exceptions.

Making "batch" operations behave in an atomic manner is considered an implementation issue that could be accomplished via specialization of this property service.


Method Summary
 
Methods inherited from interface org.omg.CosPropertyService.PropertySetDefOperations
define_properties_with_modes, define_property_with_mode, get_allowed_properties, get_allowed_property_types, get_property_mode, get_property_modes, set_property_mode, set_property_modes
 
Methods inherited from interface org.omg.CosPropertyService.PropertySetOperations
define_properties, define_property, delete_all_properties, delete_properties, delete_property, get_all_properties, get_all_property_names, get_number_of_properties, get_properties, get_property_value, is_property_defined
 
Methods inherited from interface org.omg.CORBA.Object
_create_request, _create_request, _duplicate, _get_domain_managers, _get_interface_def, _get_policy, _hash, _is_a, _is_equivalent, _non_existent, _release, _request, _set_policy_override