/
Java API for Multi Cascade
Java API for Multi Cascade
To use Multicascade Java API, you need to use an object of com.idalko.jira.plugins.igrid.api.data.MultiCascadeDataManager
class. You can get it using the following code in your Groovy script:
Class dataManagerClass = pluginAccessor.getClassLoader().findClass("com.idalko.jira.plugins.igrid.api.data.MultiCascadeDataManager");
def tgeGridDataManager = ComponentAccessor.getOSGiComponentInstanceOfType(dataManagerClass);
MulticascadeDataManager has the following methods:
readMultiCascadeData method
@param customFieldId - the Multicascade's customfield ID
@param issueId - the ID of the relevant issue
@return a map that contains the multicascade's level name as the key and the respective selected value as the value
@throws MultiCascadeNotFoundException
@throws MultiCascadePermissionDeniedException
@throws MultiCascadeWrongCFTypeException
@throws MultiCascadeUserNotAuthorisedException
Map<String, String> readMultiCascadeData(Long customFieldId, Long issueId)
readMultiCascadeData example code
import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.issue.CustomFieldManager;
import com.atlassian.jira.issue.Issue;
import com.atlassian.jira.issue.IssueManager;
import com.atlassian.jira.issue.fields.CustomField;
import com.atlassian.plugin.PluginAccessor;
import org.apache.log4j.Logger
import org.apache.log4j.Level
Logger log = Logger.getLogger("com.idalko.scripts");
log.setLevel(Level.DEBUG);
// get an issue
IssueManager issueManager = ComponentAccessor.getOSGiComponentInstanceOfType(IssueManager.class);
Issue issue = issueManager.getIssueObject("TEST-1");
Long issueId = issue.getId()
// get Multicascade custom field
CustomFieldManager customFieldManager = ComponentAccessor.getOSGiComponentInstanceOfType(CustomFieldManager.class);
CustomField multicascadeCustomField = customFieldManager.getCustomFieldObjectsByName("Multic").get(0);
Long multicascadeCustomFieldId = multicascadeCustomField.getIdAsLong();
// read Multicascadedata
PluginAccessor pluginAccessor = ComponentAccessor.getPluginAccessor();
// ScriptRunner could show a validation error at this point showing that the class could not be resolved.
// Just ignore it. It resolves it at the run time.
Class dataManagerClass = pluginAccessor.getClassLoader().findClass("com.idalko.jira.plugins.igrid.api.data.MultiCascadeDataManager");
def multicascadeDataManager = ComponentAccessor.getOSGiComponentInstanceOfType(dataManagerClass);
StringBuilder result = new StringBuilder();
def resultMap = null;
try {
resultMap = multicascadeDataManager.readMultiCascadeData(multicascadeCustomFieldId, issueId);
result.append(resultMap.toString())
} catch (Exception e) {
log.debug("Multicascade ID=" + multicascadeCustomFieldId + " data cannot be retrieved: " + e.getMessage())
result.append("Multicascade ID=" + multicascadeCustomFieldId + " data cannot be retrieved: " + e.getMessage() + "\n");
}
return result.toString()
editMultiCascadeData method
editMultiCascadeData example code
resetMultiCascadeLevel method
resetMultiCascadeLevel example code
resetMultiCascadeLevels method
resetMultiCascadeLevels example code
resetAllMultiCascadeLevels method
resetAllMultiCascadeLevels example code
readMultiCascadeLevelOptions method
readMultiCascadeLevelOptions example code
readMultiCascadeLevels method
readMultiCascadeLevels example code
, multiple selections available,
Related content
REST API For Multi Cascade
REST API For Multi Cascade
More like this
Release Notes - Version 1.25
Release Notes - Version 1.25
More like this
Java APIs
More like this
Multi Cascade basic config
Multi Cascade basic config
More like this
Read Grid Data
Read Grid Data
More like this
Read Grid data for All Issues
Read Grid data for All Issues
More like this