org.omg.CosPropertyService
Class _PropertySetStub

java.lang.Object
  extended by org.omg.CORBA.portable.ObjectImpl
      extended by org.omg.CosPropertyService._PropertySetStub
All Implemented Interfaces:
java.io.Serializable, org.omg.CORBA.Object, org.omg.CORBA.portable.IDLEntity, PropertySet, PropertySetOperations

public class _PropertySetStub
extends org.omg.CORBA.portable.ObjectImpl
implements PropertySet

The PropertySet interface provides operations to define and modify properties, list and get properties, and delete properties.

The PropertySet interface also provides "batch" operations, such as define_properties, to deal with sets of properties 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 succeed for any suboperation to succeed.

For define_properties and delete_properties, 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 using three property structures. The first property could be accepted (added or modified), the second could fail due to an InvalidPropertyName, and the third could fail due to a ConflictingProperty. In this case a property is either added or modified in the PropertySet, and a MultipleExceptions is raised with two items in the PropertyExceptions sequence.

The get_properties and delete_all_properties "batch" operations utilize a boolean flag to identify 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.

See Also:
Serialized Form

Constructor Summary
_PropertySetStub()
           
 
Method Summary
 java.lang.String[] _ids()
           
 void define_properties(Property[] nproperties)
          Operation define_properties
 void define_property(java.lang.String property_name, org.omg.CORBA.Any property_value)
          Operation define_property
 boolean delete_all_properties()
          Operation delete_all_properties
 void delete_properties(java.lang.String[] property_names)
          Operation delete_properties
 void delete_property(java.lang.String property_name)
          Operation delete_property
 void get_all_properties(int how_many, PropertiesHolder nproperties, PropertiesIteratorHolder rest)
          Operation get_all_properties
 void get_all_property_names(int how_many, PropertyNamesHolder property_names, PropertyNamesIteratorHolder rest)
          Operation get_all_property_names
 int get_number_of_properties()
          Operation get_number_of_properties
 boolean get_properties(java.lang.String[] property_names, PropertiesHolder nproperties)
          Operation get_properties
 org.omg.CORBA.Any get_property_value(java.lang.String property_name)
          Operation get_property_value
 boolean is_property_defined(java.lang.String property_name)
          Operation is_property_defined
 
Methods inherited from class org.omg.CORBA.portable.ObjectImpl
_create_request, _create_request, _duplicate, _get_delegate, _get_domain_managers, _get_interface_def, _get_policy, _hash, _invoke, _is_a, _is_equivalent, _is_local, _non_existent, _orb, _release, _releaseReply, _request, _request, _servant_postinvoke, _servant_preinvoke, _set_delegate, _set_policy_override, equals, hashCode, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
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
 

Constructor Detail

_PropertySetStub

public _PropertySetStub()
Method Detail

_ids

public java.lang.String[] _ids()
Specified by:
_ids in class org.omg.CORBA.portable.ObjectImpl

define_property

public void define_property(java.lang.String property_name,
                            org.omg.CORBA.Any property_value)
                     throws InvalidPropertyName,
                            ConflictingProperty,
                            UnsupportedTypeCode,
                            UnsupportedProperty,
                            ReadOnlyProperty
Operation define_property

Specified by:
define_property in interface PropertySetOperations
Parameters:
property_name - the property name.
property_value - the property value.
Throws:
InvalidPropertyName - Indicates that the property name is invalid (A property name of length 0 is invalid; implementations may place other restrictions oneway property names.)
ConflictingProperty - Indicates that the property indicated created a conflict in the type or value provided.
UnsupportedTypeCode - Indicates that the any TypeCode of the property_value field is not supported in this PropertySet.
UnsupportedProperty - Indicates that the supplied property is not supported in this PropertySet, either due to PropertyName restrictions or specific name-value pair restrictions.
ReadOnlyProperty - Indicates that the property does not support client modification of the property_value field.

define_properties

public void define_properties(Property[] nproperties)
                       throws MultipleExceptions
Operation define_properties

Specified by:
define_properties in interface PropertySetOperations
Parameters:
nproperties - the sequence of properties to define
Throws:
MultipleExceptions - The PropertyExceptions sequence may contain any of the exceptions that may be raised by the define_property operation, multiple times and in any order.

get_number_of_properties

public int get_number_of_properties()
Operation get_number_of_properties

Specified by:
get_number_of_properties in interface PropertySetOperations
Returns:
the current number of properties associated with this PropertySet.

get_all_property_names

public void get_all_property_names(int how_many,
                                   PropertyNamesHolder property_names,
                                   PropertyNamesIteratorHolder rest)
Operation get_all_property_names

Specified by:
get_all_property_names in interface PropertySetOperations
Parameters:
how_many - the number of property names to retrieve.
property_names - the sequence of property names retrieved is returned in the output parameter.
rest - the iterator to return the remaining property names.

get_property_value

public org.omg.CORBA.Any get_property_value(java.lang.String property_name)
                                     throws PropertyNotFound,
                                            InvalidPropertyName
Operation get_property_value

Specified by:
get_property_value in interface PropertySetOperations
Parameters:
property_name - the property name.
Returns:
the property value.
Throws:
PropertyNotFound - Indicates that the specified property was not defined for this PropertySet.
InvalidPropertyName - Indicates the property name is invalid. (A property name of length 0 is invalid; implementations may place other restrictions oneway property names.)

get_properties

public boolean get_properties(java.lang.String[] property_names,
                              PropertiesHolder nproperties)
Operation get_properties

Specified by:
get_properties in interface PropertySetOperations
Parameters:
property_names - the sequence of property names.
nproperties - the properties are returned in the output parameter.
Returns:
true if the Properties parameter contains valid values for all requested property names. If false, properties with a value of type tk_void may have failed due to PropertyNotFound or InvalidPropertyName.

get_all_properties

public void get_all_properties(int how_many,
                               PropertiesHolder nproperties,
                               PropertiesIteratorHolder rest)
Operation get_all_properties

Specified by:
get_all_properties in interface PropertySetOperations
Parameters:
how_many - the number of properties to retrieve.
nproperties - the sequence of properties retrieved is returned in the output parameter.
rest - the iterator to return the remaining properties.

delete_property

public void delete_property(java.lang.String property_name)
                     throws PropertyNotFound,
                            InvalidPropertyName,
                            FixedProperty
Operation delete_property

Specified by:
delete_property in interface PropertySetOperations
Parameters:
property_name - the property name.
Throws:
PropertyNotFound - Indicates that the specified property was not defined for this PropertySet.
InvalidPropertyName - Indicates the property name is invalid. (A property name of length 0 is invalid; implementations may place other restrictions oneway property names.)
FixedProperty - Indicates that the PropertySet does not support the deletion of the specified property.

delete_properties

public void delete_properties(java.lang.String[] property_names)
                       throws MultipleExceptions
Operation delete_properties

Specified by:
delete_properties in interface PropertySetOperations
Parameters:
property_names - the sequence of property names.
Throws:
MultipleExceptions - The PropertyExceptions sequence may contain any of the exceptions that may be raised by the delete_property operation, multiple times and in any order.

delete_all_properties

public boolean delete_all_properties()
Operation delete_all_properties

Specified by:
delete_all_properties in interface PropertySetOperations
Returns:
false if not all properties were deleted.

is_property_defined

public boolean is_property_defined(java.lang.String property_name)
                            throws InvalidPropertyName
Operation is_property_defined

Specified by:
is_property_defined in interface PropertySetOperations
Parameters:
property_name - the property name.
Throws:
InvalidPropertyName - Indicates the property name is invalid. (A property name of length 0 is invalid; implementations may place other restrictions oneway property names.)