About this task
A transformation configuration
has .tc as a file name extension, and contains the information that
the transformation uses to generate the output that you expect. A
transformation configuration also contains information that is specific
to a particular type of transformation. To edit an existing transformation
configuration, in a view that shows the workspace resources, double-click
a transformation configuration file, which opens the transformation configuration
editor.
To simplify working with the
transformation configuration file, save the configuration file in
the project that contains the elements to transform.
To
configure a UML-to-C# transformation:
- Click .
- Specify the details of the configuration.
In the New Transformation
Configuration wizard,
on the Specify a Configuration
Name and Transformation page,
complete the following steps:
- In the Name field,
specify a name for the configuration.
- In the Configuration file destination field,
specify the destination for the transformation configuration file.
The destination is a relative path in your current workspace. You
can specify a fully qualified project name or folder name. If you
specify a folder in a project, you must prefix the folder name with
a forward slash (/).
- From the Transformation list,
select a transformation.
Note: To display the transformations
that are installed, but not enabled, click Show all transformations.
A transformation must be bound to a capability to appear in this list.
- In the Protocol section,
specify the modeling protocol, which is also called the design contract
management protocol (DCMP). The value that you select determines whether
to synchronize the source and target of the transformation.
- If the source model is the primary
engineering artifact, select Conceptual.
Any changes to the source model are propagated to the target model.
- If the architecture that the source
artifacts represent evolves independently from the target, select Reconciled.
Selecting this option enables the reverse transformation, which you
can use to compare the source and target, and to reconcile changes.
You might also select this option if different teams implement, develop,
or maintain the architecture.
Note: When you select
this option, additional properties become available in the "Reverse
transformation" section of the
Main page.
For some transformations, additional pages become available in the
transformation configuration
editor.
For information about configuring the reverse transformation, see
the related link below.
- Click Next.
- Specify the source and target elements
for the transformation. For a list of valid source and target elements,
see the related concept topic for this transformation. On the Source and Target page,
complete the following steps:
- In the Selected source pane,
select the source element for the transformation to transform.
- In the Selected target pane,
select the destination of the transformation output. To create a new
destination for the output, click Create Target Container.
- Click Finish. The transformation configuration
editor opens,
and the contents of the configuration are displayed.
- Optional: Specify documentation
about the transformation configuration. This field is useful for communicating
information about a configuration that multiple users share. On the Main page,
in the Documentation field,
specify additional information about the transformation configuration.
- Optional: To specify how the transformation generates
target model elements and files, click the Properties tab.
- To generate a private field with getter and setter methods for each
C# field, select Generate getters and setters. If the
property's isLeaf (final) or isReadOnly value is set to true,
no setter is generated. If the property's isDerived value is true,
the setter implementation is empty.
- To specify whether or not to delete generated files, select an option
in the Delete obsolete generated files section. When
the UML-to-C# transformation generates classes, methods, and attributes, it
assigns the @generated tag to these elements. The next time that you run the
transformation, the transformation overwrites these elements. When you delete
elements from the source model and reapply the UML-to-C# transformation, the
transformation deletes previously generated fields and methods that still
have the @generated tag and that no longer have a corresponding source model
element. However, for files that the transformation generates, you can specify
whether to prompt before deleting files, to always delete files, or to never
delete files.
- Optional: To specify the C# collection
type that the transformation generates for each UML collection type in the
source project, click the Collections tab. A
collection represents a group of model elements. The C# collection type that
you select determines whether duplicate model elements can exist in the collection
or whether the model elements are ordered. The UML collection type is determined
by the isOrdered and isUnique properties of the model elements.
- Optional: If
the transformation that you configure supports mapping, you can specify
alternate names for the artifacts that the transformation generates
by creating a mapping model. To use a new or existing mapping model,
complete the following steps:
- In the transformation configuration
editor,
on the Mapping page,
select the Enable the mapping functionality for
this configuration check
box.
- In the Mapping model file name field,
specify the name of a new or existing mapping model.
- Optional: To generate
debugging information, on the Main page,
select the Generate a debug log check
box. The next time that you run the transformation,
the log file is generated as an XML file in the folder that you specify
in the transformation preferences. If you do not specify a location
for the log files, the transformation generates the log file in the .metadata folder
in your workspace.
Tip: To set preferences for transformations,
click ; then expand Modeling and click Transformations.
The log file provides information
about the source elements, the target elements, and the rules that
the transformation applies to transform the source elements. If the
transformation transforms many elements, you might experience decreased
performance while the transformation generates the log file; therefore,
you should only generate a log file for debugging purposes.
- Optional: To
prevent new dialog boxes from opening while a transformation runs,
on the Main page,
select the Run the forward transformation silently check
box.
Running a transformation
in silent mode suppresses all dialog boxes that the transformation
generates. The transformation applies default rules and behavior,
which might generate unexpected or incorrect transformation output.
You should only run a transformation in silent mode to validate that
the transformation runs, instead of validating the transformation
output. For example, you might run a transformation in silent mode
as part of an automated task or automated test suite.
Setting the transformation to run
in silent mode overrides the file-overwrite options that you specify,
and overwrites files if necessary.
If
you selected the Design Contract Management Protocol option of Reconciled for
the forward transformation to enable the reverse transformation, you can select Run
the reverse transformation silently. Specifying that the reverse
transformation runs in silent mode suppresses the merge editor. If a conflict
occurs during the merge, the transformation stops and you must rerun the transformation
with the silent options cleared.
- Optional: To create a traceable relationship between the transformation
source and target, on the Main page,
select the Create trace relationships check
box. This check box is enabled only if you select the Mixed Modeling or Reconciled
Modeling protocols.
You can use trace relationships and the visual
development tools to understand the relationships between source model
elements and transformation output. This function is useful in large
projects that might contain multiple models and transformation configurations.
The transformation does not alter the source model.
- Optional: To
display the errors that occurred when the transformation ran, on the Main page,
select the Open the Report dialog box when the transformation
is complete check
box. Selecting this check box displays only the generated errors.
The same information is also written to the error log, which you can
view by clicking .
To display the warnings that occurred when the transformation
ran, select the Show warnings in the Report dialog
box check
box.
- Click .