Interface IConfigurationElement


  • public interface IConfigurationElement
    This interface is the same as the Eclipse platform IConfigurationElement interface. 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

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.lang.Object createExecutableExtension​(java.lang.String propertyName)
      Creates and returns a new instance of the executable extension identified by the named attribute of this configuration element.
      java.lang.String getAttribute​(java.lang.String name)
      Returns the named attribute of this configuration element, or null if none.
      java.lang.String getAttributeAsIs​(java.lang.String name)
      Returns the named attribute of this configuration element, or null if none.
      java.lang.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​(java.lang.String name)
      Returns all child configuration elements with the given name.
      IExtension getDeclaringExtension()
      Returns the extension that declares this configuration element.
      java.lang.String getName()
      Returns the name of this configuration element.
      java.lang.Object getParent()
      Returns the element which contains this element.
      java.lang.String getValue()
      Returns the text value of this configuration element.
      java.lang.String getValueAsIs()
      Returns the untranslated text value of this configuration element.
    • Method Detail

      • createExecutableExtension

        java.lang.Object createExecutableExtension​(java.lang.String propertyName)
                                            throws FrameworkException
        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:
        FrameworkException - if an instance of the executable extension could not be created for any reason.
        See Also:
        IExecutableExtension.setInitializationData(IConfigurationElement, String, Object)
      • getAttribute

        java.lang.String getAttribute​(java.lang.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

        java.lang.String getAttributeAsIs​(java.lang.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

        java.lang.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

        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

        IConfigurationElement[] getChildren​(java.lang.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

        IExtension getDeclaringExtension()
        Returns the extension that declares this configuration element.
        Returns:
        the extension
      • getName

        java.lang.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

        java.lang.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

        java.lang.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

        java.lang.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