Tagged with ScriptRunner as I know that plugin has made this available as 'sourceIssue' - wondering how to get that information when using the underlying api.
I've tried accessing fields via issue, and both the issue and originalissueobject in transientVars - but no luck for either - either the object reference is null or the particular field returns no value - or I get the exception about issue having not been saved yet.
Hoping Jamie Echlin can provide details on where that field in ScriptRunner is retrieving this object from or any other suggestions.
Hi Nathan,
If i understand the question you are asking how to access the issue in a custom jira workflow extension.
If that's the case:
when you implement the interface WorkflowPluginValidatorFactory you need to provide a concrete implementation of the validate method, this method needs an parameter of type Map called transientVars, from this map you get the issue being validated.
Here's the example:
This is the code sample, i cannot add it to the previous answer:
public void validate(Map transientVars, Map args, PropertySet ps) throws InvalidInputException
{
Issue issue = (Issue) transientVars.get("issue");
if(null == issue.getFixVersions() || issue.getFixVersions().size() == 0)
{
throw new InvalidInputException("Issue must have a fix version");
}
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Unfortunately, now have hit up against a case where the above does NOT work. Seems like getDescription() doesn't work in the clone case, unlike getReporter and getAssignee
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
For now, I'm modifying my validation to just ignore cloned issues, but that's not really a solution.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Nope - I got that part... That's easy (have lots of other validation rules implemented).
I'm specifically looking for how to get at the original/source issue during a validation when an issue _clone_ is taking place.
I actually don't really care about the original issue so much as being able to access the 'reporter' information from it. Accessing reporter with issue.getString("reporter") works fine in the case of creating a new issue or an update to an existing issue - but when doing it on a cloned issue I get an exception that the issue hasn't been saved yet.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hmm... just noticed that at least for reporter and assignee there are built in accessors - going to try using them to see if symptom changes.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Nathan, sorry about the misunderstanding, how are you clone the issue? are you using issueFactory?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Ok. It appears for this particular case, using the accessors for these two particular fields appears to work, so this whole question may be moot.
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.