У меня есть объект в Groovy, и в этом объекте есть либо карта.Я пытаюсь получить «значение», а не ключ от этой карты объектов.Как мне поступить примерно так?
Это вывод, который я получаю в консоли: первый - это объект, а второй - выход для свойства fromValues ...
<com.atlassian.jira.issue.changehistory.ChangeHistoryItem@b791639b id=10130 changeGroupId=10113 userKey=Charley field=status projectId=10000 issueId=10217 issueKey=ICB-128 created=2019-03-12 14:19:22.0 nextChangeCreated=292278994-08-17 02:12:55.807 fromValues=[10003:To Do] toValues=[3:In Progress]>
[runner.ScriptRunnerImpl]: 10003
Ниже приведен мой код, с которым я до сих пор работаю, пытаясь получить эту информацию: (Просто чтобы вы поняли контекст ... Я вытаскиваю проблему из программного обеспечения Jira и извлекаю историю этой конкретной проблемы.)
IssueManager issueManager = ComponentAccessor.getIssueManager();
def issue = issueManager.getIssueObject("ICB-128");
def changeHistoryManager = ComponentAccessor.getChangeHistoryManager()
def changeItems = changeHistoryManager.getAllChangeItems(issue)
//def changeItems = changeHistoryManager.getChangeHistoriesSince(issue, since)
changeItems.eachWithIndex { item, index ->
//log.warn(changeItems.dump())
def last_change = changeItems[index]
log.warn(last_change.dump())
def text = "LAST MODIFIED FIELD:"+ last_change["field"] + "; FROM VALUE:"+ last_change["fromValue"] + "; TO VALUE:"+ last_change["toValue"]
if (last_change["fromValue"])
{
log.warn(last_change["fromValue"])
}
}
Редактировать 1: я исправил то, что предложил @vahid, и теперь оба значения возвращены так, как я хочу.Я пробовал многочисленные способы вызова и извлечения конкретно значения для этой карты, и ничего не получилось (.get или .value или даже .key) ... Есть предложения?
Редактировать 2: Получается это извлеченное полетеперь рассматривается как тип "hashmap"