in src/main/groovy/com/epam/esp/jira/issue/IssueIndexer.groovy [99:148]
void run() {
logMessage += "${issue.key} : "
counter.processIssue(issue.key)
if (force || !elasticSearchHelper.isJiraIssueInSync(indexName, issue.key, issue.updateDate)) {
try {
def item = jiraHelper.getJsonFromUri(issue.self.toString() + EXPAND_PARAMS);
if (isIssueDetailStashAdding && issue.id != null) {
try {
def detailStash = jiraHelper.getJsonFromUri("${jiraHelper.jiraContext.url}/${URL_DEV_STATUS}?issueId=${issue.id}&applicationType=stash&dataType=repository")
item = item.substring(0, item.length()-1) + ', \"detailStash\":' + detailStash + '}'
} catch (Exception e) {
logMessage += "$e.message $issue.self unable to index issue detail stash"
}
}
updateIssue(item)
counter.updateIssue()
} catch (Exception e) {
logger.error(e.getMessage(), e)
logMessage += "$e.message $issue.self unable to index issue"
}
} else {
counter.skipIssue()
logMessage += "$issue.key is up to date, skipping...\n"
}
def subIssues = jiraHelper.findIssuesByJql(String.format(SUB_ISSUES_SEARCH_QUERY, issue.key), null, null, fields)
def iterator = subIssues.issues.iterator()
while (iterator.hasNext()) {
Issue subtask = iterator.next()
counter.processSubIssue(subtask.key)
logMessage += " |- ${subtask.key} : "
if (force || !elasticSearchHelper.isJiraIssueInSync(indexName, subtask.key, subtask.updateDate)) {
try {
def item = jiraHelper.getJsonFromUri(subtask.self.toString() + EXPAND_PARAMS);
updateIssue(item)
counter.updateSubIssue()
} catch (Exception e) {
logger.error(e.getMessage(), e)
logMessage += " |- ${subtask.self.toString()} unable to get JSON for issue"
}
} else {
counter.skipSubIssue()
logMessage += " |- $subtask.key is up to date, skipping...\n"
}
}
logMessage += "\n"
logger.info(logMessage)
logger.info("\n" + counter.getUpdatedReport())
}