Package org.eclipse.pde.core.plugin

## Interface IPluginModel

All Superinterfaces:
  `IAdaptable`, `IBaseModel`, `IModel`, `IModelChangeProvider`, `IPluginModelBase`, `ISharedExtensionsModel`, `ISharedPluginModel`

    public interface IPluginModel
    extends IPluginModelBase

This type of model is created by parsing the manifest file. If the file is a workspace resource, it will be available as the underlying resource of the model. The model may be read-only or editable. It will also make a reference to the build.properties model when created. The reference will be of the same type as the model itself: if the model is editable, it will attempt to obtain an exclusive editable copy of build.properties model.

The plug-in model can be disabled. Disabling the model will not change its data. Users of the model will have to decide if the disabled state if of any importance to them or not.

The model is capable of notifying listeners about changes. An attempt to change a read-only model will result in a CoreException.

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

### Method Summary

All Methods Instance Methods Abstract Methods
`IPlugin` `getPlugin()` Returns a top-level model object.

### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

`getAdapter`

### Methods inherited from interface org.eclipse.pde.core.IBaseModel

`dispose, isDisposed, isEditable, isValid`

### Methods inherited from interface org.eclipse.pde.core.IModel

`getResourceString, getTimeStamp, getUnderlyingResource, isInSync, isLoaded, isReconcilingModel, load, load, reload`

### Methods inherited from interface org.eclipse.pde.core.IModelChangeProvider

`addModelChangedListener, fireModelChanged, fireModelObjectChanged, removeModelChangedListener`

### Methods inherited from interface org.eclipse.pde.core.plugin.IPluginModelBase

`createPluginBase, getBuildModel, getBundleDescription, getNLLookupLocation, getPluginBase, getPluginBase, getPluginFactory, isEnabled, isFragmentModel, setBundleDescription, setEnabled`

### Methods inherited from interface org.eclipse.pde.core.plugin.ISharedExtensionsModel

`getExtensions, getExtensions`

### Methods inherited from interface org.eclipse.pde.core.plugin.ISharedPluginModel

`getFactory, getInstallLocation`

### Method Detail

#### getPlugin

    IPlugin getPlugin()

Returns a top-level model object.

Returns:
  a root model instance