public static TreeSet<String> getProductNameSet() { TreeSet<String> result = new TreeSet<>(); IExtension[] extensions = PDECore.getDefault().getExtensionsRegistry().findExtensions("org.eclipse.core.runtime.products", true); //$NON-NLS-1$ for (int i = 0; i < extensions.length; i++) { IConfigurationElement[] elements = extensions[i].getConfigurationElements(); if (elements.length != 1) continue; if (!"product".equals(elements[0].getName())) //$NON-NLS-1$ continue; String id = extensions[i].getUniqueIdentifier(); if (id != null && id.trim().length() > 0) result.add(id); } return result; }
private TreeSet<String> getCurrentIntroIds() { String introId; TreeSet<String> result = new TreeSet<>(); IExtension[] extensions = PDECore.getDefault().getExtensionsRegistry().findExtensions("org.eclipse.ui.intro", true); //$NON-NLS-1$ for (IExtension extension : extensions) { IConfigurationElement[] children = extension.getConfigurationElements(); for (IConfigurationElement element : children) { if ("intro".equals(element.getName())) {//$NON-NLS-1$ introId = element.getAttribute("id"); //$NON-NLS-1$ if (introId != null) result.add(introId); } } } return result; }
public static Set<String> getApplicationNameSet() { TreeSet<String> result = new TreeSet<>(); IExtension[] extensions = PDECore.getDefault().getExtensionsRegistry().findExtensions("org.eclipse.core.runtime.applications", true); //$NON-NLS-1$ for (int i = 0; i < extensions.length; i++) { String id = extensions[i].getUniqueIdentifier(); IConfigurationElement[] elements = extensions[i].getConfigurationElements(); if (elements.length != 1) continue; String visiblity = elements[0].getAttribute("visible"); //$NON-NLS-1$ boolean visible = visiblity == null ? true : Boolean.valueOf(visiblity).booleanValue(); if (id != null && visible) { result.add(id); } } result.add("org.eclipse.ui.ide.workbench"); //$NON-NLS-1$ return result; }
protected List<IPluginExtension> getExtensionsList() { if (fExtensions == null) { IPluginBase base = getPluginBase(); if (base != null) { if (fCache) fExtensions = new ArrayList<>(Arrays.asList(PDECore.getDefault().getExtensionsRegistry().findExtensionsForPlugin(base.getPluginModel()))); else return Arrays.asList(PDECore.getDefault().getExtensionsRegistry().findExtensionsForPlugin(base.getPluginModel())); } else { return Collections.emptyList(); } } return fExtensions; }
private static void getApplicationRequirements(String application, Collection requiredIds) { PDEExtensionRegistry registry = PDECore.getDefault().getExtensionsRegistry(); IExtension[] extensions = registry.findExtensions("org.eclipse.core.runtime.applications", true); //$NON-NLS-1$ for (int i = 0; i < extensions.length; i++) { if (application.equals(extensions[i].getUniqueIdentifier()) || application.equals(extensions[i].getSimpleIdentifier())) { requiredIds.add(extensions[i].getNamespaceIdentifier()); // Only one extension should match the application so break out of the looop break; } } } }
protected List<IPluginExtensionPoint> getExtensionPointsList() { if (fExtensionPoints == null) { IPluginBase base = getPluginBase(); if (base != null) { if (fCache) fExtensionPoints = new ArrayList<>(Arrays.asList(PDECore.getDefault().getExtensionsRegistry().findExtensionPointsForPlugin(base.getPluginModel()))); else return Arrays.asList(PDECore.getDefault().getExtensionsRegistry().findExtensionPointsForPlugin(base.getPluginModel())); } else { return Collections.emptyList(); } } return fExtensionPoints; }
private static void getProductRequirements(String product, Collection requiredIds) { PDEExtensionRegistry registry = PDECore.getDefault().getExtensionsRegistry(); IExtension[] extensions = registry.findExtensions("org.eclipse.core.runtime.products", true); //$NON-NLS-1$ for (int i = 0; i < extensions.length; i++) { if (product.equals(extensions[i].getUniqueIdentifier()) || product.equals(extensions[i].getSimpleIdentifier())) { requiredIds.add(extensions[i].getNamespaceIdentifier()); IConfigurationElement[] elements = extensions[i].getConfigurationElements(); for (int j = 0; j < elements.length; j++) { String application = elements[j].getAttribute("application"); //$NON-NLS-1$ if (application != null && application.length() > 0) { getApplicationRequirements(application, requiredIds); } } // Only one extension should match the product so break out of the looop break; } } }
@Override public void linkActivated(HyperlinkEvent e) { String extPoint = "org.eclipse.ui." + e.getHref().toString(); //$NON-NLS-1$ IPluginExtensionPoint point = PDECore.getDefault().getExtensionsRegistry().findExtensionPoint(extPoint); if (point != null) new ShowDescriptionAction(point, true).run(); } }
@Override public void linkActivated(HyperlinkEvent e) { String extPoint = Platform.PI_RUNTIME + "." + e.getHref().toString(); //$NON-NLS-1$ IPluginExtensionPoint point = PDECore.getDefault().getExtensionsRegistry().findExtensionPoint(extPoint); if (point != null) new ShowDescriptionAction(point, true).run(); }
public void setInput(String fullPointID) { // Ensure point ID is defined if (fullPointID == null) { fSchema = null; fFullPointID = PDEUIMessages.OpenSchemaAction_msgUnknown; return; } fFullPointID = fullPointID; // Find the corresponding extension point IPluginExtensionPoint point = PDECore.getDefault().getExtensionsRegistry().findExtensionPoint(fFullPointID); // Ensure the extension point is defined if (point == null) { fSchema = null; return; } // Find the schema fSchema = findSchema(point); }
public ISchema getSchema(String extPointID) { IPluginExtensionPoint point = PDECore.getDefault().getExtensionsRegistry().findExtensionPoint(extPointID); if (point == null) { // if there is an old schema associated with this extension point, release it. if (fRegistry.containsKey(extPointID)) fRegistry.remove(extPointID); return null; } URL url = getSchemaURL(point); if (url == null) return null; ISchemaDescriptor desc = getExistingDescriptor(extPointID, url); if (desc == null) { desc = new SchemaDescriptor(extPointID, url); fRegistry.put(extPointID, desc); } return desc.getSchema(true); }
private synchronized void initialize() { if (fLocations != null) return; fLocations = new HashMap<>(); IExtension[] extensions = PDECore.getDefault().getExtensionsRegistry().findExtensions(JAVADOC_ID, false); for (int i = 0; i < extensions.length; i++) { IPluginModelBase base = PluginRegistry.findModel(extensions[i].getContributor().getName()); // only search external models if (base == null || base.getUnderlyingResource() != null) continue; processExtension(extensions[i], base); } }
public void setInput(IPluginExtension extension) { // Ensure the extension is defined if (extension == null) { fSchema = null; fFullPointID = PDEUIMessages.OpenSchemaAction_msgUnknown; return; } // Get the full extension point ID fFullPointID = extension.getPoint(); // Find the corresponding extension point IPluginExtensionPoint point = PDECore.getDefault().getExtensionsRegistry().findExtensionPoint(fFullPointID); // Ensure the extension point is defined if (point == null) { fSchema = null; return; } // Find the schema fSchema = findSchema(point); }
@Override public IPluginModelBase[] getMatchingModels() { if (fInput == null) return new IPluginModelBase[0]; String pointId = fInput.getSearchString(); PDEExtensionRegistry registry = PDECore.getDefault().getExtensionsRegistry(); IPluginModelBase[] models = null; if (fInput.getSearchLimit() == PluginSearchInput.LIMIT_REFERENCES) { models = registry.findExtensionPlugins(pointId, false); } else { IPluginModelBase base = registry.findExtensionPointPlugin(pointId); models = (base == null) ? new IPluginModelBase[0] : new IPluginModelBase[] {base}; } return addRelevantModels(models); }
protected void validateExtension(Element element) { if (!assertAttributeDefined(element, "point", CompilerFlags.ERROR)) //$NON-NLS-1$ return; String pointID = element.getAttribute("point"); //$NON-NLS-1$ if (!PDECore.getDefault().getExtensionsRegistry().hasExtensionPoint(pointID)) { int severity = CompilerFlags.getFlag(fProject, CompilerFlags.P_UNRESOLVED_EX_POINTS); if (severity != CompilerFlags.IGNORE) { report(NLS.bind(PDECoreMessages.Builders_Manifest_ex_point, pointID), getLine(element, "point"), severity, PDEMarkerFactory.CAT_OTHER); //$NON-NLS-1$ } } else { SchemaRegistry reg = PDECore.getDefault().getSchemaRegistry(); ISchema schema = reg.getSchema(pointID); if (schema != null) { validateElement(element, schema, true); } } }
private void addShowDescriptionAction(Object object, IMenuManager menu) { if (object instanceof IPluginExtensionPoint) { IPluginExtensionPoint extPoint = (IPluginExtensionPoint) object; String pointID = extPoint.getFullId(); if (pointID.indexOf('.') == -1) { // Point ID is not fully qualified pointID = fullyQualifyPointID(pointID); } menu.add(new ShowDescriptionAction(extPoint, pointID)); } else if (object instanceof IPluginExtension) { String point = ((IPluginExtension) object).getPoint(); IPluginExtensionPoint extPoint = PDECore.getDefault().getExtensionsRegistry().findExtensionPoint(point); if (extPoint != null) menu.add(new ShowDescriptionAction(extPoint)); } }
@Override public void dispose() { IProductModel model = getModel(); if (model != null) model.removeModelChangedListener(this); PDECore.getDefault().getExtensionsRegistry().removeListener(this); PDECore.getDefault().getModelManager().removeStateDeltaListener(this); super.dispose(); }
@Override public void run() { if (fSchema == null) { IPluginExtensionPoint point = PDECore.getDefault().getExtensionsRegistry().findExtensionPoint(fPointID); URL url = null; if (point != null) { url = SchemaRegistry.getSchemaURL(point); if (url != null) { ISchemaDescriptor desc = new SchemaDescriptor(fPointID, url); fSchema = desc.getSchema(false); } } if (point == null || url == null || fSchema == null) { showNoSchemaMessage(); return; } } showSchemaDocument(); }
private void findReferences(CompositeChange compositeChange, IProgressMonitor monitor) { String pointId = getId(); IPluginModelBase[] bases = PDECore.getDefault().getExtensionsRegistry().findExtensionPlugins(pointId, true); SubMonitor subMonitor = SubMonitor.convert(monitor, bases.length); for (int i = 0; i < bases.length; i++) { IFile file = getModificationFile(bases[i]); if (file != null) { compositeChange.addAll(PDEModelUtility.changesForModelModication(getExtensionModification(file), subMonitor.split(1))); } subMonitor.setWorkRemaining(bases.length - i); } }
*/ private void resetPlatform(IProgressMonitor monitor) { EclipseHomeInitializer.resetEclipseHomeVariable(); PDECore.getDefault().getSourceLocationManager().reset(); PDECore.getDefault().getJavadocLocationManager().reset(); PDECore.getDefault().getExtensionsRegistry().targetReloaded(); PDECore.getDefault().getModelManager().targetReloaded(monitor); // PluginModelManager should be reloaded first to reset isCancelled() flag PDECore.getDefault().getFeatureModelManager().targetReloaded(); } }