package org.eclipse.core.runtime; | |
/* | |
* (c) Copyright IBM Corp. 2000, 2001. | |
* All Rights Reserved. | |
*/ | |
/** | |
* An extension point declared in a plug-in. | |
* Except for the list of extensions plugged in to it, the information | |
* available for an extension point is obtained from the declaring plug-in's | |
* manifest (<code>plugin.xml</code>) file. | |
* <p> | |
* This interface is not intended to be implemented by clients. | |
* </p> | |
*/ | |
public interface IExtensionPoint { | |
/** | |
* Returns all configuration elements from all extensions configured | |
* into this extension point. Returns an empty array if this extension | |
* point has no extensions configured, or none of the extensions | |
* contain configuration elements. | |
* | |
* @return the configuration elements for all extension configured | |
* into this extension point | |
*/ | |
public IConfigurationElement[] getConfigurationElements(); | |
/** | |
* Returns the descriptor of the plug-in that declares this extension point. | |
* | |
* @return the plug-in that declares this extension point | |
*/ | |
public IPluginDescriptor getDeclaringPluginDescriptor(); | |
/** | |
* Returns the extension with the given unique identifier configured into | |
* this extension point, or <code>null</code> if there is no such extension. | |
* Since an extension might not have an identifier, some extensions | |
* can only be found via the <code>getExtensions</code> method. | |
* | |
* @param extensionId the unique identifier of an extension | |
* (e.g. <code>"com.example.acme.main"</code>). | |
* @return an extension, or <code>null</code> | |
*/ | |
public IExtension getExtension(String extensionId) ; | |
/** | |
* Returns all extensions configured into this extension point. | |
* Returns an empty array if this extension point has no extensions. | |
* | |
* @return the extensions configured into this extension point | |
*/ | |
public IExtension[] getExtensions(); | |
/** | |
* Returns a displayable label for this extension point. | |
* Returns the empty string if no label for this extension point | |
* is specified in the plug-in manifest file. | |
* <p> Note that any translation specified in the plug-in manifest | |
* file is automatically applied. | |
* </p> | |
* | |
* @return a displayable string label for this extension point, | |
* possibly the empty string | |
* @see IPluginDescriptor#getResourceString | |
*/ | |
public String getLabel(); | |
/** | |
* Returns reference to the extension point schema. The schema | |
* reference is returned as a URL path relative to the plug-in | |
* installation URL. | |
* Returns the empty string if no schema for this extension point | |
* is specified in the plug-in manifest file. | |
* | |
* @return a relative URL path, or an empty string | |
* @see IPluginDescriptor#getInstallURL | |
*/ | |
public String getSchemaReference(); | |
/** | |
* Returns the simple identifier of this extension point. | |
* This identifier is a non-empty string containing no | |
* period characters (<code>'.'</code>) and is guaranteed | |
* to be unique within the defining plug-in. | |
* | |
* @return the simple identifier of the extension point (e.g. <code>"builders"</code>) | |
*/ | |
public String getSimpleIdentifier(); | |
/** | |
* Returns the unique identifier of this extension point. | |
* This identifier is unique within the plug-in registry, and | |
* is composed of the identifier of the plug-in that declared | |
* this extension point and this extension point's simple identifier. | |
* | |
* @return the unique identifier of the extension point | |
* (e.g. <code>"org.eclipse.core.resources.builders"</code>) | |
*/ | |
public String getUniqueIdentifier(); | |
} |