public WorkitemCreationResult CreateWorkitem(Workitem item, ServerConnector.Entities.Workitem closedDuplicate) { item.Description += string.Format("\n\n This is a copy of '{0}' {1}", closedDuplicate.Number, closedDuplicate.TypeName); var workitem = CreateNewWorkitem(item); var url = v1Processor.GetSummaryLink(closedDuplicate); var link = new Link(url, "Previous item"); v1Processor.AddLinkToEntity(workitem, link); return(GetWorkitemCreationResult(item, workitem)); }
private void AddLinkToWorkitemToOriginalIssue(Workitem item, ServerConnector.Entities.Workitem newWorkitem) { if (item.ExternalLink == null) { return; } var url = item.ExternalLink.Url; var urlTitle = item.ExternalLink.Title; var title = !string.IsNullOrEmpty(urlTitle) ? urlTitle : url; var link = new Link(url, title, true); v1Processor.AddLinkToEntity(newWorkitem, link); }
private WorkitemCreationResult GetWorkitemCreationResult(Workitem item, ServerConnector.Entities.Workitem newWorkitem) { if (newWorkitem != null) { var result = ConvertToWorkitemCreationResult(item, newWorkitem); result.Messages.Add(string.Format("Created item \"{0}\" ({1}) in Project \"{2}\" URL: {3}", item.Title, result.Source.Number, item.Project, result.Permalink)); return(result); } return(null); }
private WorkitemCreationResult ConvertToWorkitemCreationResult(Workitem item, ServerConnector.Entities.Workitem newWorkitem) { var result = new WorkitemCreationResult(item) { Source = { Number = newWorkitem.Number, ExternalId = item.ExternalId, Description = newWorkitem.Description, ExternalSystemName = item.ExternalSystemName, ProjectId = newWorkitem.Project.Key, Project = newWorkitem.Project.Value, Title = newWorkitem.Name, Priority = newWorkitem.PriorityToken, }, WorkitemId = newWorkitem.Id, Permalink = v1Processor.GetWorkitemLink(newWorkitem), }; return(result); }