Issue 10678: getter/setter/is_modified operations (data-distribution-rtf) Source: PrismTech (Mr. Erik Hendriks, erik.hendriks(at)prismtech.com) Nature: Clarification Severity: Summary: Problem: For each attribute a getter, setter and is_xxx_modified (in case of non-keyfields) operation is to be generated in the derived class. This should be made more explicity by adding the operations in the table contents on page 3-34. It should also be added in the IDL description in section 3.2.1.2 on page 3-51 and in figure 3-4 on page 3-16 Since keyfields determine the identity of a DLRL object, they cannot be changed. That means no is__<attribute>_modified operations needs to be generated for them. Solution: Add the following to the table on page 3-34: For each attribute defined on the class: get_<attribute_name> <undefined attribute type> set_<attribute_name> void value <undefined attribute type> For each attribute defined on the class which is not a relation to another DLRL object: is_<attribute_name>_modified boolean For each attribute defined on the class which is a relation (mono relation / multi relation) to another DLRL object: is_<attribute_name>_modified boolean scope ReferenceScope Section 3.1.6.3.14: Replace: · is_<attribute>_modified, to get if this attribute has been modified by means of incoming modifications (cf. method is_modified). With: · is_<attribute_name>_modified, to get if this attribute has been modified by means of incoming modifications (cf. method is_modified). Since keyfields cannot be changed by incoming modifications, this operation will not be generated for attributes that represent such keyfields. Add the following text in the description for valuetype ObjectRoot on page 3-51 in section 3.2.1.2 within the closing bracket of the objectroot valuetype. /* For each attribute of the application type 'Foo' the following operations * will be generated: * * <attribute_type> get_<attribute_name>(); * void set_<attribute_name>(<attribute_type> value); * * If the attribute is a MonoAttribute or MultiAttribute the following operation will * be generated: * * boolean is_<attribute_name>_modified(); * * If the attribute is a MonoRelation or MultiRelation the following operation will * be generated: * * boolean is_<attribute_name>_modified(ReferenceScope scope); */ Add in figure 3-4 on page 3-16 to the ObjectRoot class operations listing the following operations: get_<attribute_name>() set_<attribute_name>() is_<attribute_name>_modified() Resolution: Revised Text: Actions taken: February 12, 2007: received issue Discussion: The getter/setter/is_modified operations for attributes and relations should be added to the table listing on page 3-34 and in figure 3-4 on page 3-16 End of Annotations:===== s is issue # 10678 From: "Erik Hendriks" getter/setter/is_modified operations The getter/setter/is_modified operations for attributes and relations should be added to the table listing on page 3-34 and in figure 3-4 on page 3-16 Problem: For each attribute a getter, setter and is_xxx_modified (in case of non-keyfields) operation is to be generated in the derived class. This should be made more explicity by adding the operations in the table contents on page 3-34. It should also be added in the IDL description in section 3.2.1.2 on page 3-51 and in figure 3-4 on page 3-16 Since keyfields determine the identity of a DLRL object, they cannot be changed. That means no is___modified operations needs to be generated for them. Solution: Add the following to the table on page 3-34: For each attribute defined on the class: get_ set_ void value For each attribute defined on the class which is not a relation to another DLRL object: is__modified boolean For each attribute defined on the class which is a relation (mono relation / multi relation) to another DLRL object: is__modified boolean scope ReferenceScope Section 3.1.6.3.14: Replace: · is__modified, to get if this attribute has been modified by means of incoming modifications (cf. method is_modified). With: · is__modified, to get if this attribute has been modified by means of incoming modifications (cf. method is_modified). Since keyfields cannot be changed by incoming modifications, this operation will not be generated for attributes that represent such keyfields. Add the following text in the description for valuetype ObjectRoot on page 3-51 in section 3.2.1.2 within the closing bracket of the objectroot valuetype. /* For each attribute of the application type 'Foo' the following operations * will be generated: * * get_(); * void set_( value); * * If the attribute is a MonoAttribute or MultiAttribute the following operation will * be generated: * * boolean is__modified(); * * If the attribute is a MonoRelation or MultiRelation the following operation will * be generated: * * boolean is__modified(ReferenceScope scope); */ Add in figure 3-4 on page 3-16 to the ObjectRoot class operations listing the following operations: get_() set_() is__modified()