我正在为Jira编写插件,我需要添加自定义计算列来发布导航器。该栏目应显示最后发表的评论。但问题在于此列中的导航器值类似于“ClassName @ 123456”,而不是注释的正文。我该怎么做才能将评论的正文归还到这个专栏?
到目前为止代码:
public class LastCommentField extends CalculatedCFType {
private CommentManager commentManager = null;
public LastCommentField(CommentManager commentManager) {
this.commentManager=commentManager;
}
public Object getValueFromIssue(CustomField field, Issue issue) {
Comment lastComment=null;
List<Comment> comments = commentManager.getComments(issue);
if(comments != null && !comments.isEmpty()) {
lastComment = (Comment)comments.get(comments.size() - 1);
}
return lastComment;
}
public String getStringFromSingularObject (Object object) {
return object.toString();
}
public Object getSingularObjectFromString(String value) {
return value;
}
}
答案 0 :(得分:2)
此功能已存在于至少两个插件中,例如https://marketplace.atlassian.com/plugins/net.customware.jira.utils.customware-jira-utilities
但是在上面的代码中,正在使用的单个对象是http://docs.atlassian.com/jira/4.4/com/atlassian/jira/issue/comments/Comment.html中记录的Comment对象。 但你可能只想要一个String,所以试试
返回lastComment.getBody();
答案 1 :(得分:0)
不幸的是我从编码方面不了解JIRA,但是从Java方面来说,这听起来很像地下的对象没有ToString()
覆盖。您所看到的是类的名称,后跟内存中的地址。
如果您能向我们展示专栏背后的代码,我可能会对它有所了解。