private static void MoveListItem(ListViewItem item, ListView target) { PrimaryWorkitem pwi = Global.Instance.Get.PrimaryWorkitemByID((AssetID)item.Tag); item.ListView.Items.Remove(item); AddBacklog(pwi, target); }
public void AddBuildRunsToWorkitem(PrimaryWorkitem workitem, IEnumerable <BuildRun> buildRuns) { var buildRunIds = new List <ValueId>(workitem.CompletedInBuildRuns); buildRunIds.AddRange(buildRuns.Select(ValueId.FromEntity)); workitem.CompletedInBuildRuns = buildRunIds.ToArray(); }
public void RemoveBuildRunsFromWorkitem(PrimaryWorkitem workitem, IEnumerable <BuildRun> buildRuns) { var remove = (buildRuns ?? new List <BuildRun>()).Select(ValueId.FromEntity).ToList(); var buildRunIds = workitem.CompletedInBuildRuns.Where(x => !remove.Any(y => y.Equals(x))).ToArray(); workitem.CompletedInBuildRuns = buildRunIds; }
public void MergeBuildRuns(PrimaryWorkitem workitem, IEnumerable <BuildRun> remove, IEnumerable <BuildRun> add) { var buildRunIds = new List <ValueId>(workitem.CompletedInBuildRuns); buildRunIds.RemoveAll(x => (remove ?? new List <BuildRun>()).Select(ValueId.FromEntity).Any(i => i.Equals(x))); buildRunIds.AddRange(add.Select(ValueId.FromEntity)); workitem.CompletedInBuildRuns = buildRunIds.ToArray(); }
internal Task CreateTask(string name, PrimaryWorkitem primaryWorkitem, IDictionary <string, object> attributes = null) { var task = instance.Create.Task(name, primaryWorkitem, attributes); RegisterForDisposal(task); return(task); }
private static Task CreateTask(V1Instance instance, string name, PrimaryWorkitem parent, Member owner) { var task = instance.Create.Task(name, parent); task.Owners.Add(owner); task.Save(); return(task); }
public IList <PrimaryWorkitem> GetPrimaryWorkitems(IFilter filter, SortBy sortBy = null) { var workitemType = services.Meta.GetAssetType(PrimaryWorkitemType); var terms = filter.GetFilter(workitemType); var allMembers = GetMembers(Filter.Empty()); return(queryBuilder.Query(PrimaryWorkitemType, terms) .Select(asset => PrimaryWorkitem.Create(asset, ListPropertyValues, queryBuilder.TypeResolver, ChooseOwners(asset, allMembers))) .ToList()); }
private void btnSaveStoryList_Click(object sender, EventArgs e) { foreach (ListView bucket in _buckets) { foreach (ListViewItem item in bucket.Items) { PrimaryWorkitem entity = Global.Instance.Get.PrimaryWorkitemByID((AssetID)item.Tag); entity.Estimate = (double)bucket.Tag; entity.Save(); MoveListItem(item, storyList); } } RefreshStoryList(); }
public void CloseWorkitem(PrimaryWorkitem workitem) { try { var closeOperation = workitem.Asset.AssetType.GetOperation(InactivateOperation); services.ExecuteOperation(closeOperation, workitem.Asset.Oid); } catch (V1Exception ex) { throw new VersionOneException(queryBuilder.Localize(ex.Message)); } catch (Exception ex) { throw new VersionOneException(ex.Message); } }
/// <summary> /// Stories and Defects inherit from PrimartWorkitems, /// This method indexes those fields /// </summary> /// <param name="primaryWorkItem">PrimaryWorkitem to index</param> /// <returns></returns> private Document IndexCommonFields(PrimaryWorkitem primaryWorkItem) { Document doc = CreateDocument(primaryWorkItem); StringBuilder ownerBuffer = new StringBuilder(); StringBuilder ownerIdBuffer = new StringBuilder(); foreach (Member o in primaryWorkItem.Owners) { ownerBuffer.Append(o.Name); ownerIdBuffer.Append(o.Username); } doc.Add(UnStored("Owner", ownerBuffer.ToString())); doc.Add(UnStored("OwnerId", ownerIdBuffer.ToString())); StringBuilder goalBuffer = new StringBuilder(); foreach (Goal goal in primaryWorkItem.Goals) { goalBuffer.Append(goal.Name); } doc.Add(UnStored("Goals", goalBuffer.ToString())); doc.Add(UnStored("Reference", primaryWorkItem.Reference)); if (null != primaryWorkItem.Status) { doc.Add(UnStored("Status", primaryWorkItem.Status.CurrentValue)); } if (null != primaryWorkItem.Priority) { doc.Add(UnStored("Priority", primaryWorkItem.Priority.CurrentValue)); } if (null != primaryWorkItem.Source) { doc.Add(UnStored("Source", primaryWorkItem.Source.CurrentValue)); } if (null != primaryWorkItem.Team) { doc.Add(UnStored("Team", primaryWorkItem.Team.Name)); } if (null != primaryWorkItem.Theme) { doc.Add(UnStored("Theme", primaryWorkItem.Theme.Name)); } return(doc); }
private static void AddBacklog(PrimaryWorkitem item, ListView list) { var values = new List <string> { item.Name, item.DisplayID, item.Project.Name, item.Iteration == null ? string.Empty : item.Iteration.Name, item.Team == null ? string.Empty : item.Team.Name, item.Theme == null ? string.Empty : item.Theme.Name, item.Estimate == null ? string.Empty : string.Format("{0:0.00}", item.Estimate.Value) }; var value = new ListViewItem(values.ToArray(), item.GetType().Name) { Tag = item.ID, Name = item.ID }; list.Items.Add(value); }
[Test] public void FilterListTypeText() { PrimaryWorkitem story = SandboxProject.CreateStory("Going to filter on Status"); story.Status.CurrentValue = "In Progress"; story.Save(); ResetInstance(); PrimaryWorkitemFilter filter = new PrimaryWorkitemFilter(); filter.Status.Add("In Progress"); IEnumerable <PrimaryWorkitem> result = Instance.Get.PrimaryWorkitems(filter); Assert.IsTrue(FindRelated(story, result)); foreach (PrimaryWorkitem workitem in result) { Assert.AreEqual("In Progress", workitem.Status.ToString()); } }
public ICollection <BuildRun> GetBuildRuns(PrimaryWorkitem primaryWorkitem, BuildProject buildProject) { return(processor.GetBuildRuns(GroupFilter.And( Filter.Equal("CompletesPrimaryWorkitems", primaryWorkitem.Id), Filter.Equal("BuildProject", buildProject.Id)))); }