The Atlassian Community Forums are currently in read-only mode. We will be relaunching on a new platform on September 22 (read more here). We apologize for the extended downtime. For concerns or questions, please email communitymanagers@atlassian.com. See you on the other side, on the new Atlassian Community Forums! :)

×

Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Get comments from Insight object using SIL

Georg
May 2, 2023

Hello everyone,
I would like to extract comments from the Insight object using SIL script.
Unfortunately, there is no way to access comments in the Insight-connector routines (https://anovaapps.atlassian.net/wiki/spaces/PSJ/pages/1153138814/SIL+Insight+Routines).
I had an idea to create an object attribute that would be a list of comments, but this is also not possible.
How do I do this?

1 answer

1 accepted

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

1 vote
Answer accepted
PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Champions.
May 2, 2023

You might need to extend your SIL using the SIL Groovy Connector.

Then use the native JAVA API to fetch the comments.

Here is an example of how the SIL Groovy Connector can call a groovy script.

https://appfire.atlassian.net/wiki/spaces/PSJ/pages/15488333/Passing+Values+Between+SIL+and+Groovy

PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Champions.
May 2, 2023

Here is a sample groovy script to return all the comments from an object given its key:

 

import com.atlassian.jira.component.ComponentAccessor

def objectKey = "{{objectKey}}"
def classLoader = ComponentAccessor.pluginAccessor.classLoader
def ObjectFacadeClass = classLoader.findClass('com.riadalabs.jira.plugins.insight.channel.external.api.facade.ObjectFacade')
def objectFacade = ComponentAccessor.getOSGiComponentInstanceOfType(ObjectFacadeClass)
def object = objectFacade.loadObjectBean(objectKey)
def comments = objectFacade.findCommentBeans(object.id)
comments*.comment

Use the method mentioned above to replace {{objectKey}} with the actual key of the object.

I'm more of a groovy/scriptrunner person myself. So I'm not familiar with SIL and how you might be able to grab additional content from each comment or how you might pass a more complex structure from the groovy script to the SIL engine.

Like • Matt Donnelly likes this
Georg
May 3, 2023

I love you man, it works!!
Can you provide useful documentations on your opinion to understand code above

PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Champions.
May 3, 2023

The starting point for using groovy with Insight is the 

Assets app development > Groovy scripting page

And how each Insight/Asset classes might be used can be found in the JavaDocs

For example, here is the JavaDoc for ObjectFacade and the Javadoc for ComentBean.

TAGS
AUG Leaders

Atlassian Community Events