Changes required when adopting 3.2 mechanisms and APIs

This section describes changes that are required if you are trying to change your 3.1 plug-in to adopt the 3.2 mechanisms and APIs.

Launch configurations

Launch configuration resource mapping

Eclipse 3.2 provides new infrastructure for associating launch configurations with resources. This mapping allows the platform to perform resource based filtering on launch configurations and allows the platform to optionally delete launch configurations when an associated project is deleted. The launch dialog has been enhanced to support a set of filters to optionally hide configurations associated with closed and deleted projects. As well, the launch dialog supports filtering based on selected working sets in the active workbench window, which can also be selected in the launch dialog.

It is a client responsibility to manage the resource mapping for launch configurations. API has been added to ILaunchConfigurationWorkingCopy to set the resources associated with a configuration, and API has been added to ILaunchConfiguration to get the resources associated with a configuration. For example, launch tabs, launch shortcuts and refactoring participants should be considered when migrating. Code that creates or modifies launch configurations should also update resource mappings.

Launch configuration migration support

Eclipse 3.2 provides new infrastructure for migrating launch configurations to be compatible with new tooling. For example, in Eclipse 3.2, support has been added to perform resource based filter on launch configurations. Launch configurations need to be upgraded to provide resource mappings to leverage this new feature. Users can manually migrate launch configurations in their workspace from the Run/Debug > Launching > Launch Configurations preference page, by pressing the Migrate button.

A new optional migration delegate attribute has been added to the launchConfigurationTypes extension point, specifying a class that implements the new interface ILaunchConfigurationMigrationDelegate. A migration delegate is responsible for identifying migration candidates and migrating them.

Launch Modes

A new optional attribute has been added to the launchModes extension point to properly support the externalization of cascade launch menu action labels. Clients that contribute launch modes should specify the proper label to use for launch cascade menus such as "Run As". The new attribute is named launchAsLabel. Proper labels have been provided by the platform for run, debug and profile launch modes. For backwards compatibility, when the new attribute is unspecified for a launch mode, the cascade menu labels are generated as before, via MessageFormat with "{0} As". See related bug 105235.

[No items. See the corresponding section of the 3.1 Migration Guide for format.]