Interface ILibrary


  • @Deprecated
    public 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.

    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. This interface is planned to be deleted, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=544339
    Restriction:
    This interface is not intended to be extended by clients.
    Restriction:
    This interface is not intended to be referenced by clients.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static String CODE
      Deprecated.
      As of Eclipse 3.0 library types are obsolete.
      static String RESOURCE
      Deprecated.
      As of Eclipse 3.0 library types are obsolete.
    • Method Summary

      All Methods Instance Methods Abstract Methods Deprecated Methods 
      Modifier and Type Method Description
      String[] getContentFilters()
      Deprecated.
      As of Eclipse 3.0 content filters are obsolete.
      String[] getPackagePrefixes()
      Deprecated.
      As of Eclipse 3.0 package prefix filtering is obsolete.
      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.
      String getType()
      Deprecated.
      As of Eclipse 3.0 library types are obsolete.
      boolean isExported()
      Deprecated.
      As of Eclipse 3.0 exporting an individual library is obsolete.
      boolean isFullyExported()
      Deprecated.
      As of Eclipse 3.0 exporting an individual library is obsolete.
    • 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