In TFS Integration Platform – What is the Lookup Service? Q&A-27 we introduced the LookupService, which had two “Warning: Not yet implemented … watch the space” warnings at the end.

The following features have just been delivered and will be making an appearance on the forthcoming Codeplex drops at http://tfsintegration.codeplex.com/Wikipage.

In the following configuration snippet and mapping  rule, "TestUser" from left will be transformed to "TestUser (Demo Organization)".

<DisplayNameMappings DirectionOfMapping="LeftToRight">
   
<DisplayNameMapping Left="*" Right="{0}(Demo Organization)" MappingRule="FormatStringComposition" />
</DisplayNameMappings>

image

… whereas the following rule decomposes Test User (Demo Organization) to TestUser.

<DisplayNameMappings DirectionOfMapping="RightToLeft">
   
<DisplayNameMapping Left="{0} (Demo Organization)" Right="*" MappingRule="FormatStringDecomposition" />
</DisplayNameMappings>

image

Some points to highlight:

  • Composition and decomposition is one-way at this stage in terms of the “LeftToRight” and “RightToLeft” in the context of DirectionOfMapping.
  • The rules are applicable to "DisplayNameMappings", "AliasMappings" and "DomainMappings".
  • The LookupService is currently focused on WIT artefacts only.
  • If the user credentials on source A and target B are different, you need to create an associated mapping in the configuration file as the lookup service does not have a crystal ball (yet). For instance, DomainX\TestUser can be mapped to DomainY\DemoUser in the configuration by creating:
    • An Alias mapping to map TestUser to DemoUser
    • A domain mapping from DomainX to DomainY
    • … in this case lookup service will populate the Display Name with the information it retrieves from Active Directory (AD).

NOTE: We are currently working on configuration guidance documentation, which will consolidate and supplement this and other configuration specific posts on the TFS Integration Platform, as listed in TFS Integration Platform – Summary of Links.