Task Mapping Editor

The Task Mapping Editor displays the configuration in a user-friendly format. It shows you information about the repositories, queries, and mappings. The editor also provides direct links for viewing repository schemas, editing repository properties, and editing query parameters.

The Quick Start feature will create a skeleton synchronizer.xml file for you, so if you use the Quick Start, you will see the Task Mapping Editor populate itself.

To access the Task Mapping Editor, double click on the mapping title in the Services view or right click the mapping title and select Properties

Task Mapping Editor Layout

Repositories

General repository information is displayed in the upper sections of the Task Mapping editor. The repository information is populated from the repository section of the synchronizer.xml file, and includes the repository URL, credentials, type, connector kind, comment content-type, and proxy creation trigger. The name of the repository type will be in the header of this section, and the icon for the repository type will be next to the URL link.

The repository on the left side of the editor corresponds to the first repository of the task mapping in the synchronizer.xml; the one on the right corresponds to the second repository in synchronizer.xml.

This section of the editor links to the repository properties editor through the URL and Username/Password links. If a username or password has not been supplied a yellow warning sign will be displayed next to the text box as shown.

Task

If you ran the Quick Start wizard, the Task section will display the task ID of each task synchronized by Quick Start. If you did not run the Quick Start wizard, this section will be replaced by the Queries section. You can expand the scope of your synchronizations by clicking the Queries hyperlink to transform this into the Queries section, where you can define your changes and initialization queries.

Queries

The Queries section displays the titles of your changes and initialization queries for each repository. If the Quick Start wizard was ran, this section will be replaced with the Task section.

You can change these queries by clicking on the textbox and selecting a pre-existing query for that repository; clicking on the Changes: or Initialization: links will bring up the Edit Query dialog. Clicking on the New... button will allow the creation of a query that is immediately defined as your changes or initialization query.

Properties

The Properties section displays the repository properties, such as defaultCommentUser or proxyStorageAttribute. This section is intended to serve as an easy way to view repository properties configured in the synchronizer.xml file. These properties can be added, edited or removed through the buttons on the right.

Mapping Settings

The Mapping Settings section has information on person mapping and on the conflict notification policy to use, as well as on whether to synchronize comments and attachments.

The Person Mapping box displays the value specified for the person-mapping attribute in the task-mapping section of the synchronizer.xml. The name found in the Person Mapping box will also display at the top of the Services view as a link to the person mapping file.

The Conflict Notification box will display the value chosen for the conflict-notification-policy attribute in the task-mapping section of the synchronizer.xml. Conflict notification can either be set as Log or Comment. If Comment is selected, conflict notifactions from Tasktop Sync will write to the comment sections of the two synchronized repositories. If Log is selected, conflict notifications will write to the Tasktop Sync Console Log. If nothing is specified in the synchronizer.xml the Conflict Notification box will display UNKNOWN.

The Conflict Resolution Policy box will display the default conflict resolution policy of this task mapping. In case of a failed synchronization, this resolution policy determines which course of action to take, whether to forcibly synchronize the fields of one dominant repository, or to not synchronize the conflict task. Attribute specific policies can be implemented which override this default setting.

The Comment Synchronization and Attachment Synchronization boxes can be used to set the directionality of comment and attachment syncing. Attachments and Comments can be set to Sync to a single repository, birectionally between both repositories or left unsynchronized.

Notifications

The Notifications section allows the addition and removal of a mailing list of Tasktop Sync Stat or Error reports. Clicking on the check boxes will determine which type of reports the recipient receives. Clicking on Open mail preferences allows the configuring of the origin of the notification emails. Notification emails will not be sent without a valid email address provided in the mail preferences.

Attribute Mapping Editor

The Attribute Mapping Editor provides a user friendly way of configuring attribute mappings between repositories. The alternate way of editing attribute mappings through the synchronizer.xml is described in the Attribute Mapping section of the synchronizer.xml configuration.

Mappings Table

The Mappings Table displays all the attributes currently being synchronized. The arrows between the attributes being displayed visualize the directions that the attributes are synced. They can be unidirectional from one repository to another, or bidirectional. The buttons on the top right allow the addition and removal of attribute mappings.

Mapping

This area allows you to define the attributes being mapped. The direction of the synchronizations can be configured in the Direction box.

Caster

Different attributes often come in different format, resulting the need for casters to properly parse and write to individual attribute fields. This section will explain how to configure these various casters.

The simplest cases, such as syncing Summary, require no casters at all, and this is the default value unelss configured otherwise.

Value Mapping

For attributes such as Severity and Priority, attributes with pre-defined constants determined by their repository, use the Value Mapping caster if the values between the repositories do nto map directly.

Select the different values in the tables to define the mapping to the other repository. Note there are often different number of values for various fields between repositories, so overlaps may need to happen as seen in the screenshot.

Date/Time Transformation

For repositories with different date/time formats with attributes such as Date Modified or Date Created, a Date/Time Transformation may need to be used. Pressing Ctrl-space will enable content assist when filling out the formats. See the Date-Time Caster section for more details.

Person Mapping

For fields such as Assignee, Reporter or any other fields involving the id of people, use the Person Mapping caster.

Clicking on Go to person mapping settings goes to the Mapping Settings section of the task mapping editor, to define which person mapping file is being used.

Clicking on Go to person mapping file will go to the The person mapping caster uses mapping specified in the Person mapping file currently being used. Read about the Person mapping file to learn how it is configured.

Text Markup Transformation

For fields such as Description, different repositories may store their text in a differing rich formats. In this case use the Text Markup Transformation. Select from the drop down menu to specify the text content type of each repository.

In the case that a repository does not support a rich text, we suggest setting the format to Textile, as it is a rich text format which is easily readable as plain text.

Literal Value

If you want attributes to be set to an arbitrary value, use the Literal Value caster. Read “here”#:LiteralValues for more information about the usage of this caster. If the attribute being written to with a literal caster has fixed values to select from press Ctrl-space to get a list of options to select from. This can be useful for setting defaults on enumerated types when syncing repositories with required fields which do not conveniently map to a field in the other repository.

Advanced

The Conflict Resolution Policy box specifies which the behavior for synchronizations of this attribute to take in case of a conflict. If Default behavior is selected, the policy defined in the task mapping will take effect. Otherwise selecting any other option will override the mapping-wide default behavior.

The Attribute mapping strategy box specifies when this attribute should be synchronized. The Default behavior is to create the attribute if it does not exist on the other repository and synchronize as always. Copy if target attribute exist only synchronizes the attribute if it exists on the other repository, so undefined attributes will not be created. Initialize will only create the attribute on the creation of a new proxy task, and will not synchronize in subsequent synchronizations.

Notes

This section allows the entry of any documentation or special details that may provide documentation with the attribute mapping.

Schema View

The Schema View can be accessed by selecting the links provided under the Schema section of the Task Mapping Editor. Tasktop Sync introspects both repositories to determine their schemas: the attribute IDs, their labels, their kinds, and their types. The Attribute Mapping Editor uses these schemas to populate the options for enumerated types when producing value map casters and literal casters. Plug an ID in the Schema View into the key field of an attribute-mapping entity; compare the Type of one attribute with the Type of the proxy attribute to determine if you need a caster.

If a change is made to the repositories, you need to click on the Refresh Schema button in the Actions section of the Schema View to update the repository schema to reflect the changes made.

Source Tab

The Source Tab allows access to the XML which is generated by the editor. It will display only the XML pertient to the current configuration, this includes all the XML for the current task-mapping element being configured as well as the shared configuration of the enclosing sync-model element. Advanced configuration such as scripted attribute casters must be configured directly in the XML.