/** * * @param config * @param features true for features false for plugins * @return URLs for features or plugins on the site */ private static URL[] getExtensionPluginURLs(IPlatformConfiguration config, boolean features) { ArrayList<URL> extensionPlugins = new ArrayList<>(); IPlatformConfiguration.ISiteEntry[] sites = config.getConfiguredSites(); for (int i = 0; i < sites.length; i++) { URL url = sites[i].getURL(); if ("file".equalsIgnoreCase(url.getProtocol())) { //$NON-NLS-1$ String[] entries; if (features) entries = sites[i].getFeatures(); else entries = sites[i].getPlugins(); for (int j = 0; j < entries.length; j++) { try { extensionPlugins.add(new File(url.getFile(), entries[j]).toURL()); } catch (MalformedURLException e) { } } } } return extensionPlugins.toArray(new URL[extensionPlugins.size()]); }
/** * * @param config * @param features true for features false for plugins * @return URLs for features or plugins on the site */ private static URL[] getExtensionPluginURLs(IPlatformConfiguration config, boolean features) { ArrayList extensionPlugins = new ArrayList(); IPlatformConfiguration.ISiteEntry[] sites = config.getConfiguredSites(); for (int i = 0; i < sites.length; i++) { URL url = sites[i].getURL(); if ("file".equalsIgnoreCase(url.getProtocol())) { //$NON-NLS-1$ String[] entries; if(features) entries = sites[i].getFeatures(); else entries = sites[i].getPlugins(); for (int j = 0; j < entries.length; j++) { try { extensionPlugins.add(new File(url.getFile(), entries[j]).toURL()); } catch (MalformedURLException e) { } } } } return (URL[]) extensionPlugins.toArray(new URL[extensionPlugins.size()]); }
@Override public synchronized void unconfigureSite(ISiteEntry entry) { if (entry == null) return; URL url = entry.getURL(); if (url == null) return; String key = url.toExternalForm(); if (entry instanceof SiteEntry) config.removeSiteEntry(key); }
public PluginEntry[] getPlugins() { ArrayList<PluginEntry> allPlugins = new ArrayList<>(); Utils.debug("computed plug-ins:"); //$NON-NLS-1$ ISiteEntry[] sites = getConfiguredSites(); for (int i = 0; i < sites.length; i++) { if (!(sites[i] instanceof SiteEntry)) { Utils.debug("Site " + sites[i].getURL() + " is not a SiteEntry"); //$NON-NLS-1$ //$NON-NLS-2$ continue; } PluginEntry[] plugins = ((SiteEntry) sites[i]).getPluginEntries(); for (int j = 0; j < plugins.length; j++) { allPlugins.add(plugins[j]); Utils.debug(" " + plugins[j].getURL()); //$NON-NLS-1$ } } return allPlugins.toArray(new PluginEntry[0]); }
@Override public synchronized void configureSite(ISiteEntry entry, boolean replace) { if (entry == null) return; URL url = entry.getURL(); if (url == null) return; String key = url.toExternalForm(); if (config.getSiteEntry(key) != null && !replace) return; if (entry instanceof SiteEntry) config.addSiteEntry(key, (SiteEntry) entry); }