Example #1
0
        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);
        }
Example #6
0
        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);
        }
Example #7
0
        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());
        }
Example #8
0
        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();
        }
Example #9
0
 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);
     }
 }
Example #10
0
        /// <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);
        }
Example #11
0
        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);
        }
Example #12
0
        [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))));
 }