public String getCdePlugins(){
JSONArray pluginsArray = new JSONArray();
PluginsAnalyzer pluginsAnalyzer = new PluginsAnalyzer(CdeEnvironment.getContentAccessFactory(), PentahoSystem.get(IPluginManager.class));
pluginsAnalyzer.refresh();
IPluginFilter pluginFilter = new IPluginFilter() {
public boolean include(Plugin plugin) {
boolean include = false;
if(plugin.hasSettingsXML()) {
include = (plugin.getXmlValue("/settings/cde-compatible", "settings.xml").equals("true")) ? true : false;
}
return include;
}
};
List<Plugin> cdePlugins = pluginsAnalyzer.getPlugins(pluginFilter);
// TODO: plugin is json serializable...
for(Plugin plugin : cdePlugins) {
try {
JSONObject pluginObject = new JSONObject();
pluginObject.put("title", plugin.getId());