public ICollection <PrimaryWorkitem> GetActivePrimaryWorkitems() { return(processor.GetPrimaryWorkitems( GroupFilter.And( Filter.Equal("AssetState", AssetState.Active), Filter.Equal("Timebox.State.Code", "ACTV") ), SortBy.Ascending("Order")).Cast <PrimaryWorkitem>().ToList()); }
public ICollection <Workitem> GetActiveSecondaryWorkitems() { return(processor.GetWorkitems( VersionOneProcessor.WorkitemType, GroupFilter.And( Filter.OfTypes(VersionOneProcessor.TaskType, VersionOneProcessor.TestType), Filter.Equal("Parent.AssetType", VersionOneProcessor.PrimaryWorkitemType), Filter.Equal("Parent.AssetState", AssetState.Active), Filter.Equal("AssetState", AssetState.Active), Filter.Equal("Parent.Timebox.State.Code", "ACTV")))); }
// TODO make this Story-agnostic. In case of criteria based ex. on Story-only custom fields current filter approach won't let an easy solution. public IList <FeatureGroup> GetFeatureGroups(IFilter filter, IFilter childrenFilter) { var allMembers = GetMembers(Filter.Empty()); return(queryBuilder.Query(FeatureGroupType, filter) .Select(asset => new FeatureGroup( asset, ListPropertyValues, GetWorkitems(StoryType, GroupFilter.And(Filter.Equal(Entity.ParentAndUpProperty, asset.Oid.Momentless.Token), childrenFilter)), ChooseOwners(asset, allMembers), queryBuilder.TypeResolver)) .ToList()); }
private IEnumerable <WorkitemEntity> GetClosedWorkitems(DateTime closedSince, string baseWorkitemType, string sourceName) { var filters = new List <IFilter> { Filter.Closed(true), Filter.OfTypes(VersionOneProcessor.StoryType, VersionOneProcessor.DefectType), Filter.Equal(Entity.SourceNameProperty, sourceName), }; if (closedSince != DateTime.MinValue) { filters.Add(Filter.Greater(ServerConnector.Entities.Workitem.ChangeDateUtcProperty, closedSince)); } var filter = GroupFilter.And(filters.ToArray()); return(v1Processor.GetWorkitems(baseWorkitemType, filter)); }
private Asset GetProjectByName(string projectName) { var scopeType = services.Meta.GetAssetType(Workitem.ScopeProperty); var scopeName = scopeType.GetAttributeDefinition(Entity.NameProperty); var filter = GroupFilter.And( Filter.Equal(Entity.NameProperty, projectName), Filter.Closed(false) ); var query = new Query(scopeType); query.Selection.Add(scopeName); var result = queryBuilder.Query(Workitem.ScopeProperty, filter); return result.FirstOrDefault(); }
public IList <ServerConnector.Entities.Workitem> GetDuplicates(Workitem item) { var emptyDuplicateList = new List <ServerConnector.Entities.Workitem>(); if (string.IsNullOrEmpty(item.ExternalSystemName) || string.IsNullOrEmpty(configuration.ExternalIdFieldName)) { return(emptyDuplicateList); } try { var filter = GroupFilter.And( Filter.Equal(Entity.SourceNameProperty, item.ExternalSystemName), Filter.Equal(configuration.ExternalIdFieldName, item.ExternalId), Filter.OfTypes(VersionOneProcessor.PrimaryWorkitemType) ); var duplicates = v1Processor.GetWorkitems(item.Type, filter); return(duplicates); } catch (VersionOneException ex) { logger.Log(LogMessage.SeverityType.Error, string.Format("Can't get duplicates for {0} {1}. Cause:\n{2}", item.Number, item.Type, ex.Message)); } return(emptyDuplicateList); }
public ICollection <BuildRun> GetBuildRuns(PrimaryWorkitem primaryWorkitem, BuildProject buildProject) { return(processor.GetBuildRuns(GroupFilter.And( Filter.Equal("CompletesPrimaryWorkitems", primaryWorkitem.Id), Filter.Equal("BuildProject", buildProject.Id)))); }
private List <Asset> GetAssetLinks(Oid assetOid, IFilter filter) { var fullFilter = GroupFilter.And(filter, Filter.Equal(AssetAttribute, assetOid.Momentless)); return(queryBuilder.Query(LinkType, fullFilter)); }