public virtual void RegisterSupportedLinkTypes() { LinkType linkType = new WorkItemChangeListLinkType(); m_supportedLinkTypes.Add(linkType.ReferenceName, linkType); ExtractLinkChangeActionsCallback += ((ILinkHandler)linkType).ExtractLinkChangeActions; linkType = new WorkItemHyperlinkLinkType(); m_supportedLinkTypes.Add(linkType.ReferenceName, linkType); ExtractLinkChangeActionsCallback += ((ILinkHandler)linkType).ExtractLinkChangeActions; linkType = new WorkItemLatestFileLinkType(); m_supportedLinkTypes.Add(linkType.ReferenceName, linkType); ExtractLinkChangeActionsCallback += ((ILinkHandler)linkType).ExtractLinkChangeActions; linkType = new WorkItemRelatedLinkType(); m_supportedLinkTypes.Add(linkType.ReferenceName, linkType); ExtractLinkChangeActionsCallback += ((ILinkHandler)linkType).ExtractLinkChangeActions; linkType = new WorkItemRevisionFileLinkType(); m_supportedLinkTypes.Add(linkType.ReferenceName, linkType); ExtractLinkChangeActionsCallback += ((ILinkHandler)linkType).ExtractLinkChangeActions; foreach (RegisteredLinkType registeredLinkType in m_migrationSource.WorkItemStore.WorkItemStore.RegisteredLinkTypes) { Debug.Assert(!string.IsNullOrEmpty(registeredLinkType.Name)); if (!TfsDefaultLinkType(registeredLinkType)) { linkType = new WorkItemExternalLinkType(registeredLinkType.Name); m_supportedLinkTypes.Add(linkType.ReferenceName, linkType); ExtractLinkChangeActionsCallback += ((ILinkHandler)linkType).ExtractLinkChangeActions; } } }
private int?ExtractFileLinkInfoExtId(WorkItem workItem, string uri) { ReadOnlyCollection <ExternalLink> myLinks = ExtractMyLinks(workItem); foreach (ExternalLink link in myLinks) { if (TFStringComparer.ArtiFactUrl.Equals(link.LinkedArtifactUri, uri)) { return(WorkItemExternalLinkType.ReflectFileLinkInfoExtId(link)); } } return(null); }
private int?ExtractFileLinkInfoExtId(WorkItem workItem, string uri) { ReadOnlyCollection <Hyperlink> myLinks = ExtractMyLinks(workItem); foreach (Hyperlink link in myLinks) { if (TFStringComparer.ArtiFactUrl.Equals(TfsHyperlinkHandler.UriFromId(link.Location), uri)) { return(WorkItemExternalLinkType.ReflectFileLinkInfoExtId(link)); } } return(null); }