# Interface MApplicationElement

All Known Subinterfaces:
  `MAddon, MApplication, MArea, MBindingContext, MBindingTable, MCategory, MCommand, MCommandParameter, MCompositePart, MContribution, MCoreExpression, MDialog, MDirectMenuItem, MDirectToolItem, MDynamicMenuContribution, MElementContainer<T>, MExpression, MGenericStack<T>, MGenericTile<T>, MGenericTrimContainer<T>, MHandledItem, MHandledMenuItem, MHandledToolItem, MHandler, MImperativeExpression, MItem, MKeyBinding, MMenu, MMenuContribution, MMenuElement, MMenuItem, MMenuSeparator, MParameter, MPart, MPartDescriptor, MPartSashContainer, MPartSashContainerElement, MPartStack, MPerspective, MPerspectiveStack, MPlaceholder, MPopupMenu, MStackElement, MToolBar, MToolBarContribution, MToolBarElement, MToolBarSeparator, MToolControl, MToolItem, MTrimBar, MTrimContribution, MTrimElement, MTrimmedWindow, MUIElement, MWindow, MWindowElement, MWizardDialog`

All Known Implementing Classes:
  `AddonImpl, ApplicationElementImpl, ApplicationImpl, AreaImpl, BindingContextImpl, BindingTableImpl, CategoryImpl, CommandImpl, CommandParameterImpl, CompositePartImpl, ContributionImpl, CoreExpressionImpl, DirectMenuItemImpl, DirectToolItemImpl, DynamicMenuContributionImpl, ElementContainerImpl, ExpressionImpl, GenericStackImpl, GenericTileImpl, GenericTrimContainerImpl, HandledItemImpl, HandledMenuItemImpl, HandledToolItemImpl, HandlerImpl, ImperativeExpressionImpl, ItemImpl, KeyBindingImpl, MenuContributionImpl, MenuElementImpl, MenuImpl, MenuItemImpl, MenuSeparatorImpl, ParameterImpl, PartDescriptorImpl, PartImpl, PartSashContainerImpl, PartStackImpl, PerspectiveImpl, PerspectiveStackImpl, PlaceholderImpl, PopupMenuImpl, ToolBarContributionImpl, ToolBarElementImpl, ToolBarImpl, ToolBarSeparatorImpl, ToolControlImpl, ToolItemImpl, TrimBarImpl, TrimContributionImpl, TrimmedWindowImpl, UIElementImpl, WindowImpl`

public interface MApplicationElement
A representation of the model object 'Element'.

This is the root element for all UI Model elements, defining common attributes to every element; the element's id as well as three general storage elements:

- Tags: This is a set of strings which can be used to classify a particular element. Tags can be specified in element searches and can also be referred to in the CSS styling definition.
- PersistedState: A string to string map used to store information that needs to be persisted between sessions.
- TransientData: A string to object map which can be used to store runtime data relevant to a particular model element.

Since:
  1.0
Restriction:
  This interface is not intended to be implemented by clients.

  The following features are supported:

  - `Element Id`
  - `Persisted State`
  - `Tags`
  - `Contributor URI`
  - `Transient Data`

## Method Summary

Modifier and Type
Method
Description
`String`
`getContributorURI()`
Returns the value of the 'Contributor URI' attribute.
`String`
`getElementId()`
Returns the value of the 'Element Id' attribute.
`Map<String,String>`
`getPersistedState()`
Returns the value of the 'Persisted State' map.
`List<String>`
`getTags()`
Returns the value of the 'Tags' attribute list.
`Map<String,Object>`
`getTransientData()`
Returns the value of the 'Transient Data' map.
`void`
`setContributorURI(String value)`
Sets the value of the '`Contributor URI`' attribute.
`void`
`setElementId(String value)`
Sets the value of the '`Element Id`' attribute.

## Method Details

### getElementId

String getElementId()
Returns the value of the 'Element Id' attribute.

Developers: Add more detailed documentation by editing this comment in org.eclipse.ui.model.workbench/model/UIElements.ecore. There is a GenModel/documentation node under each type and attribute.

Returns:
  the value of the 'Element Id' attribute.
See Also:
  - `setElementId(String)`

### setElementId

void setElementId(String value)
Sets the value of the '`Element Id`' attribute.

Parameters:
  `value` - the new value of the 'Element Id' attribute.
See Also:
  - `getElementId()`

### getPersistedState

Map<String,String> getPersistedState()
Returns the value of the 'Persisted State' map. The key is of type `String`, and the value is of type `String`,

This is a String to String map that can be used to persist information about model elements across program restarts. The format of the 'value' string is defined by the code setting the value into the map. Information stored in this map is part of the model and will be persisted and restored as such.

Returns:
  the value of the 'Persisted State' map.

### getTags

List<String> getTags()
Returns the value of the 'Tags' attribute list. The list contents are of type `String`.

Tags are a list of Strings that are persistent parts of the UI Model. They can be used to 'refine' a particular model element, supplying extra 'meta' information. These tags interact with the CSS engine so that it's possible to write CSS specific to a particular tag. The platform currently uses this mechanism to cause the color change in the stack containing the currently active part

Returns:
  the value of the 'Tags' attribute list.

### getContributorURI

String getContributorURI()
Returns the value of the 'Contributor URI' attribute.

This field is used to track the bundle (if any) from which the UI element was derived in order to facilitate its removal should the bundle go away or be updated.

Returns:
  the value of the 'Contributor URI' attribute.
See Also:
  - `setContributorURI(String)`

### setContributorURI

void setContributorURI(String value)
Sets the value of the '`Contributor URI`' attribute.

Parameters:
  `value` - the new value of the 'Contributor URI' attribute.
See Also:
  - `getContributorURI()`

### getTransientData

Map<String,Object> getTransientData()
Returns the value of the 'Transient Data' map. The key is of type `String`, and the value is of type `Object`,

This is a String to Object map into which any desired runtime information related to a particular element may be stored. It is not persisted across sessions so it is not necessary that the 'values' be serializable.

Returns:
  the value of the 'Transient Data' map.