public override TCObject Execute(TCObject item, TCAddOnTaskContext taskContext) { var config = ((OwnedItem)item).GetJiraConfig(); string[] props = new string[] { }; if (item.GetType() == typeof(RequirementSet)) { props = ToscaHelpers.GetPropertyNames("requirement"); } if (item.GetType() == typeof(TCFolder)) { var folder = item as TCFolder; props = ToscaHelpers.GetPropertyNames(folder.PossibleContent); } var properties = props; var configConstructor = new ConfigConstructor { currentConfig = config, availableAttributes = properties }; ParameterizedThreadStart pts = new ParameterizedThreadStart(ThreadStart); Thread t = new Thread(ThreadStart); t.SetApartmentState(ApartmentState.STA); t.Start(configConstructor); t.Join(); ((OwnedItem)item).SaveConfig(config); return(item); }
public override TCObject Execute(TCObject objectToExecuteOn, TCAddOnTaskContext taskContext) { // Create custom properties on Requirements and RequirementSets. // This is to be used to search when updating or knowing which ones have been created by this addon. ToscaHelpers.CreateCustomProperties("Requirement", Global.JiraTicket); ToscaHelpers.CreateCustomProperties("Requirement", Global.JiraLastSyncedAttributeName); ToscaHelpers.CreateCustomProperties("Requirement", Global.JiraSyncStateAttributeName); ToscaHelpers.CreateIssuesProperties("Issue", Global.JiraTicket); return(null); }