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 Details

    • P_TEXT

      static final String P_TEXT
      A property name that will be used to notify about element body text change.
      See Also:
    • 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:
    • 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:
  • Method Details

    • 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