IBM Cúram – Entity Class Customization


Introduction


This post helps IBM Cúram Developer to learn Cúram Entity Customization so it would not impact Cúram upgrade.
We have followed below IBM Cúram Development Compliance Guide.

ftp://public.dhe.ibm.com/software/solutions/curam/6.0.4.0/en/Developers/CuramDevelopmentCompliancyGuide.pdf

 


Non Evidence Entity Class Customization


IBM Cúram discourages Entity class Customization directly by Customer. There are various Customization points which every IBM Cúram Developer remember and apply while customizing IBM Cúram Product.

Entity classes include attributes, operations and options. The user can customize Entity classes to add a new attribute, new operation and add or update options. Customization guideline varies and depends on what user is trying to customize.

Add New Attribute:
Whenever a developer wants to add a new attribute(s), They must create a new custom entity with new attributes. The custom entity should contain the key attribute of the OOTB Entity which is being customized. The developer can also create a foreign key relationship for integrity checking. The developer has to add all standard stereo and non-stereotyped operation which helps to insert or update records in the custom table whenever OOTB entity updated.

Add/Override New Operation(s):

Whenever a developer wants to add new operation(s), they must create a new custom Entity class and add all stereotyped and non-stereotyped operation(s). The Developer has to create subclasses with an OOTB Entity class which is being customized. The sub-classing option is without replace, that is, the replace Superclass option is not set to Yes. This will help to treat custom Entity class as External and it would not generate discourage warnings along with overriding existing OOTB functionality.
Note: The developer cannot remove operation and attribute from the OOTB Entity class, and they cannot modify the structure of an OOTB Entity class. if the developer wants to change an attribute of an Entity class, they should contact IBM Curam support team.

Add/Update Options:

A developer can enable or disable various options at Entity and operation(s) level but there are two most important options which are illustrated below –
Enable the Validation option on an OOTB Entity class:
A developer has to create new custom Entity class in a custom package and create a subclass with the OOTB Entity class but this time developer has to apply replace superclass as Yes and enable to Validation option. After the build, it will generate artifacts and force developer to implement an implementation class to implement validation logic. This new validation logic will override the OOTB validation logic and this will be called across Curam API.

Enable exit point options on an application Entity operation:
A developer has to create new custom Entity class in a custom package and create a subclass with the OOTB Entity class but this time developer has to apply replace superclass as Yes and enable to exit point options. After the build, it will generate artifacts and force developer to implement an implementation class to implement exit points. There are various exit points are available like preInsert, postInsert, preModify, postModify etc. and new exit point implementation will override the OOTB exit point logic and this will be called across Curam API.

 


Evidence Entity Class Customization


The entity also represents the static evidence and sometimes needs to be customized. The customization of an entity which represents evidence excluded from above method of customization. the customer can continue to add an attribute to such evidence entity using the extension, as this is required by the Evidence Generator. For now, customers using an extension on Evidence Entities to add attributes may see discouraged warnings in Eclipse relating to these classes, these specific warnings can be ignored.
This description only applies to Entities that represent Evidence Types and not for any other application Entity class.

 


One thought on “IBM Cúram – Entity Class Customization”

Leave a Reply

Your email address will not be published. Required fields are marked *