Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jdt.launching
Interface IRuntimeClasspathEntry

All Known Subinterfaces:
  IRuntimeClasspathEntry2

public interface IRuntimeClasspathEntry

Represents an entry on a runtime classpath. A runtime classpath entry may refer to one of the following:

- A Java project (type `PROJECT`) - a project entry refers to all of the built classes in a project, and resolves to the output location(s) of the associated Java project.
- An archive (type `ARCHIVE`) - an archive refers to a jar, zip, or folder in the workspace or in the local file system containing class files. An archive may have attached source.
- A variable (type `VARIABLE`) - a variable refers to a classpath variable, which may refer to a jar.
- A library (type `CONTAINER`) - a container refers to classpath container variable which refers to a collection of archives derived dynamically, on a per project basis.
- A contributed classpath entry (type `OTHER`) - a contributed classpath entry is an extension contributed by a plug-in. The resolution of a contributed classpath entry is client defined. See `IRuntimeClasspathEntry2`.

Clients may implement this interface for contributed a classpath entry types (i.e. type `OTHER`). Note, contributed classpath entries are new in 3.0, and are only intended to be contributed by the Java debugger.

Since:
  2.0
See Also:
  `IRuntimeClasspathEntry2`

Field Summary
`static int` | `ARCHIVE` Type identifier for archive entries.
`static int` | `BOOTSTRAP_CLASSES` Classpath property identifier for entries that should appear on the bootstrap path explicitly.
`static int` | `CONTAINER` Type identifier for container entries.
`static int` | `OTHER` Type identifier for contributed entries.
`static int` | `PROJECT` Type identifier for project entries.
`static int` | `STANDARD_CLASSES` Classpath property identifier for entries that appear on the bootstrap path by default.
`static int` | `USER_CLASSES` Classpath property identifier for entries that should appear on the user classpath.
`static int` | `VARIABLE` Type identifier for variable entries.

Method Summary
`IClasspathEntry` | `getClasspathEntry()` Returns a classpath entry equivalent to this runtime classpath entry, or `null` if none.
`int` | `getClasspathProperty()` Returns a constant indicating where this entry should appear on the runtime classpath by default.
`IJavaProject` | `getJavaProject()` Returns the Java project associated with this runtime classpath entry or `null` if none.
`String` | `getLocation()` Returns an absolute path in the local file system for this entry, or `null` if none, or if this entry is of type `CONTAINER`.
`String` | `getMemento()` Returns a memento for this classpath entry.
`IPath` | `getPath()` Returns the path associated with this entry, or `null` if none.
`IResource` | `getResource()` Returns the resource associated with this entry, or `null` if none.
`String` | `getSourceAttachmentLocation()` Returns an absolute path in the local file system for the source attachment associated with this entry entry, or `null` if none.
`IPath` | `getSourceAttachmentPath()` Returns the path to the source archive associated with this entry, or `null` if this classpath entry has no source attachment.
`String` | `getSourceAttachmentRootLocation()` Returns a path relative to this entry's source attachment path for the root location containing source, or `null` if none.
`IPath` | `getSourceAttachmentRootPath()` Returns the path within the source archive where package fragments are located.
`int` | `getType()` Returns this classpath entry's type.
`String` | `getVariableName()` Returns the first segment of the path associated with this entry, or `null` if this entry is not of type `VARIABLE` or `CONTAINER`.
`void` | `setClasspathProperty(int location)` Sets whether this entry should appear on the bootstrap classpath, the user classpath, or whether this entry is a standard bootstrap entry that does not need to appear on the classpath.
`void` | `setSourceAttachmentPath(IPath path)` Sets the path to the source archive associated with this entry, or `null` if this classpath entry has no source attachment.
`void` | `setSourceAttachmentRootPath(IPath path)` Sets the path within the source archive where package fragments are located.

Field Detail

### PROJECT

    public static final int PROJECT

  Type identifier for project entries.

  See Also:
    Constant Field Values

### ARCHIVE

    public static final int ARCHIVE

  Type identifier for archive entries.

  See Also:
    Constant Field Values

### VARIABLE

    public static final int VARIABLE

  Type identifier for variable entries.

  See Also:
    Constant Field Values

### CONTAINER

    public static final int CONTAINER

  Type identifier for container entries.

  See Also:
    Constant Field Values

### OTHER

    public static final int OTHER

  Type identifier for contributed entries.

  Since:
    3.0
  See Also:
    Constant Field Values

### STANDARD_CLASSES

    public static final int STANDARD_CLASSES

  Classpath property identifier for entries that appear on the bootstrap path by default.

  See Also:
    Constant Field Values

### BOOTSTRAP_CLASSES

    public static final int BOOTSTRAP_CLASSES

  Classpath property identifier for entries that should appear on the bootstrap path explicitly.

  See Also:
    Constant Field Values

### USER_CLASSES

    public static final int USER_CLASSES

  Classpath property identifier for entries that should appear on the user classpath.

  See Also:
    Constant Field Values

Method Detail

### getType

    public int getType()

  Returns this classpath entry's type. The type of a runtime classpath entry is identified by one of the following constants:
  - `PROJECT`
  - `ARCHIVE`
  - `VARIABLE`
  - `CONTAINER`
  - `OTHER`

  Since 3.0, a type of `OTHER` may be returned.

  Returns:
    this classpath entry's type

### getMemento

    public String getMemento()
                      throws CoreException

  Returns a memento for this classpath entry.

  Since 3.0, the memento for a contributed classpath entry (i.e. of type `OTHER`), must be in the form of an XML document, with the following element structure:

  The `id` attribute is the unique identifier of the extension that contributed this runtime classpath entry type, via the extension point `org.eclipse.jdt.launching.runtimeClasspathEntries`. The `memento` element will be used to initialize a restored runtime classpath entry, via the method `IRuntimeClasspathEntry2.initializeFrom(Element memento)`. The attributes of the `memento` element are client defined.

  Returns:
    a memento for this classpath entry
  Throws:
    `CoreException` - if an exception occurs generating a memento

### getPath

    public IPath getPath()

  Returns the path associated with this entry, or `null` if none. The format of the path returned depends on this entry's type:
  - `PROJECT` - a workspace relative path to the associated project.
  - `ARCHIVE` - the absolute path of the assoicated archive, which may or may not be in the workspace.
  - `VARIABLE` - the path corresponding to the associated classpath variable entry.
  - `CONTAINER` - the path corresponding to the associated classpath container variable entry.
  - `OTHER` - the path returned is client defined.

  Since 3.0, this method may return `null`.

  Returns:
    the path associated with this entry, or `null`
  See Also:
    `IClasspathEntry.getPath()`

### getResource

    public IResource getResource()

  Returns the resource associated with this entry, or `null` if none. A project, archive, or folder entry may be associated with a resource.

  Returns:
    the resource associated with this entry, or `null`

### getSourceAttachmentPath

    public IPath getSourceAttachmentPath()

  Returns the path to the source archive associated with this entry, or `null` if this classpath entry has no source attachment.

  Only archive and variable entries may have source attachments. For archive entries, the path (if present) locates a source archive. For variable entries, the path (if present) has an analogous form and meaning as the variable path, namely the first segment is the name of a classpath variable.

  Returns:
    the path to the source archive, or `null` if none

### setSourceAttachmentPath

    public void setSourceAttachmentPath(IPath path)

  Sets the path to the source archive associated with this entry, or `null` if this classpath entry has no source attachment.

  Only archive and variable entries may have source attachments. For archive entries, the path refers to a source archive. For variable entries, the path has an analogous form and meaning as the variable path, namely the first segment is the name of a classpath variable.

  Note that an empty path (`Path.EMPTY`) is considered `null`.

  Parameters:
    `path` - the path to the source archive, or `null` if none

### getSourceAttachmentRootPath

    public IPath getSourceAttachmentRootPath()

  Returns the path within the source archive where package fragments are located. An empty path indicates that packages are located at the root of the source archive. Returns a non-`null` value if and only if `getSourceAttachmentPath` returns a non-`null` value.

  Returns:
    root path within the source archive, or `null` if not applicable

### setSourceAttachmentRootPath

    public void setSourceAttachmentRootPath(IPath path)

  Sets the path within the source archive where package fragments are located. A root path indicates that packages are located at the root of the source archive. Only valid if a source attachment path is also specified.

  Note that an empty path (`Path.EMPTY`) is considered `null`.

  Parameters:
    `path` - root path within the source archive, or `null`

### getClasspathProperty

    public int getClasspathProperty()

  Returns a constant indicating where this entry should appear on the runtime classpath by default. The value returned is one of the following:
  - `STANDARD_CLASSES` - a standard entry does not need to appear on the runtime classpath
  - `BOOTSTRAP_CLASSES` - a bootstrap entry should appear on the boot path
  - `USER_CLASSES` - a user entry should appear on the path containing user or application classes

  Returns:
    where this entry should appear on the runtime classpath

### setClasspathProperty

    public void setClasspathProperty(int location)

  Sets whether this entry should appear on the bootstrap classpath, the user classpath, or whether this entry is a standard bootstrap entry that does not need to appear on the classpath. The location is one of:
  - `STANDARD_CLASSES` - a standard entry does not need to appear on the runtime classpath
  - `BOOTSTRAP_CLASSES` - a bootstrap entry should appear on the boot path
  - `USER_CLASSES` - a user entry should appear on the path conatining user or application classes

  Parameters:
    `location` - a classpat property constant

### getLocation

    public String getLocation()

  Returns an absolute path in the local file system for this entry, or `null` if none, or if this entry is of type `CONTAINER`.

  Returns:
    an absolute path in the local file system for this entry, or `null` if none

### getSourceAttachmentLocation

    public String getSourceAttachmentLocation()

  Returns an absolute path in the local file system for the source attachment associated with this entry entry, or `null` if none.

  Returns:
    an absolute path in the local file system for the source attachment associated with this entry entry, or `null` if none

### getSourceAttachmentRootLocation

    public String getSourceAttachmentRootLocation()

  Returns a path relative to this entry's source attachment path for the root location containing source, or `null` if none.

  Returns:
    a path relative to this entry's source attachment path for the root location containing source, or `null` if none

### getVariableName

    public String getVariableName()

  Returns the first segment of the path associated with this entry, or `null` if this entry is not of type `VARIABLE` or `CONTAINER`.

  Returns:
    the first segment of the path associated with this entry, or `null` if this entry is not of type `VARIABLE` or `CONTAINER`

### getClasspathEntry

    public IClasspathEntry getClasspathEntry()

  Returns a classpath entry equivalent to this runtime classpath entry, or `null` if none.

  Since 3.0, this method may return `null`.

  Returns:
    a classpath entry equivalent to this runtime classpath entry, or `null`
  Since:
    2.1

### getJavaProject

    public IJavaProject getJavaProject()

  Returns the Java project associated with this runtime classpath entry or `null` if none. Runtime classpath entries of type `CONTAINER` may be associated with a project for the purposes of resolving the entries in a container.

  Returns:
    the Java project associated with this runtime classpath entry or `null` if none
  Since:
    3.0

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) IBM Corp. and others 2000, 2004. All Rights Reserved.