Package org.eclipse.jdt.launching

## Interface ILibraryLocationResolver

    public interface ILibraryLocationResolver

This resolver allows contributors to provide `LibraryLocation` information for non-standard JRE / JDK libraries.
For example this resolver could be used to provide Javadoc and source locations for jars in the `/ext` location of a JRE / JDK

Since:
  3.7
See Also:
  `JavaRuntime.EXTENSION_POINT_LIBRARY_LOCATION_RESOLVERS`

### Method Summary

All Methods Instance Methods Abstract Methods
`URL` `getIndexLocation​(IPath libraryPath)` Returns the `URL` of the index for the given library or `null`.
`URL` `getJavadocLocation​(IPath libraryPath)` Returns the `URL` of the Javadoc for this library or `null`
`IPath` `getPackageRoot​(IPath libraryPath)` Returns the path inside the `source` zip file where packages names begin, must not be `null` - use `Path.EMPTY` For example, if the source for `java.lang.Object` source is found at `src/java/lang/Object.java` in the zip file, the package root would be `src`.
`IPath` `getSourcePath​(IPath libraryPath)` Returns the `IPath` of the `zip` or `jar` file containing the sources for `library`.

### Method Detail

#### getPackageRoot

    IPath getPackageRoot​(IPath libraryPath)

Returns the path inside the `source` zip file where packages names begin, must not be `null` - use `Path.EMPTY`
For example, if the source for `java.lang.Object` source is found at `src/java/lang/Object.java` in the zip file, the package root would be `src`.

Parameters:
  `libraryPath` - the path to the library
Returns:
  the `IPath` to the root of the source or the empty path, never `null`

#### getSourcePath

    IPath getSourcePath​(IPath libraryPath)

Returns the `IPath` of the `zip` or `jar` file containing the sources for `library`.
Must not be `null` - use `Path.EMPTY`

Parameters:
  `libraryPath` - the path to the library, must not be `null`
Returns:
  the `IPath` to the source or the empty path, never `null`

#### getJavadocLocation

    URL getJavadocLocation​(IPath libraryPath)

Returns the `URL` of the Javadoc for this library or `null`

Parameters:
  `libraryPath` - the path to the library, must not be `null`
Returns:
  the Javadoc `URL` or `null`

#### getIndexLocation

    URL getIndexLocation​(IPath libraryPath)

Returns the `URL` of the index for the given library or `null`.

Parameters:
  `libraryPath` - the path to the library, must not be `null`
Returns:
  the index `URL` or `null`