org.eclipse.core.runtime

## Interface ILibrary

Deprecated.
In Eclipse 3.0 the plug-in classpath representation was changed. Clients of `ILibrary` are directed to the headers associated with the relevant bundle. In particular, the `Bundle-Classpath` header contains all available information about the classpath of a plug-in. Having retrieved the header, the `ManifestElement` helper class can be used to parse the value and discover the individual class path entries. The various header attributes are defined in `Constants`.

For example,

         String header = bundle.getHeaders().get(Constants.BUNDLE_CLASSPATH);
         ManifestElement[] elements = ManifestElement.parseHeader(
             Constants.BUNDLE_CLASSPATH, header);
         if (elements == null)
             return;
         elements[0].getValue();   // the jar/dir containing the code
         ...

Note that this new structure does not include information on which packages are exported or present in the listed classpath entries. This information is no longer relevant.

See `IPluginDescriptor` for information on the relationship between plug-in descriptors and bundles.

This interface must only be used by plug-ins which explicitly require the org.eclipse.core.runtime.compatibility plug-in.

    @Deprecated
    public interface ILibrary

A runtime library declared in a plug-in. Libraries contribute elements to the search path. These contributions are specified as a path to a directory or Jar file. This path is always considered to be relative to the containing plug-in.

Libraries are typed. The type is used to determine to which search path the library's contribution should be added. The valid types are: `CODE` and `RESOURCE`.

See Also:
  `IPluginDescriptor.getRuntimeLibraries()`
Restriction:
  This interface is not intended to be implemented by clients.

### Field Summary

Fields
`static String` `CODE` Deprecated. As of Eclipse 3.0 library types are obsolete. There is no replacement.
`static String` `RESOURCE` Deprecated. As of Eclipse 3.0 library types are obsolete. There is no replacement.

### Method Summary

All Methods Instance Methods Abstract Methods Deprecated Methods
`String[]` `getContentFilters()` Deprecated. As of Eclipse 3.0 content filters are obsolete. There is no replacement.
`String[]` `getPackagePrefixes()` Deprecated. As of Eclipse 3.0 package prefix filtering is obsolete. There is no replacement.

`IPath`

`getPath()`
Deprecated.
Given a manifest element corresponding to a classpath entry, the path for the entry can be accessed by getting the value of the manifest element. For example,

         element.getValue();   // the jar/dir containing the code

`String` `getType()` Deprecated. As of Eclipse 3.0 library types are obsolete. There is no replacement.
`boolean` `isExported()` Deprecated. As of Eclipse 3.0 exporting an individual library is obsolete. There is no replacement.
`boolean` `isFullyExported()` Deprecated. As of Eclipse 3.0 exporting an individual library is obsolete. There is no replacement.

### Field Detail

#### CODE

    @Deprecated
    static final String CODE

Deprecated. As of Eclipse 3.0 library types are obsolete. There is no replacement.
Constant string (value "code") indicating the code library type.

See Also:
  Constant Field Values

#### RESOURCE

    @Deprecated
    static final String RESOURCE

Deprecated. As of Eclipse 3.0 library types are obsolete. There is no replacement.
Constant string (value "resource") indicating the resource library type.

See Also:
  Constant Field Values

### Method Detail

#### getContentFilters

    @Deprecated
    String[] getContentFilters()

Deprecated. As of Eclipse 3.0 content filters are obsolete. There is no replacement.
Returns the content filters, or `null`. Each content filter identifies a specific class, or a group of classes, using a notation and matching rules equivalent to Java `import` declarations (e.g., "java.io.File", or "java.io.*"). Returns `null` if the library is not exported, or it is fully exported (no filtering).

Returns:
  the content filters, or `null` if none

#### getPath

    @Deprecated
    IPath getPath()

Deprecated. Given a manifest element corresponding to a classpath entry, the path for the entry can be accessed by getting the value of the manifest element. For example,

         element.getValue();   // the jar/dir containing the code

Returns the path of this runtime library, relative to the installation location.

Returns:
  the path of the library
See Also:
  `IPluginDescriptor.getInstallURL()`

#### getType

    @Deprecated
    String getType()

Deprecated. As of Eclipse 3.0 library types are obsolete. There is no replacement.
Returns this library's type.

Returns:
  the type of this library. The valid types are: `CODE` and `RESOURCE`.
See Also:
  `CODE`, `RESOURCE`

#### isExported

    @Deprecated
    boolean isExported()

Deprecated. As of Eclipse 3.0 exporting an individual library is obsolete. There is no replacement.
Returns whether the library is exported. The contents of an exported library may be visible to other plug-ins that declare a dependency on the plug-in containing this library, subject to content filtering. Libraries that are not exported are entirely private to the declaring plug-in.

Returns:
  `true` if the library is exported, `false` if it is private

#### isFullyExported

    @Deprecated
    boolean isFullyExported()

Deprecated. As of Eclipse 3.0 exporting an individual library is obsolete. There is no replacement.
Returns whether this library is fully exported. A library is considered fully exported iff it is exported and has no content filters.

Returns:
  `true` if the library is fully exported, and `false` if it is private or has filtered content

#### getPackagePrefixes

    @Deprecated
    String[] getPackagePrefixes()

Deprecated. As of Eclipse 3.0 package prefix filtering is obsolete. There is no replacement.
Returns the array of package prefixes that this library declares. This is used in classloader enhancements and is an optional entry in the plugin.xml.

Returns:
  the array of package prefixes or `null`
Since:
  2.1