Hi,
This is a weird one. I am trying to make a scripted field that tracks the last commenter of an issue. I actually have something that works pretty well.
However, I want to modify it to be able to omit a user (weird use case, I know).
Example: let's say there are 4 comments on an issue, from user A, and user B. I want to look at all comments in an issue, but *only* report the last comment from user A.
This is what I have so far(see below). It doesn't seem to work. Any tips appreciated!
import com.atlassian.jira.component.ComponentAccessor def commentManager = ComponentAccessor.getCommentManager() def comments = commentManager.getComments(issue) if (comments) { comments.each { if (it.authorUser.toString().contains ('userB')) { comments.remove(it) } } } comments.last().authorUser
Not exactly sure what I doing wrong here. I am new to groovy, so perhaps I am doing some silly syntactical mistake? I get errors like so in the logs:
javax.script.ScriptException: java.util.ConcurrentModificationException A stacktrace has been logged. 2013-10-26 14:39:17,594 http-bio-8080-exec-23 ERROR bryank 879x1040x1 1ba2xk 10.26.101.27 /rest/gadget/1.0/issueTable/jql [onresolve.jira.groovy.GroovyCustomField] javax.script.ScriptException: java.util.NoSuchElementException: Cannot access last() element from an empty List
Something like:
import com.atlassian.jira.component.ComponentAccessor def commentManager = ComponentAccessor.getCommentManager() commentManager.getComments(issue)*.author.reverse().findResult {it.author != "baduser"}
.reverse() might not be necessary... not sure what order they are returned in by default.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Okay,
I got it to work (at least so far, by doing this):
import com.atlassian.jira.component.ComponentAccessor def commentManager = ComponentAccessor.getCommentManager() def comments = commentManager.getComments(issue) comments.removeAll { it.authorUser.toString().contains ('userB') } comments.last().authorUser
If there are any better approaches, let me know!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.