Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.core.runtime
Interface IConfigurationElement

public interface IConfigurationElement

A configuration element, with its attributes and children, directly reflects the content and structure of the extension section within the declaring plug-in's manifest (`plugin.xml`) file.

This interface also provides a way to create executable extension objects.

This interface is not intended to be implemented by clients.

Method Summary
`Object` | `createExecutableExtension(String propertyName)` Creates and returns a new instance of the executable extension identified by the named attribute of this configuration element.
`String` | `getAttribute(String name)` Returns the named attribute of this configuration element, or `null` if none.
`String` | `getAttributeAsIs(String name)` Returns the named attribute of this configuration element, or `null` if none.
`String[]` | `getAttributeNames()` Returns the names of the attributes of this configuration element.
`IConfigurationElement[]` | `getChildren()` Returns all configuration elements that are children of this configuration element.
`IConfigurationElement[]` | `getChildren(String name)` Returns all child configuration elements with the given name.
`IExtension` | `getDeclaringExtension()` Returns the extension that declares this configuration element.
`String` | `getName()` Returns the name of this configuration element.
`Object` | `getParent()` Returns the element which contains this element.
`String` | `getValue()` Returns the text value of this configuration element.
`String` | `getValueAsIs()` Returns the untranslated text value of this configuration element.

Method Detail

### createExecutableExtension

    public Object createExecutableExtension(String propertyName)
                                     throws CoreException

  Creates and returns a new instance of the executable extension identified by the named attribute of this configuration element. The named attribute value must contain a fully qualified name of a Java class implementing the executable extension.

  The specified class is instantiated using its 0-argument public constructor. If the specified class implements the `IExecutableExtension` interface, the method `setInitializationData` is called, passing to the object the configuration information that was used to create it.

  Unlike other methods on this object, invoking this method may activate the plug-in.

  Parameters:
    `propertyName` - the name of the property
  Returns:
    the executable instance
  Throws:
    `CoreException` - if an instance of the executable extension could not be created for any reason.
  See Also:
    `IExecutableExtension.setInitializationData(IConfigurationElement, String, Object)`

### getAttribute

    public String getAttribute(String name)

  Returns the named attribute of this configuration element, or `null` if none.

  The names of configuration element attributes are the same as the attribute names of the corresponding XML element. For example, the configuration markup

       <bg pattern="stripes"/>

  corresponds to a configuration element named `"bg"` with an attribute named `"pattern"` with attribute value `"stripes"`.

  Note that any translation specified in the plug-in manifest file is automatically applied.

  Parameters:
    `name` - the name of the attribute
  Returns:
    attribute value, or `null` if none

### getAttributeAsIs

    public String getAttributeAsIs(String name)

  Returns the named attribute of this configuration element, or `null` if none.

  The names of configuration element attributes are the same as the attribute names of the corresponding XML element. For example, the configuration markup

       <bg pattern="stripes"/>

  corresponds to a configuration element named `"bg"` with an attribute named `"pattern"` with attribute value `"stripes"`.

  Note that any translation specified in the plug-in manifest file for this attribute is not automatically applied.

  Parameters:
    `name` - the name of the attribute
  Returns:
    attribute value, or `null` if none

### getAttributeNames

    public String[] getAttributeNames()

  Returns the names of the attributes of this configuration element. Returns an empty array if this configuration element has no attributes.

  The names of configuration element attributes are the same as the attribute names of the corresponding XML element. For example, the configuration markup

       <bg color="blue" pattern="stripes"/>

  corresponds to a configuration element named `"bg"` with attributes named `"color"` and `"pattern"`.

  Returns:
    the names of the attributes

### getChildren

    public IConfigurationElement[] getChildren()

  Returns all configuration elements that are children of this configuration element. Returns an empty array if this configuration element has no children.

  Each child corresponds to a nested XML element in the configuration markup. For example, the configuration markup

       <view>
           <verticalHint>top</verticalHint>
           <horizontalHint>left</horizontalHint>
       </view>

  corresponds to a configuration element, named `"view"`, with two children.

  Returns:
    the child configuration elements
  See Also:
    `getChildren(String)`

### getChildren

    public IConfigurationElement[] getChildren(String name)

  Returns all child configuration elements with the given name. Returns an empty array if this configuration element has no children with the given name.

  Parameters:
    `name` - the name of the child configuration element
  Returns:
    the child configuration elements with that name
  See Also:
    `getChildren()`

### getDeclaringExtension

    public IExtension getDeclaringExtension()

  Returns the extension that declares this configuration element.

  Returns:
    the extension

### getName

    public String getName()

  Returns the name of this configuration element. The name of a configuration element is the same as the XML tag of the corresponding XML element. For example, the configuration markup

       <wizard name="Create Project"/>

  corresponds to a configuration element named `"wizard"`.

  Returns:
    the name of this configuration element

### getParent

    public Object getParent()

  Returns the element which contains this element. If this element is an immediate child of an extension, the returned value can be downcast to `IExtension`. Otherwise the returned value can be downcast to `IConfigurationElement`.

  Returns:
    the parent of this configuration element or `null`
  Since:
    3.0

### getValue

    public String getValue()

  Returns the text value of this configuration element. For example, the configuration markup

       <script lang="javascript">.\scripts\cp.js</script>

  corresponds to a configuration element `"script"` with value `".\scripts\cp.js"`.

  Values may span multiple lines (i.e., contain carriage returns and/or line feeds).

  Note that any translation specified in the plug-in manifest file is automatically applied.

  Returns:
    the text value of this configuration element or `null`

### getValueAsIs

    public String getValueAsIs()

  Returns the untranslated text value of this configuration element. For example, the configuration markup

       <script lang="javascript">.\scripts\cp.js</script>

  corresponds to a configuration element `"script"` with value `".\scripts\cp.js"`.

  Values may span multiple lines (i.e., contain carriage returns and/or line feeds).

  Note that translation specified in the plug-in manifest file is not automatically applied. For example, the configuration markup

       <tooltip>#hattip</tooltip>

  corresponds to a configuration element, named `"tooltip"`, with value `"#hattip"`.

  Returns:
    the untranslated text value of this configuration element or `null`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.