/** * Creates IFeatureImports based on IPluginImports. Ensures no duplicates in preservedImports + * newImports * * @param preservedImports out for valid existing imports * @param newImports out for new imports * @param plugin * @throws CoreException */ private void addPluginImports(List preservedImports, List newImports, IPluginBase plugin) throws CoreException { IPluginImport[] pluginImports = plugin.getImports(); for (int i = 0; i < pluginImports.length; i++) { IPluginImport pluginImport = pluginImports[i]; if (pluginImport.isOptional()) { continue; } String id = pluginImport.getId(); String version = pluginImport.getVersion(); int match = pluginImport.getMatch(); addNewDependency(id, version, match, preservedImports, newImports); } }