Package org.eclipse.pde.ui.templates

# Class PluginReference

java.lang.Object
org.eclipse.pde.ui.templates.PluginReference

All Implemented Interfaces:
  `IIdentifiable`, `IMatchRules`, `IPluginReference`

public class PluginReference extends Object implements IPluginReference
Implementation of the IPluginReference

This class may be instantiated. This class is not intended to be sub-classed by clients.

Since:
  3.4
See Also:
  - `IPluginReference`
Restriction:
  This class is not intended to be sub-classed by clients.

## Field Summary

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

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

`P_MATCH, P_VERSION`

## Constructor Summary

Constructors
Constructor
Description
`PluginReference(String id)`
Constructs a plug-in reference to be used in the PDE template framework
`PluginReference(String id, String version, int match)`
Constructs a plug-in reference to be used in the PDE template framework

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object object)`
`String`
`getId()`
Returns a unique id of this object.
`int`
`getMatch()`
Returns the required match for the imported plug-in.
`String`
`getVersion()`
Returns the required version of the plug-in.
`int`
`hashCode()`
`void`
`setId(String id)`
Sets the id of this IIdentifiable to the provided value.
`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 class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### PluginReference

public PluginReference(String id)
Constructs a plug-in reference to be used in the PDE template framework

Parameters:
  `id` - the id of the plug-in
Since:
  3.9
See Also:
  - `PluginReference(String id, String version, int match)`

### PluginReference

public PluginReference(String id, String version, int match)
Constructs a plug-in reference to be used in the PDE template framework

Parameters:
  `id` - the id of the plug-in
  `version` - the version of the plug-in
  `match` - the match rule for the plug-in `IMatchRules`

## Method Details

### equals

public boolean equals(Object object)

Overrides:
  `equals` in class `Object`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`

### getMatch

public int getMatch()
Description copied from interface: `IPluginReference`
Returns the required match for the imported plug-in. The choices are defined in IMatchRules interface.

Specified by:
  `getMatch` in interface `IPluginReference`
Returns:
  the desired type of the import plug-in match
See Also:
  - `IMatchRules`

### getVersion

public String getVersion()
Description copied from interface: `IPluginReference`
Returns the required version of the plug-in.

Specified by:
  `getVersion` in interface `IPluginReference`
Returns:
  required version or `null` if not set

### setMatch

public void setMatch(int match) throws CoreException
Description copied from interface: `IPluginReference`
Sets the match type for the require plug-in. This method will throw a CoreException if the model is not editable.

Specified by:
  `setMatch` in interface `IPluginReference`
Parameters:
  `match` - the desired match type
Throws:
  `CoreException` - if the model is not editable
See Also:
  - `IMatchRules`

### setVersion

public void setVersion(String version) throws CoreException
Description copied from interface: `IPluginReference`
Sets the desired version of the required plug-in. This method will throw a CoreException if the model is not editable.

Specified by:
  `setVersion` in interface `IPluginReference`
Parameters:
  `version` - the required import plug-in version
Throws:
  `CoreException` - if the model is not editable

### getId

public String getId()
Description copied from interface: `IIdentifiable`
Returns a unique id of this object.

Specified by:
  `getId` in interface `IIdentifiable`
Returns:
  the id of this object

### setId

public void setId(String id) throws CoreException
Description copied from interface: `IIdentifiable`
Sets the id of this IIdentifiable to the provided value.

Specified by:
  `setId` in interface `IIdentifiable`
Parameters:
  `id` - a new id of this object
Throws:
  `CoreException` - If object is not editable.