Interface IPluginElement

  • All Superinterfaces:
    IAdaptable, IPluginObject, IPluginParent, IWritable

    public interface IPluginElement
    extends IPluginParent
    Classes that implement this interface model the XML elements found in the plug-in model.
    Restriction:
    This interface is not intended to be implemented by clients.
    Restriction:
    This interface is not intended to be extended by clients.
    • Field Detail

      • P_TEXT

        static final String P_TEXT
        A property name that will be used to notify about element body text change.
        See Also:
        Constant Field Values
      • P_ATTRIBUTES

        static final String P_ATTRIBUTES
        A property name that will be used to notify about global replacement of the element's attributes.
        See Also:
        Constant Field Values
      • P_ATTRIBUTE

        static final String P_ATTRIBUTE
        A property name that will be used to notify individual change in an element's attribute.
        See Also:
        Constant Field Values
    • Method Detail

      • createCopy

        IPluginElement createCopy()
        Creates an identical copy of this XML element. The new element will share the same model and the parent.
        Returns:
        a copy of this element
      • getAttribute

        IPluginAttribute getAttribute​(String name)
        Returns an attribute object whose name matches the provided name.
        Parameters:
        name - the name of the attribute
        Returns:
        the attribute object, or null if not found
      • getAttributes

        IPluginAttribute[] getAttributes()
        Returns all attributes currently defined in this element
        Returns:
        an array of attribute objects that belong to this element
      • getAttributeCount

        int getAttributeCount()
        Returns the number of attributes in this element.
        Returns:
        number of attributes defined in this element
      • getText

        String getText()
        Returns the body text of this element.
        Returns:
        body text of this element or null if not set.
      • getElementInfo

        Object getElementInfo()
        Returns the schema for this element.

        This information is exposed here as implementation side-effect and should not be used by clients.

        Returns:
        the schema for this element or null if not found.
      • setAttribute

        void setAttribute​(String name,
                          String value)
                   throws CoreException
        Sets the attribute with the provided name to the provided value. If attribute object is not found, a new one will be created and its value set to the provided value. This method will throw a CoreException if the model is not editable.
        Parameters:
        name - the name of the attribute
        value - the value to be set
        Throws:
        CoreException - if the model is not editable
      • setText

        void setText​(String text)
              throws CoreException
        Sets the body text of this element to the provided value. This method will throw a CoreException if the model is not editable.
        Parameters:
        text - the new body text of this element
        Throws:
        CoreException - if the model is not editable