In an Insight groovy script post function you can access Insight-objects and their attributes with this kind of syntax;
import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.issue.fields.CustomField;
Class objectFacadeClass = ComponentAccessor.getPluginAccessor().getClassLoader().findClass("com.riadalabs.jira.plugins.insight.channel.external.api.facade.ObjectFacade")
def objectFacade = ComponentAccessor.getOSGiComponentInstanceOfType(objectFacadeClass)
def cfManager = ComponentAccessor.getCustomFieldManager()
CustomField myCF = ComponentAccessor.getCustomFieldManager().getCustomFieldObject(10235) // id of custom field
def myValue = myCF.getValue(issue)
def myObjectBean = myValue[0]
def myAttrValue = objectFacade.loadObjectAttributeBean(myObjectBean.getId(), 517).getObjectAttributeValueBeans()[0]; //attribute id
def myString = myAttrValue.getValue()
I can't this kind of code to work in a Script runner event listener.
My idea is to update an issue in a script listener using attribute values from Insight Custom fields.
Any ideas how to do this?
Hi Magnus,
What is it that is not working, what kind of exceptions do you get?
Looking at the code, one possible nullpointer is the issue variable. I know that in Insight, this variable is preloaded with the current issue, I guess that is the same for Script runner, but not sure.
Best Regards
Alexander
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.