public static MorphAction Deserialize(XmlElement element, DeserializationContext context) { var cdata = element.ChildNodes.OfType<XmlCDataSection>().Single(); var doc = new XmlDocument(); doc.LoadXml(cdata.Value); var typeDef = new WorkItemTypeDefinition(doc); return new ImportWorkItemTypeDefinitionMorphAction(typeDef); }
public AddedWorkItemTypeDefinitionDifference(WorkItemTypeDefinition witd) { _witd = witd; }
public override void Execute(ExecutionContext context) { if (_subActions.Count == 0) { return; } var project = context.GetWorkItemProject(); project.Store.RefreshCache(true); var witdElement = project.WorkItemTypes[_workItemTypeName].Export(false).DocumentElement; foreach (var action in _subActions) { action.Execute(witdElement); } var workItemTypeDefinition = new WorkItemTypeDefinition(witdElement, true); // TODO perform actions on WorkItemTypeDefinition instead of witdElement directly var importAction = new ImportWorkItemTypeDefinitionMorphAction(workItemTypeDefinition); importAction.Execute(context); }
public ImportWorkItemTypeDefinitionMorphAction(WorkItemTypeDefinition typeDefinition) { _typeDefinition = typeDefinition; }