private IEnumerable <string> GetFieldsNames(StoryIncludeFields fields) { if (fields.HasFlag(StoryIncludeFields.AfterId)) { yield return("after_id"); } if (fields.HasFlag(StoryIncludeFields.BeforeId)) { yield return("before_id"); } if (fields.HasFlag(StoryIncludeFields.Comments)) { yield return("comments(:default,person,file_attachments,google_attachments)"); } else if (fields.HasFlag(StoryIncludeFields.CommentIds)) { yield return("comment_ids"); } if (fields.HasFlag(StoryIncludeFields.Followers)) { yield return("followers"); } else if (fields.HasFlag(StoryIncludeFields.FollowerIds)) { yield return("follower_ids"); } if (fields.HasFlag(StoryIncludeFields.Tasks)) { yield return("tasks"); } else if (fields.HasFlag(StoryIncludeFields.TaskIds)) { yield return("task_ids"); } if (fields.HasFlag(StoryIncludeFields.Owners)) { yield return("owners"); } else if (fields.HasFlag(StoryIncludeFields.OwnerIds)) { yield return("owner_ids"); } if (fields.HasFlag(StoryIncludeFields.RequestedBy)) { yield return("requested_by"); } }
public List<Story> GetAllStoriesMatchingFilter(int projectId, string filter, StoryIncludeFields fields) { var request = BuildGetRequest(); request.Resource = string.Format(StoryFilterEndpoint, projectId, filter); string fieldsQuery = ":default"; var fieldsToInclude = this.GetFieldsNames(fields); if (fieldsToInclude.Any()) fieldsQuery += "," + string.Join(",", fieldsToInclude); request.AddQueryParameter("fields", fieldsQuery); return this.GetStories(request); }
public Story GetStory(int projectId, int storyId, StoryIncludeFields fields) { var request = BuildGetRequest(string.Format(SingleStoryEndpoint, projectId, storyId)); string fieldsQuery = ":default"; var fieldsToInclude = this.GetFieldsNames(fields); if (fieldsToInclude.Any()) { fieldsQuery += "," + string.Join(",", fieldsToInclude); } request.AddQueryParameter("fields", fieldsQuery); return(RestClient.ExecuteRequestWithChecks <Story>(request)); }
public List <Story> GetAllStories(int projectId, StoryIncludeFields fields) { var request = BuildGetRequest(); request.Resource = string.Format(StoriesEndpoint, projectId); string fieldsQuery = ":default"; var fieldsToInclude = this.GetFieldsNames(fields); if (fieldsToInclude.Any()) { fieldsQuery += "," + string.Join(",", fieldsToInclude); } request.AddQueryParameter("fields", fieldsQuery); return(this.GetStories(request)); }
public List <Story> GetAllStoriesMatchingFilter(int projectId, FilteringCriteria filter, StoryIncludeFields fields) { return(this.GetAllStoriesMatchingFilter(projectId, filter.ToString(), fields)); }
private IEnumerable<string> GetFieldsNames(StoryIncludeFields fields) { if (fields.HasFlag(StoryIncludeFields.AfterId)) yield return "after_id"; if (fields.HasFlag(StoryIncludeFields.BeforeId)) yield return "before_id"; if (fields.HasFlag(StoryIncludeFields.Comments)) { yield return "comments(:default,person,file_attachments,google_attachments)"; } else if (fields.HasFlag(StoryIncludeFields.CommentIds)) yield return "comment_ids"; if (fields.HasFlag(StoryIncludeFields.Followers)) yield return "followers"; else if (fields.HasFlag(StoryIncludeFields.FollowerIds)) yield return "follower_ids"; if (fields.HasFlag(StoryIncludeFields.Tasks)) yield return "tasks"; else if (fields.HasFlag(StoryIncludeFields.TaskIds)) yield return "task_ids"; if (fields.HasFlag(StoryIncludeFields.Owners)) yield return "owners"; else if (fields.HasFlag(StoryIncludeFields.OwnerIds)) yield return "owner_ids"; if (fields.HasFlag(StoryIncludeFields.RequestedBy)) yield return "requested_by"; }
public List<Iteration> GetAllIterations(int projectId, StoryIncludeFields fields) { var request = BuildGetRequest(); request.Resource = string.Format(IterationEndPoint, projectId); string fieldsQuery = ":default"; var fieldsToInclude = this.GetFieldsNames(fields); if (fieldsToInclude.Any()) fieldsQuery += "," + string.Join(",", fieldsToInclude); request.AddQueryParameter("fields", ":default,stories(" + fieldsQuery + ")"); return this.GetIterations(request); }
public Story GetStory(int projectId, int storyId, StoryIncludeFields fields) { var request = BuildGetRequest(string.Format(SingleStoryEndpoint, projectId, storyId)); string fieldsQuery = ":default"; var fieldsToInclude = this.GetFieldsNames(fields); if (fieldsToInclude.Any()) fieldsQuery += "," + string.Join(",", fieldsToInclude); request.AddQueryParameter("fields", fieldsQuery); return RestClient.ExecuteRequestWithChecks<Story>(request); }
public List<Story> GetAllStoriesMatchingFilter(int projectId, FilteringCriteria filter, StoryIncludeFields fields) { return this.GetAllStoriesMatchingFilter(projectId, filter.ToString(), fields); }