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:
  • Method Details

    • 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