org.eclipse.jdt.launching

## Interface IRuntimeClasspathEntry2

All Superinterfaces:
  IRuntimeClasspathEntry

    public interface IRuntimeClasspathEntry2
    extends IRuntimeClasspathEntry

Enhancements to `IRuntimeClasspathEntry` to support extensible runtime classpath entries. Contributed runtime classpath entries have a type of `OTHER`, and are contributed to the `runtimeClasspathEntries` extension point.

New types of runtime classpath entries are only intended to be contributed by the Java debugger.

Since:
  3.0
See Also:
  `IRuntimeClasspathEntry`
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 inherited from interface org.eclipse.jdt.launching.IRuntimeClasspathEntry

`ARCHIVE, BOOTSTRAP_CLASSES, CONTAINER, OTHER, PROJECT, STANDARD_CLASSES, USER_CLASSES, VARIABLE`

### Method Summary

All Methods Instance Methods Abstract Methods
`String` `getName()` Returns a human readable name for this classpath entry.
`IRuntimeClasspathEntry[]` `getRuntimeClasspathEntries(ILaunchConfiguration configuration)` Returns the classpath entries this entry is composed of, or an empty collection if this entry is not a composite entry.
`String` `getTypeId()` Returns the unique identifier of the extension that contributed this classpath entry type, or `null` if this classpath entry type was not contributed.
`void` `initializeFrom(Element memento)` Initializes this runtime classpath entry from the given memento.
`boolean` `isComposite()` Returns whether this classpath entry is composed of other entries.

### Methods inherited from interface org.eclipse.jdt.launching.IRuntimeClasspathEntry

`getClasspathEntry, getClasspathProperty, getExternalAnnotationsPath, getJavaProject, getLocation, getMemento, getPath, getResource, getSourceAttachmentLocation, getSourceAttachmentPath, getSourceAttachmentRootLocation, getSourceAttachmentRootPath, getType, getVariableName, setClasspathProperty, setExternalAnnotationsPath, setSourceAttachmentPath, setSourceAttachmentRootPath`

### Method Detail

#### initializeFrom

    void initializeFrom(Element memento)
                 throws CoreException

Initializes this runtime classpath entry from the given memento.

Parameters:
  `memento` - memento created by a classpath entry of the same type
Throws:
  `CoreException` - if unable to initialize from the given memento

#### getTypeId

    String getTypeId()

Returns the unique identifier of the extension that contributed this classpath entry type, or `null` if this classpath entry type was not contributed.

Returns:
  the unique identifier of the extension that contributed this classpath entry type, or `null` if this classpath entry type was not contributed

#### isComposite

    boolean isComposite()

Returns whether this classpath entry is composed of other entries.

Returns:
  whether this classpath entry is composed of other entries

#### getRuntimeClasspathEntries

    IRuntimeClasspathEntry[] getRuntimeClasspathEntries(ILaunchConfiguration configuration)
                                                 throws CoreException

Returns the classpath entries this entry is composed of, or an empty collection if this entry is not a composite entry.

Parameters:
  `configuration` - the context (launch configuration) in which this runtime classpath entry is being queried for contained entries, possibly `null`
Returns:
  the classpath entries this entry is composed of, or an empty collection if this entry is not a composite entry
Throws:
  `CoreException` - if unable to retrieve contained entries

#### getName

    String getName()

Returns a human readable name for this classpath entry.

Returns:
  a human readable name for this classpath entry