Package org.eclipse.pde.core.plugin

# Interface IPluginReference

All Superinterfaces:
  `IIdentifiable`, `IMatchRules`

All Known Subinterfaces:
  `IPluginImport`

All Known Implementing Classes:
  `PluginReference`

public interface IPluginReference extends IIdentifiable, IMatchRules
Objects that implement this interface represent references of plug-ins. Plug-ins are referenced using their identifiers, and optionally versions and match rules.

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

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`P_MATCH`
A name of the property that will be used to notify about changes in the "match" field.
`static final String`
`P_VERSION`
A name of the property that will be used to notify about changes in the "version" field.

### Fields inherited from interface org.eclipse.pde.core.IIdentifiable

`P_ID`

### Fields inherited from interface org.eclipse.pde.core.plugin.IMatchRules

`COMPATIBLE, EQUIVALENT, GREATER_OR_EQUAL, NONE, PERFECT, PREFIX, RULE_COMPATIBLE, RULE_EQUIVALENT, RULE_GREATER_OR_EQUAL, RULE_NAME_TABLE, RULE_PERFECT, RULE_PREFIX`

## Method Summary

Modifier and Type
Method
Description
`int`
`getMatch()`
Returns the required match for the imported plug-in.
`String`
`getVersion()`
Returns the required version of the plug-in.
`void`
`setMatch(int match)`
Sets the match type for the require plug-in.
`void`
`setVersion(String version)`
Sets the desired version of the required plug-in.

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

`getId, setId`

## Field Details

### P_MATCH

static final String P_MATCH
A name of the property that will be used to notify about changes in the "match" field.

See Also:
  - Constant Field Values

### P_VERSION

static final String P_VERSION
A name of the property that will be used to notify about changes in the "version" field.

See Also:
  - Constant Field Values

## Method Details

### getMatch

int getMatch()
Returns the required match for the imported plug-in. The choices are defined in IMatchRules interface.

Returns:
  the desired type of the import plug-in match
See Also:
  - `IMatchRules`

### getVersion

String getVersion()
Returns the required version of the plug-in.

Returns:
  required version or `null` if not set

### setMatch

void setMatch(int match) throws CoreException
Sets the match type for the require plug-in. This method will throw a CoreException if the model is not editable.

Parameters:
  `match` - the desired match type
Throws:
  `CoreException` - if the model is not editable
See Also:
  - `IMatchRules`

### setVersion

void setVersion(String version) throws CoreException
Sets the desired version of the required plug-in. This method will throw a CoreException if the model is not editable.

Parameters:
  `version` - the required import plug-in version
Throws:
  `CoreException` - if the model is not editable