Tuesday, November 23, 2010

Team Foundation Server 2010 Extensibility

A lot of customers ask me which parts of Team Foundation Server and the Team Explorer Client are extensible. And my answer is always the same: everything!

To give you some ideas and examples, go to the  TFS SDK page and download some of the available samples. One of the coolest examples is the “Extending Team Projects sample”, it extends Team Projects and Team Explorer in TFS 2010 and includes a Project Creation Wizard plug-in and a Team Explorer plug-in.

Project Creation Wizard

This sample uses a custom process template that declares a special group ID that includes a task list from a separate XML file. That XML file includes a set of web links arranged in a folder structure. Those links are passed to the Project Creation Wizard plug-in as the new Team Project is getting created. The plug-in also adds a new page to the wizard that lets the user enter additional web links and, optionally, to add a link to the newly created Team Project in Web Access.

4-ProjectCreationWizard-LinksPlugin

This page derives from the TeamProjectWizardPage class which provides some handy methods to manage the state of the navigation buttons at the bottom of the wizard. The LinksProjectComponentCreator takes the links entered by the user, merges them with the links specified in the process template and stores an XML representation of the data in a property on the Team Project.

Team Explorer

Once your new Team Project has been created, you’ll see a new folder in Team Explorer called Links that shows the links that were specified in the sample process template as well as the links you entered when you went through the Project Creation Wizard.

TeamExplorer-Links

More information and a complete walkthrough here.

No comments: