我的場景是:我的jira工作流程中的一步應該能夠取消調度任務,即將修復版本設置爲「無」。JIRA - Jira post功能 - 如何更新「修復版本」字段?
我發現我不能夠在工作流功能後更新修復版本 - 我完全不知道是什麼原因,但無論如何我沒有實現JIRA插件來幫助我解決我的問題,但我知道我正在反對jira結構(甚至java良好的編碼習慣:))。我不確定我的實現是否會導致問題,但實際上它是在我的jira實例4.1.x中工作的。
如何,我實現了一個插件,以更新後的功能,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 - 以CustomFieldImpl(來自jira源代碼,項目:jira,包:com.atlassian.jira.issue.fields)的updateValue方法爲例。
我在這裏發佈此點是:
- 有誰知道如何實現包含交函數改變正常修復版本一個JIRA插件?
我沒有看到在該教程,顯示什麼如何修改問題對象。 – mdoar 2015-04-30 23:31:21