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
Constructor
Description
`JavaLaunchShortcut()`

## Method Summary

Modifier and Type
Method
Description
`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 Details

### JavaLaunchShortcut

public JavaLaunchShortcut()

## Method Details

### 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`