Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

How to Get Details from Insight Object with Groovy

Tyler Reid February 5, 2018

I have a groovy script that parses some of the information in the an Issue and passes it to a webhook via an http request.  I do this rather than using the builtin webhook functionality as the webhook provides you no control over what the object looks like.  However, you can use Groovy to process the format of your request

 

Regardless, the issue I have run into is that there is no documentation on how to access a detail value of an Insight Object.  For example, I have an insight object and it has a field "server" which I would like to strip and pass to the http request.  I have found some links but they only show how to set a field. 

 

Please provide some help if you.  Any help is appreciated.  Thanks!

 

Tyler

1 answer

1 accepted

Suggest an answer

Log in or Sign up to answer
3 votes
Answer accepted
Tyler Reid February 5, 2018

Got it

def getInsightFieldValue(object_id, attribute_id) {

/* Get Insight Object Facade from plugin accessor */
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(object_id) // id of custom field
def objectBean = myCF.getValue(issue)[0]
//return objectBean
return objectFacade.loadObjectAttributeBean(objectBean.getId(), attribute_id).getObjectAttributeValueBeans()[0].getValue() //attribute id

}
TAGS
AUG Leaders

Atlassian Community Events