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

## org.eclipse.debug.core.model
Interface ILaunchConfigurationDelegate2

All Superinterfaces:
  ILaunchConfigurationDelegate

All Known Implementing Classes:
  LaunchConfigurationDelegate

public interface ILaunchConfigurationDelegate2
extends ILaunchConfigurationDelegate

Optional enhancements to the launch configuration delegate interface. Allows launch delegates to abort a launch, build relevant projects in the workspace before a launch, and create the launch object to be used in a launch.

Clients implementing `ILaunchConfigurationDelegate` may also implement this interface.

Since:
  3.0

Method Summary
`boolean` | `buildForLaunch(ILaunchConfiguration configuration, String mode, IProgressMonitor monitor)` Optionally performs any required building before launching the given configuration in the specified mode, and returns whether the debug platform should perform an incremental workspace build before the launch continues.
`boolean` | `finalLaunchCheck(ILaunchConfiguration configuration, String mode, IProgressMonitor monitor)` Returns whether a launch should proceed.
`ILaunch` | `getLaunch(ILaunchConfiguration configuration, String mode)` Returns a launch object to use when launching the given launch configuration in the given mode, or `null` if a new default launch object should be created by the debug platform.
`boolean` | `preLaunchCheck(ILaunchConfiguration configuration, String mode, IProgressMonitor monitor)` Returns whether a launch should proceed.

Methods inherited from interface org.eclipse.debug.core.model.ILaunchConfigurationDelegate
`launch`

Method Detail

### getLaunch

    public ILaunch getLaunch(ILaunchConfiguration configuration,
                             String mode)
                      throws CoreException

  Returns a launch object to use when launching the given launch configuration in the given mode, or `null` if a new default launch object should be created by the debug platform. If a launch object is returned, its launch mode must match that of the mode specified in this method call.

  Parameters:
    `configuration` - the configuration being launched
    `mode` - the mode the configuration is being launched in
  Returns:
    a launch object or `null`
  Throws:
    `CoreException` - if unable to launch

### buildForLaunch

    public boolean buildForLaunch(ILaunchConfiguration configuration,
                                  String mode,
                                  IProgressMonitor monitor)
                           throws CoreException

  Optionally performs any required building before launching the given configuration in the specified mode, and returns whether the debug platform should perform an incremental workspace build before the launch continues. If `false` is returned the launch will proceed without further building, and if `true` is returned an incremental build will be performed on the workspace before launching.

  This method is only called if the launch is invoked with flag indicating building should take place before the launch. This is done via the method `ILaunchConfiguration.launch(String mode, IProgressMonitor monitor, boolean build)`.

  Parameters:
    `configuration` - the configuration being launched
    `mode` - the mode the configuration is being launched in
    `monitor` - progress monitor
  Returns:
    whether the debug platform should perform an incremental workspace build before the launch
  Throws:
    `CoreException` - if an exception occurrs while building

### finalLaunchCheck

    public boolean finalLaunchCheck(ILaunchConfiguration configuration,
                                    String mode,
                                    IProgressMonitor monitor)
                             throws CoreException

  Returns whether a launch should proceed. This method is called after `preLaunchCheck()` and `buildForLaunch()` providing a final chance for this launch delegate to abort a launch if required. For example, a delegate could cancel a launch if it discovered compilation errors that would prevent the launch from succeeding.

  Parameters:
    `configuration` - the configuration being launched
    `mode` - launch mode
    `monitor` - progress monitor
  Returns:
    whether the launch should proceed
  Throws:
    `CoreException` - if an exception occurs during final checks

### preLaunchCheck

    public boolean preLaunchCheck(ILaunchConfiguration configuration,
                                  String mode,
                                  IProgressMonitor monitor)
                           throws CoreException

  Returns whether a launch should proceed. This method is called first in the launch sequence providing an opportunity for this launch delegate to abort the launch.

  Parameters:
    `configuration` - configuration being lanuched
    `mode` - launch mode
    `monitor` - progress monitor
  Returns:
    whether the launch should proceed
  Throws:
    `CoreException` - if an exception occurs while performing pre launch checks

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

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.