Overview

# Introduction

This document lists changes made to the Debugger Core APIs. Please ask on the `nbdev@netbeans.org` mailing list if you have any questions about the details of a change, or are wondering how to convert existing code to be compatible.

# Index of APIs

- Debugger Core API

# Incompatible changes by date

Fuller descriptions of all changes can be found below (follow links).

Not all deprecations are listed here, assuming that the deprecated APIs continue to essentially work. For a full deprecation list, please consult the Javadoc.

# All changes by date

- (Aug 24 '05) Debugger actions can be posted asynchronously.
- (Nov 23 '04) final modifier removed from ActionsProviderSupport.isEnabled.
- (May 13 '04) Support for Breakpoints Group added.
- (May 9 '04) Support for ToggleBreakpointAction added, and some bugfix of Debugger Actions support API.
- (May 3 '04) Support for synchronouous start of DebuggerEngines added.
- (Apr 29 '04) Support for "dual" actions added.

# Changes by version

These API specification versions may be used to indicate that a module requires a certain API feature in order to function. For example, if you see here a feature you need which is labelled `1.20`, your manifest should contain in its main attributes the line:

    OpenIDE-Module-Module-Dependencies: org.netbeans.api.debugger/1 > 1.20

- (1.5) Debugger actions can be posted asynchronously.
- (1.3) final modifier removed from ActionsProviderSupport.isEnabled.

# Changes by affected class

# Details of all changes by API and date

## Debugger Core API

### Debugger actions can be posted asynchronously.

Aug 24 '05; API spec. version: 1.5; made by: mentlicher

Added methods: `ActionsManager.postAction(Object)`, `ActionsProvider.postAction(Object, Runnable)`, These can be used to call and implement asynchronous actions.

Compatibility:

Compatile change.

### final modifier removed from ActionsProviderSupport.isEnabled.

Nov 23 '04; API spec. version: 1.3; made by: jjancura

Having final modifier for this method can be too obstructive in some cases. I had a problem writing tests.

Compatibility:

Compatile change.

### Support for Breakpoints Group added.

May 13 '04; made by: jjancura

Breakpoint.getGroupName (), Breakpoint.setGroupName () methods were added. Breakpoint.PROP_GROUP_NAME has been added.

Compatibility:

Compatile change.

### Support for ToggleBreakpointAction added, and some bugfix of Debugger Actions support API.

May 9 '04; made by: jjancura

`ActionsManager.doAction (...)`, `ActionsProvider.doAction (...)` and `ActionsManagerListener.actionPefrormed (...)` methods will not return boolean any longer. This parameter was unusefull and it was not posible to implement it in some meaningful way.

Compatibility:

Incompatile change.

### Support for synchronouous start of DebuggerEngines added.

May 3 '04; made by: jjancura

`void DebuggerManager.startDebugging (DebuggerInfo)` has been changed to `DebuggerEngine[] DebuggerManager.startDebugging (DebuggerInfo)`. So it returns array of all DebuggerEngines created for given DebuggerInfo.

Compatibility:

Compatile change.

### Support for "dual" actions added.

Apr 29 '04; made by: jjancura
According to Debugger UI Specification there are some actions that have two different meanings. for example Step Into action. When some Java Debugger session is running it steps into the current method. But if there is no session running it should start a new session for Main Project and stop in its main method. Thats why we have to update support for debugger actions. Changes made:

- Support methods for managing and sharing actions has been moved from DebuggerEngine to new class ActionsManager.
- Debugger Action Constants has been move from DebuggerEngine to ActionsManager.
- New common ancestor of DebuggerManager, Session and Debugger Engine has been introduced - LookupProvider. From now you can register the same action in differen context levels.
- DebuggerManager.getActionsManager () method has been added. You can register ActionProviders for default root context (managed by DebuggerManager). These actions can be in enabled state even if there is no current DebuggerEngine!
- DebuggerEngine parameter of method ActionsProvider.doAction (...) has been removed.

Compatibility:

Incompatile changes (additions / removals).

Built on December 7 2006. | Portions Copyright 1997-2005 Sun Microsystems, Inc. All rights reserved.