Package org.eclipse.debug.ui.contexts

## Interface ISuspendTrigger

    public interface ISuspendTrigger

A suspend trigger notifies listeners when a launch suspends at a context where debugging should begin. For example, when a breakpoint is encountered.

The debug platform retrieves a suspend trigger from each registered launch and listens to suspend notifications in order to initiate debug sessions - i.e. switch to the desired perspective, activate the debug view, etc., based on user preferences. The debug platform asks each registered launch for its suspend trigger adapter or registers with the launch itself if it implements `ISuspendTrigger`.

It is important that the same instance of a suspend trigger adapter is returned each time it is asked for the same object, such that listeners can be added and removed from the same instance. When a listener is removed and no more listeners are registered, this trigger can be disposed or replaced with a new adapter the next time one is requested.

Clients may implement this interface. The debug platform provides a suspend trigger adapter for implementations of `ILaunch`. The implementation provided by the platform is based on a standard debug model that fires debug events. Clients wishing to provide their own implementation must also provide their own implementation of `ILaunch` (or subclass of `Launch`), in order to register their suspend trigger adapter.

Since:
  3.3
See Also:
  `ISuspendTriggerListener`

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `addSuspendTriggerListener​(ISuspendTriggerListener listener)` Registers the given listener for suspend notifications.
`void` `removeSuspendTriggerListener​(ISuspendTriggerListener listener)` Unregisters the given listener for suspend notifications.

### Method Detail

#### addSuspendTriggerListener

    void addSuspendTriggerListener​(ISuspendTriggerListener listener)

Registers the given listener for suspend notifications.

Parameters:
  `listener` - suspend listener

#### removeSuspendTriggerListener

    void removeSuspendTriggerListener​(ISuspendTriggerListener listener)

Unregisters the given listener for suspend notifications.

Parameters:
  `listener` - suspend listener