private static int CalculateAdditionalPages(JiraIssues issues) { var remainingItems = issues.TotalAvailableOnJiraServer - pageSize; var timesToRepeat = remainingItems / pageSize; var remainder = remainingItems % pageSize; if (remainder > 0) { timesToRepeat++; } return(timesToRepeat); }
public Issue[] GetIssuesFromFilter(string issueFilterId) { var firstResponseContent = GetIssuesFromFilterByPage(issueFilterId); var jiraIssues = new JiraIssues(JObject.Parse(firstResponseContent)); if (jiraIssues.TotalAvailableOnJiraServer <= pageSize) { return(jiraIssues.Issues); } var timesToRepeat = CalculateAdditionalPages(jiraIssues); for (var i = 1; i <= timesToRepeat; i++) { var pageNumber = i * pageSize; var responseContent = GetIssuesFromFilterByPage(issueFilterId, pageNumber); jiraIssues.AddIssues(JObject.Parse(responseContent)); } return(jiraIssues.Issues); }