Мой сценарий: Один шаг в моем рабочем процессе jira должен иметь возможность отменять планирование задачи, т. Е. Установить для версии исправления значение «Нет».
Я заметил, что не смогобновить исправить версию в функции публикации рабочего процесса - я точно не знаю, почему, но в любом случае Я реализовал плагин jira, чтобы помочь мне решить мою проблему , но я знаю, что яидти против структуры jira (даже java хорошие практики кодирования :)).Я не уверен, что моя реализация может вызвать проблемы, но на самом деле она работает в моем экземпляре jira 4.1.x.
Как я реализовал плагин для обновления версии исправления в функции post, 2очень похожие способы:
public class BrandsclubPostFunctionUnschedule extends AbstractJiraFunctionProvider {
// Here I create an empty Collection to be the new value of FixVersion (empty because I need no version in Fix Version)
public void execute(Map transientVars, Map args, PropertySet ps) throws WorkflowException {
MutableIssue issue = this.getIssue(transientVars);
Collection<Version> newFixVersion = new ArrayList<Version>();
issue.setFixVersions(newFixVersion);
issue.store();
}
}
public class BrandsclubPostFunctionUnschedule extends AbstractJiraFunctionProvider {
// here I clear the Collection I got from "old" Fix Version and I have to set it again to make it work.
public void execute(Map transientVars, Map args, PropertySet ps) throws WorkflowException {
MutableIssue issue = this.getIssue(transientVars);
Collection fixVersions = issue.getFixVersions();
fixVersions.clear();
issue.setFixVersions(fixVersions);
issue.store();
}
}
Я предполагаю, что реальное решение должно использовать классы, такие как: ChangeItemBean, ModifiedValue, IssueChangeHolder - взяв в качестве примера методы updateValue из CustomFieldImpl (из исходного кода jira, проект: jira, пакет: com.atlassian.jira.issue.fields).
Моя цель опубликовать это здесь:
- Кто-нибудь знает, как реализоватьплагин jira, содержащий функцию поста для корректного изменения версии исправления?