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
`static String` `P_MATCH` A name of the property that will be used to notify about changes in the "match" field.
`static 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

All Methods Instance Methods Abstract Methods
`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 Detail

#### 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 Detail

#### 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