Typically, utilities do not transform source elements; instead, they perform routine tasks or contain discrete functionality that enhances the overall functionality of a transformation. A utility is an instance of the com.ibm.xtools.transform.core.TransformUtility class.
For more information about the default utilities that are available in the Rational modeling products, see the Default transformation utilities section below.
If you create transformation utilities, you typically create one Eclipse plug-in for each utility. In the manifest file of the plug-in, you must provide a unique identifier so that the transformation service can identify the utility when you run the transformation. By specifying the unique identifier, other transformation authors can add the utility to other transformations. The unique identifier should follow Java naming conventions.
In a transformation descriptor, you can specify the order in which the transformation service runs the utilities and the transformation. For example, if you work in a team environment, you might specify that the transformation run the Validate Edit utility to verify that the files that the transformation changes have the correct permissions before it runs the transform that the transformation specifies.
Rational modeling products contain several default utilities that are part of the predefined transformations. The following table lists the default utilities that are available.
| Utility name | Functionality | Unique identifier |
|---|---|---|
| Validate Edit | This utility provides a mechanism for transformations to ensure that the files to modify have the correct permissions. You might use this utility if you work in a team environment that uses version control software. | com.ibm.xtools.transform.team.ValidateEdit |
| Structural merging | This utility combines models that do not have a common ancestor by merging their structures. | com.ibm.xtools.transform.fuse.FuseUtility |