Creating a WIT migration tool


Migration of work items operates by connecting data sources to the synchronization engine which generates change lists. For a given pair of work items, a change list to bring both items in sync is generated. This list is translated into a list of atomic updates, which are applied to the target one at a time.

Implementing a WIT migration tool

Class Toolkit Parents Notes
WidgetMigrationWorkItemStore IMigrationWorkItemStore, IWorkItemTrackingEndpoint The interface represents a system where work items are stored. It provides methods for getting and updating work items.
WidgetMigrationWorkItem IMigrationWorkItem The interface represents a work item – a single unit for synchronization
WidgetWorkItemChangeListFactory IWorkItemUpdatePackageFactory The class represents a factory for creating change list objects
WidgetWorkItemChangeList IWorkItemUpdatePackage The interface represents a collection of changes applicable to a work item. Given two work items, the engine generates a pair of change lists that should bring them in sync. Later the change list gets translated into a collection of atomic updates which get submitted into the work item store, updating the target work item (or creating it if the item does not exist).
WidgetWorkItemUpdate IWorkItemUpdate The interface represents an atomic update to a work item. A change list gets translated into a set of atomic updates that will be applied to a single item from the target work item store.
WidgetMigrationFileAttachment IMigrationFileAttachment The interface describes a single work item’s file attachment.
WidgetProviderFactory IConfigFactory This type is loaded when the migration configuration is loaded. It is used to create an instance of the WidgetProvider type.
SyncActionContainer<T> This generic type defines an action that should be performed on its member; both action and member are specified in type’s constructor. Currently supported actions are Add and Remove.

Last edited Sep 14, 2007 at 6:40 PM by mmitrik, version 6


No comments yet.