org.eclipse.pde.core.plugin

## Interface IPluginImport

All Superinterfaces:
  IAdaptable, IIdentifiable, IMatchRules, IPluginObject, IPluginReference, IWritable

    public interface IPluginImport
    extends IPluginObject, IPluginReference

Objects that implement this interface represent references to required plug-ins.

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

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

`P_NAME`

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

`P_MATCH, P_VERSION`

### 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
`boolean` `isOptional()` Tests whether this import is optional.
`boolean` `isReexported()` Tests whether the imported plug-in is reexported for plug-ins that will use this plug-in.
`void` `setOptional(boolean value)` Sets whether this import is optional.
`void` `setReexported(boolean value)` Sets whether the libraries of the required plug-in will be reexported.

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

`getModel, getName, getParent, getPluginBase, getPluginModel, getResourceString, getTranslatedName, isInTheModel, isValid, setInTheModel, setName`

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

`write`

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

`getAdapter`

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

`getMatch, getVersion, setMatch, setVersion`

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

`getId, setId`

### Field Detail

#### P_REEXPORTED

    static final String P_REEXPORTED

A name of the property that will be used to notify about changes in the "reexported" field.

See Also:
  Constant Field Values

#### P_OPTIONAL

    static final String P_OPTIONAL

A name of the property that will be used to notify about changes in the "optional" field.

See Also:
  Constant Field Values

### Method Detail

#### isReexported

    boolean isReexported()

Tests whether the imported plug-in is reexported for plug-ins that will use this plug-in.

Returns:
  true if the required plug-in libraries are reexported

#### isOptional

    boolean isOptional()

Tests whether this import is optional. Optional imports will not create an error condition when they cannot be resolved.

Returns:
  true if this import is optional

#### setReexported

    void setReexported(boolean value)
                throws CoreException

Sets whether the libraries of the required plug-in will be reexported. This method will throw a CoreException if the model is not editable.

Parameters:
  `value` - true if reexporting is desired
Throws:
  `CoreException` - if the model is not editable

#### setOptional

    void setOptional(boolean value)
              throws CoreException

Sets whether this import is optional. Optional imports will not create an error condition when they cannot be resolved.

Parameters:
  `value` - true if import is optional
Throws:
  `CoreException` - if the model is not editable