Package org.eclipse.pde.core.plugin

# Interface IPluginLibrary

All Superinterfaces:
  `IAdaptable`, `IPluginObject`, `IWritable`

public interface IPluginLibrary extends IPluginObject
The class that implements this interface represents a reference to the library that is defined in the plug-in manifest.

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`
`CODE`
A library type indicating the library contains code.
`static final String`
`P_CONTENT_FILTERS`
A name of the property that will be used to notify about changes in the content filters.
`static final String`
`P_EXPORTED`
A name of the property that will be used to notify about changes of the "exported" field.
`static final String`
`P_PACKAGES`
A name of the property that will be used to notify about changes in the content filters.
`static final String`
`P_TYPE`
A name of the property that will be used to notify about of the 'type' field.
`static final String`
`RESOURCE`
A library type indicating the library contains resource files.

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

`P_NAME`

## Method Summary

Modifier and Type
Method
Description
`void`
`addContentFilter(String filter)`
Export a particular package in a library.
`String[]`
`getContentFilters()`
Returns optional context filters that should be applied to calculate what classes to export from this library.
`String[]`
`getPackages()`
Returns optional package prefixes that can be used to make library lookup faster..
`String`
`getType()`
Returns the type of this library.
`boolean`
`isExported()`
Returns true if this library contains types that will be visible to other plug-ins.
`boolean`
`isFullyExported()`
Returns true if all the types in this library will be visible to other plug-ins.
`void`
`removeContentFilter(String filter)`
Remove a package from the export list.
`void`
`setContentFilters(String[] filters)`
Sets the optional content filters for this library.
`void`
`setExported(boolean value)`
Sets whether types in this library will be visible to other plug-ins.
`void`
`setPackages(String[] packages)`
Sets the optional package prefixes for this library.
`void`
`setType(String type)`
Sets the library type.

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

`getAdapter`

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

## Field Details

### P_EXPORTED

static final String P_EXPORTED
A name of the property that will be used to notify about changes of the "exported" field.

See Also:
  - Constant Field Values

### P_PACKAGES

static final String P_PACKAGES
A name of the property that will be used to notify about changes in the content filters.

See Also:
  - Constant Field Values

### P_CONTENT_FILTERS

static final String P_CONTENT_FILTERS
A name of the property that will be used to notify about changes in the content filters.

See Also:
  - Constant Field Values

### P_TYPE

static final String P_TYPE
A name of the property that will be used to notify about of the 'type' field.

See Also:
  - Constant Field Values

### CODE

static final String CODE
A library type indicating the library contains code.

See Also:
  - Constant Field Values

### RESOURCE

static final String RESOURCE
A library type indicating the library contains resource files.

See Also:
  - Constant Field Values

## Method Details

### getContentFilters

String[] getContentFilters()
Returns optional context filters that should be applied to calculate what classes to export from this library.

Returns:
  an array of content filter strings

### getPackages

String[] getPackages()
Returns optional package prefixes that can be used to make library lookup faster..

Returns:
  an array of package prefixes

### isExported

boolean isExported()
Returns true if this library contains types that will be visible to other plug-ins.

Returns:
  true if there are exported types in the library

### isFullyExported

boolean isFullyExported()
Returns true if all the types in this library will be visible to other plug-ins.

Returns:
  true if all the types are exported in the library

### getType

String getType()
Returns the type of this library. Will be one of `CODE` or `RESOURCE`.

Returns:
  The type of this library

### setContentFilters

void setContentFilters(String[] filters) throws CoreException
Sets the optional content filters for this library. This method may throw a CoreException if the model is not editable.

Parameters:
  `filters` - an array of filter strings
Throws:
  `CoreException` - if the model is not editable

### addContentFilter

void addContentFilter(String filter) throws CoreException
Export a particular package in a library. This method may throw a CoreException if the model is not editable.

Parameters:
  `filter` - a package name
Throws:
  `CoreException` - if the model is not editable

### removeContentFilter

void removeContentFilter(String filter) throws CoreException
Remove a package from the export list. This method may throw a CoreException if the model is not editable.

Parameters:
  `filter` - a package name
Throws:
  `CoreException` - if the model is not editable

### setPackages

void setPackages(String[] packages) throws CoreException
Sets the optional package prefixes for this library. This method may throw a CoreException if the model is not editable.

Parameters:
  `packages` - an array of package prefixes
Throws:
  `CoreException` - if the model is not editable

### setExported

void setExported(boolean value) throws CoreException
Sets whether types in this library will be visible to other plug-ins. This method may throw a CoreException if the model is not editable.

Parameters:
  `value` - whether the types in the library should be exported
Throws:
  `CoreException` - if the model is not editable

### setType

void setType(String type) throws CoreException
Sets the library type. Must be either `CODE` or `RESOURCE`.

Parameters:
  `type` - The library type
Throws:
  `CoreException` - if the model is not editable.