Running and rerunning transformations

Before you can run a transformation, you must create a transformation configuration. When you apply a transformation configuration, an instance of the transformation is created and the transformation runs with the properties that the configuration defines.

About this task

Before you can run a transformation, you must create a transformation configuration. When you apply a transformation configuration, an instance of the transformation is created and the transformation runs with the properties that the configuration defines.

If you select source elements in the model instead of using the transformation configuration, the source elements that you select override the source model or elements specified in the transformation configuration. The transformation configuration is not affected and the source that you specify on the Source and Target page of the transformation configuration editor or in the New Transformation Configuration wizard does not change.

To run a transformation, complete one of the following steps:
  • To run the transformation on the source specified in the configuration, depending on the view that you are working in, complete one of the following steps:
    • In the navigation view, right-click a transformation configuration (.tc) file; then click Transform and click a transformation.
    • In the Pattern Explorer view, right-click a transformation; then click Run Transformation. In the Select configuration dialog box, specify the transformation configuration to run, and click OK.
    Tip: You can also run a transformation from the transformation configuration editor. On the Main page, click Run.
  • To specify a different source on which to run the transformation, in the Modeling perspective, select and right-click elements in the source model or project; then click Transform, click a transformation configuration, and click a transformation. The transformation configuration file must be in the same project as the elements that you select.
Tip: To run this transformation again, click Modeling > Transform > Run Last. The transformation uses the same source elements from when you last ran the transformation.
  • To run a transformation from a command line, use the following syntax:
    eclipse -data workspace-path -application com.ibm.xtools.transform.core.transformationRunner -transformConfigs "[-R]transformation-configuration-path1,[-R]transformation-configuration-path2,..." 

    In the -transformConfigs parameter, you must specify the complete workspace path and configuration file name, not the file-system path name, of one or more transformation configurations.

    Running a transformation from a command line suppresses all dialog boxes that the transformation generates.

    As an example, a transformation configuration called MyConfig.tc is in a project called MyProject in a workspace called MyWorkspace. This transformation configuration specifies the configuration information for a transformation called MyTransformation, and for a corresponding reverse transformation called MyReverseTransformation.To invoke MyTransformation, you can run the MyConfig.tc configuration by typing the following text at the command line:
    eclipse -data /MyWorkspace -application com.ibm.xtools.transform.core.transformationRunner -transformConfigs "MyProject/MyConfig.tc"  
    To run the reverse transformation, specify the -R option at the beginning of the transformation configuration path, as in this example:
    eclipse -data /MyWorkspace -application com.ibm.xtools.transform.core.transformationRunner -transformConfigs "-RMyProject/MyConfig.tc"
    To run multiple transformations, in the -transformConfigs parameter, specify a comma-separated list of transformation configurations, including the workspace path name for each configuration. You can run forward or reverse transformations, as in this example:
    eclipse -data /MyWorkspace -application com.ibm.xtools.transform.core.transformationRunner -transformConfigs "MyProject/MyConfig.tc, -RMyProject/MyConfig.tc"
  • To run the transformation as part of an application, you can invoke the transformation API, as in the following example:
    IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path("/MyWorkspace/MyConfig.tc"));
    try {
    		ITransformConfig config = TransformConfigUtil.loadConfiguration(file);
    		IStatus status = TransformController.getInstance().execute(config, null, false, null);
    }
    catch (IOException e) {
    // The config file could not be read.
    }
    You can also load a transformation configuration by specifying a URL, as in the following example:
    try {
    	URL url= new URL(platform:/plugin/myPluginID/myConfig.tc);
    	ITransformConfig config = TransformConfigUtil.loadConfiguration(url);
    	}
    	catch (MalformedURLException malURLEx) {
    		// Handle exception.
    	}
    	catch (IOException ioEx) {
    		// Handle exception.
    }
    You can specify a URL that uses different protocols, as in the following examples:
    • platform:/plugin/myPluginID/myConfig.tc
    • http://myServer.myCompany.com/myConfig.tc
    • ftp://myUsername:myPassword@myServer.myCompany.com/myConfig.tc
    • jar:file:c:/myFolder/myJar.jar!/myConfig.tc
    • file:c:/myFolder/myConfig.tc
  • To run a transformation from an Ant script or build.xml file, complete the following steps:
    1. In a project in the current workspace, create a file named build.xml.
    2. In the build.xml file, insert the following content:
      <?xml version="1.0" encoding="UTF-8"?>
         <project name="myProject" default="generate" basedir=".">
            <target name="generate">
               <echo>Running transformation 'myProject/myConfig.tc' ...</echo>
               <com.ibm.xtools.transform.core.runTransformation transformConfig="myProject/myConfig.tc" reverse="false"/>
            </target>
      </project>
    3. Replace the myProject variable with the name of your target project and the myConfig.tc variable with the name of the transformation configuration file being referenced in that project.
    4. For transformation types that support a reverse transformation, to run the reverse transformation, set the reverse attribute to true.
      Note: The transformation configuration must implement the Reconciled Modeling design contract management protocol (DCMP).
    5. Right-click the build.xml file; then click Run As > Ant Build.

    In the build.xml file, in the project element, set the default attribute equal to the value that you specify for the name attribute in the target element.

    The transformConfig attribute must specify a valid workspace path.

    For transformation types that support a reverse transformation, to run the reverse transformation, set the reverse attribute to true.
    Note: The transformation configuration must implement the Reconciled Modeling design contract management protocol (DCMP).

    To run the Ant script, right-click the build.xml file; then click Run As > Ant Build.


Feedback