
org.eclipse.debug.ui.actions.ILaunchable Maven / Gradle / Ivy
Show all versions of org.eclipse.debug.ui Show documentation
/*******************************************************************************
* Copyright (c) 2000, 2012 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.debug.ui.actions;
/**
* Interface used to tag objects as launchable. Objects that provide
* an adapter of this type will be considered by the contextual
* launch support.
*
* The debug platform uses the {@link ILaunchable} interface as a tag for
* objects that can be launched via the context menu 'Run As / Debug As' actions
* and run/debug tool bar buttons. The platform checks if an {@link ILaunchable}
* adapter is available from the selection/active editor to determine if it
* should be considered for launching. However, the platform never actually
* retrieves the adapter or calls any methods on it (the interface is, in fact, empty).
*
* The debug platform performs the following test:
*
* -
*
Platform.getAdapterManager().hasAdapter(X, ILaunchable.class.getName());
*
*
*
* Thus objects that can be launched need to register {@link ILaunchable} adapters, but
* don't have to provide implementations. There is also no harm in implementing the interface
* or providing the adapter. For example, JDT contributes an adapter as follows. Although
* no adapter is actually provided the platform will answer true
to
* hasAdapter(...)
.
*
*
*
*
*
*
*
*
* Clients may contribute an adapter of this type for launchable objects
* via the org.eclipse.core.runtime.adapters
extension
* point. A factory and implementation of this interface are not actually
* required.
*
*
* Clients that need to check for presence of launchable adapter using
* standard expression mechanism, should use a property tester as follows:
*
*
*
*
*
*
*
*
*
* @see org.eclipse.debug.ui.actions.ContextualLaunchAction
* @since 3.0
*/
public interface ILaunchable {
}