Package org.eclipse.jdt.debug.ui.launchConfigurations

## Class JavaLaunchShortcut

- java.lang.Object
- - org.eclipse.jdt.debug.ui.launchConfigurations.JavaLaunchShortcut

All Implemented Interfaces:
  `ILaunchShortcut`, `ILaunchShortcut2`

Direct Known Subclasses:
  `JavaAppletLaunchShortcut`, `JavaApplicationLaunchShortcut`

    public abstract class JavaLaunchShortcut
    extends Object
    implements ILaunchShortcut2

Common behavior for Java launch shortcuts

This class may be sub-classed.

Since:
  3.3

### Constructor Summary

Constructors
`JavaLaunchShortcut()`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`protected ILaunchConfiguration` `chooseConfiguration​(List<ILaunchConfiguration> configList)` Returns a configuration from the given collection of configurations that should be launched, or `null` to cancel.
`protected IType` `chooseType​(IType[] types, String title)` Prompts the user to select a type from the given types.
`protected abstract ILaunchConfiguration` `createConfiguration​(IType type)` Creates and returns a new configuration based on the specified type.
`protected ILaunchConfiguration` `findLaunchConfiguration​(IType type, ILaunchConfigurationType configType)` Finds and returns an existing configuration to re-launch for the given type, or `null` if there is no existing configuration.
`protected abstract IType[]` `findTypes​(Object[] elements, IRunnableContext context)` Finds and returns the types in the given collection of elements that can be launched.
`protected abstract ILaunchConfigurationType` `getConfigurationType()` Returns the type of configuration this shortcut is applicable to.
`protected abstract String` `getEditorEmptyMessage()` Returns an error message to use when the editor does not contain a type that can be launched.
`IResource` `getLaunchableResource​(ISelection selection)`
`IResource` `getLaunchableResource​(IEditorPart editorpart)`
`ILaunchConfiguration[]` `getLaunchConfigurations​(ISelection selection)`
`ILaunchConfiguration[]` `getLaunchConfigurations​(IEditorPart editorpart)`
`protected abstract String` `getSelectionEmptyMessage()` Returns an error message to use when the selection does not contain a type that can be launched.
`protected Shell` `getShell()` Convenience method to return the active workbench window shell.
`protected abstract String` `getTypeSelectionTitle()` Returns a title for a type selection dialog used to prompt the user when there is more than one type that can be launched.
`protected void` `launch​(IType type, String mode)` Launches the given type in the specified mode.
`void` `launch​(ISelection selection, String mode)`
`void` `launch​(IEditorPart editor, String mode)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### JavaLaunchShortcut

    public JavaLaunchShortcut()

### Method Detail

#### getConfigurationType

    protected abstract ILaunchConfigurationType getConfigurationType()

Returns the type of configuration this shortcut is applicable to.

Returns:
  the type of configuration this shortcut is applicable to

#### createConfiguration

    protected abstract ILaunchConfiguration createConfiguration​(IType type)

Creates and returns a new configuration based on the specified type.

Parameters:
  `type` - type to create a launch configuration for
Returns:
  launch configuration configured to launch the specified type

#### findTypes

    protected abstract IType[] findTypes​(Object[] elements,
                                         IRunnableContext context)
                                  throws InterruptedException,
                                         CoreException

Finds and returns the types in the given collection of elements that can be launched.

Parameters:
  `elements` - scope to search for types that can be launched
  `context` - progress reporting context
Returns:
  collection of types that can be launched, possibly empty
Throws:
  `InterruptedException` - if the search is canceled
  `CoreException` - if the search fails

#### getTypeSelectionTitle

    protected abstract String getTypeSelectionTitle()

Returns a title for a type selection dialog used to prompt the user when there is more than one type that can be launched.

Returns:
  type selection dialog title

#### getEditorEmptyMessage

    protected abstract String getEditorEmptyMessage()

Returns an error message to use when the editor does not contain a type that can be launched.

Returns:
  error message when editor cannot be launched

#### getSelectionEmptyMessage

    protected abstract String getSelectionEmptyMessage()

Returns an error message to use when the selection does not contain a type that can be launched.

Returns:
  error message when selection cannot be launched

#### chooseType

    protected IType chooseType​(IType[] types,
                               String title)

Prompts the user to select a type from the given types.

Parameters:
  `types` - the types to choose from
  `title` - the selection dialog title
Returns:
  the selected type or `null` if none.

#### launch

    protected void launch​(IType type,
                          String mode)

Launches the given type in the specified mode.

Parameters:
  `type` - type to launch
  `mode` - launch mode
Since:
  3.5

#### findLaunchConfiguration

    protected ILaunchConfiguration findLaunchConfiguration​(IType type,
                                                           ILaunchConfigurationType configType)

Finds and returns an existing configuration to re-launch for the given type, or `null` if there is no existing configuration.

Parameters:
  `type` - the `IType` to try and find the `ILaunchConfiguration` for
  `configType` - the `ILaunchConfigurationType` to try and narrow down the search
Returns:
  a configuration to use for launching the given type or `null` if none

#### chooseConfiguration

    protected ILaunchConfiguration chooseConfiguration​(List<ILaunchConfiguration> configList)

Returns a configuration from the given collection of configurations that should be launched, or `null` to cancel. Default implementation opens a selection dialog that allows the user to choose one of the specified launch configurations. Returns the chosen configuration, or `null` if the user cancels.

Parameters:
  `configList` - list of configurations to choose from
Returns:
  configuration to launch or `null` to cancel

#### getShell

    protected Shell getShell()

Convenience method to return the active workbench window shell.

Returns:
  active workbench window shell

#### launch

    public void launch​(IEditorPart editor,
                       String mode)

Specified by:
  `launch` in interface `ILaunchShortcut`

#### launch

    public void launch​(ISelection selection,
                       String mode)

Specified by:
  `launch` in interface `ILaunchShortcut`

#### getLaunchableResource

    public IResource getLaunchableResource​(IEditorPart editorpart)

Specified by:
  `getLaunchableResource` in interface `ILaunchShortcut2`

#### getLaunchableResource

    public IResource getLaunchableResource​(ISelection selection)

Specified by:
  `getLaunchableResource` in interface `ILaunchShortcut2`

#### getLaunchConfigurations

    public ILaunchConfiguration[] getLaunchConfigurations​(IEditorPart editorpart)

Specified by:
  `getLaunchConfigurations` in interface `ILaunchShortcut2`

#### getLaunchConfigurations

    public ILaunchConfiguration[] getLaunchConfigurations​(ISelection selection)

Specified by:
  `getLaunchConfigurations` in interface `ILaunchShortcut2`