| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- | |
| Licensed to the Apache Software Foundation (ASF) under one | |
| or more contributor license agreements. See the NOTICE file | |
| distributed with this work for additional information | |
| regarding copyright ownership. The ASF licenses this file | |
| to you under the Apache License, Version 2.0 (the | |
| "License"); you may not use this file except in compliance | |
| with the License. You may obtain a copy of the License at | |
| http://www.apache.org/licenses/LICENSE-2.0 | |
| Unless required by applicable law or agreed to in writing, | |
| software distributed under the License is distributed on an | |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
| KIND, either express or implied. See the License for the | |
| specific language governing permissions and limitations | |
| under the License. | |
| --> | |
| <?xml-stylesheet href="../../nbbuild/javadoctools/apichanges.xsl" type="text/xsl"?> | |
| <!DOCTYPE apichanges PUBLIC "-//NetBeans//DTD API changes list 1.0//EN" "../../nbbuild/javadoctools/apichanges.dtd"> | |
| <!-- INFO FOR PEOPLE ADDING CHANGES: | |
| [most of contents snipped - see openide's apichanges for how-to instructions] | |
| <change> | |
| <api name="compiler"/> | |
| <summary>Some brief description here, can use <b>XHTML</b></summary> | |
| <version major="1" minor="99"/> | |
| <date day="13" month="6" year="2001"/> | |
| <author login="jrhacker"/> | |
| <compatibility addition="yes"/> | |
| <description> | |
| The main description of the change here. | |
| Again can use full <b>XHTML</b> as needed. | |
| </description> | |
| <class package="org.openide.compiler" name="DoWhatIWantCompiler"/> | |
| <issue number="14309"/> | |
| </change> | |
| --> | |
| <apichanges> | |
| <!-- First, a list of API names you may use: --> | |
| <apidefs> | |
| <apidef name="DebuggerCoreAPI">Debugger Core API</apidef> | |
| </apidefs> | |
| <!-- ACTUAL CHANGES BEGIN HERE: --> | |
| <changes> | |
| <change id="Watch_Pin"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>API for pinned Watches</summary> | |
| <version major="1" minor="54"/> | |
| <date day="18" month="4" year="2016"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes" deletion="no"/> | |
| <description> | |
| A <code>Watch.Pin</code> base interface introduced as a basis | |
| for specific platform-dependent and location-dependent implementations. | |
| <code>DebuggerManager.createPinnedwatch()</code> introduced. | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="DebuggerManager"/> | |
| <class package="org.netbeans.api.debugger" name="Watch"/> | |
| <issue number="258651"/> | |
| </change> | |
| <change id="Watch_disableable"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>API for changing enabled state of a Watch</summary> | |
| <version major="1" minor="36"/> | |
| <date day="27" month="3" year="2012"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes" deletion="no"/> | |
| <description> | |
| Two method are added to Watch class: <code>isEnabled()</code> and <code>setEnabled(boolean)</code>. | |
| When the enabled state changes, <code>PROP_ENABLED</code> event is fired. | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="Watch"/> | |
| <issue number="209783"/> | |
| </change> | |
| <change id="generification"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Use of some generic types in API; <code>ContextProvider</code> implemented more broadly; <code>DebuggerManager.join</code></summary> | |
| <version major="1" minor="13"/> | |
| <date day="1" month="3" year="2008"/> | |
| <author login="jglick"/> | |
| <compatibility binary="compatible" source="incompatible" modification="yes" semantic="compatible"> | |
| <p> | |
| As with any generification, it is possible for old code to no longer compile. E.g. | |
| </p> | |
| <pre>List<X> = lookup.lookup(folder, X.class);</pre> | |
| <p> | |
| must be changed to: | |
| </p> | |
| <pre>List<? extends X> = lookup.lookup(folder, X.class);</pre> | |
| </compatibility> | |
| <description> | |
| <p> | |
| <code>ContextProvider</code> is now properly generified, and implemented also by: | |
| </p> | |
| <ul> | |
| <li><code>DebuggerEngine</code></li> | |
| <li><code>DebuggerInfo</code></li> | |
| <li><code>DebuggerManager</code></li> | |
| <li><code>Session</code></li> | |
| </ul> | |
| <p> | |
| The new method <code>DebuggerManager.join</code> can be used to merge lookup lists easily. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="DebuggerEngine"/> | |
| <class package="org.netbeans.api.debugger" name="DebuggerInfo"/> | |
| <class package="org.netbeans.api.debugger" name="DebuggerManager"/> | |
| <class package="org.netbeans.api.debugger" name="Session"/> | |
| <issue number="128229"/> | |
| </change> | |
| <change id="debugger-dual-actions"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Support for "dual" actions added.</summary> | |
| <date day="29" month="4" year="2004"/> | |
| <author login="jjancura"/> | |
| <compatibility binary="incompatible" source="incompatible" addition="yes" deletion="yes" modification="yes"/> | |
| <description> | |
| 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: | |
| <ul> | |
| <li> | |
| Support methods for managing and sharing actions has been moved from DebuggerEngine | |
| to new class ActionsManager. | |
| </li> | |
| <li> | |
| Debugger Action Constants has been move from DebuggerEngine to ActionsManager. | |
| </li> | |
| <li> | |
| 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. | |
| </li> | |
| <li> | |
| 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! | |
| </li> | |
| <li> | |
| DebuggerEngine parameter of method ActionsProvider.doAction (...) has been removed. | |
| </li> | |
| </ul> | |
| </description> | |
| </change> | |
| <change id="DebuggerEngine-synch-start"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Support for synchronouous start of DebuggerEngines added.</summary> | |
| <date day="3" month="5" year="2004"/> | |
| <author login="jjancura"/> | |
| <compatibility binary="incompatible" source="compatible" modification="yes"/> | |
| <description> | |
| <p> | |
| <code>void DebuggerManager.startDebugging (DebuggerInfo)</code> has been changed to <code>DebuggerEngine[] | |
| DebuggerManager.startDebugging (DebuggerInfo)</code>. So it returns array of all DebuggerEngines | |
| created for given DebuggerInfo. | |
| </p> | |
| </description> | |
| </change> | |
| <change id="ToggleBreakpointAction-etc."> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Support for ToggleBreakpointAction added, and some bugfix of Debugger Actions support API.</summary> | |
| <date day="9" month="5" year="2004"/> | |
| <author login="jjancura"/> | |
| <compatibility binary="incompatible" source="incompatible" modification="yes"/> | |
| <description> | |
| <p> | |
| <code>ActionsManager.doAction (...)</code>, | |
| <code>ActionsProvider.doAction (...)</code> and | |
| <code>ActionsManagerListener.actionPefrormed (...)</code> methods | |
| will not return boolean any longer. This parameter was unusefull and it was not posible to | |
| implement it in some meaningful way. | |
| </p> | |
| </description> | |
| </change> | |
| <change id="Breakpoint.group.name"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Support for Breakpoints Group added.</summary> | |
| <date day="13" month="5" year="2004"/> | |
| <author login="jjancura"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| Breakpoint.getGroupName (), Breakpoint.setGroupName () methods were added. | |
| Breakpoint.PROP_GROUP_NAME has been added. | |
| </p> | |
| </description> | |
| </change> | |
| <change id="ActionsProviderSupport.isEnabled-nonfinal"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>final modifier removed from ActionsProviderSupport.isEnabled.</summary> | |
| <version major="1" minor="3"/> | |
| <date day="23" month="11" year="2004"/> | |
| <author login="jjancura"/> | |
| <compatibility binary="compatible" source="compatible" modification="yes"/> | |
| <description> | |
| <p> | |
| Having final modifier for this method can be too obstructive in some cases. I had a problem writing tests. | |
| </p> | |
| </description> | |
| </change> | |
| <change id="ActionsManager-ActionsProvider.postAction"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Debugger actions can be posted asynchronously.</summary> | |
| <version major="1" minor="5"/> | |
| <date day="24" month="8" year="2005"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| Added methods: | |
| <code>ActionsManager.postAction(Object)</code>, | |
| <code>ActionsProvider.postAction(Object, Runnable)</code>, | |
| These can be used to call and implement asynchronous actions. | |
| </p> | |
| </description> | |
| </change> | |
| <change id="ActionsManager.ACTION_STEP_OPERATION"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Support for stepping over operations.</summary> | |
| <version major="1" minor="9"/> | |
| <date day="1" month="2" year="2007"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| Added fields: | |
| <code>ActionsManager.ACTION_STEP_OPERATION</code>, | |
| This constant is used in action performer which implements an operation step. | |
| </p> | |
| </description> | |
| </change> | |
| <change id="Breakpoint.validity"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Support for breakpoint validity.</summary> | |
| <version major="1" minor="10"/> | |
| <date day="21" month="2" year="2007"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| Added fields: | |
| <code>Breakpoint.PROP_VALIDITY</code> - | |
| This constant is used in property change events as a notification about change in validity.<br/> | |
| <code>Breakpoint.VALIDITY</code> - enumeration of constants for breakpoint validity. | |
| </p> | |
| <p> | |
| Added methods: | |
| <code>Breakpoint.getValidity()</code>, | |
| <code>Breakpoint.getValidityMessage()</code>, | |
| <code>Breakpoint.setValidity()</code> - validity management. | |
| </p> | |
| </description> | |
| </change> | |
| <change id="Breakpoint.hitCounts"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Add filter for hit counts to breakpoints.</summary> | |
| <version major="1" minor="11"/> | |
| <date day="21" month="5" year="2007"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| To be able to set breakpoint for number of iterations, we need to add a filter for hit counts into Breakpoint API. | |
| </p> | |
| <p> | |
| Added methods:<br/> | |
| <code>Breakpoint.getHitCountFilter()</code>, | |
| <code>Breakpoint.getHitCountFilteringStyle()</code>, | |
| <code>Breakpoint.setHitCountFilter()</code>. | |
| </p> | |
| <p> | |
| Added fields:<br/> | |
| <code>Breakpoint.PROP_HIT_COUNT_FILTER</code>, | |
| <code>Breakpoint.HIT_COUNT_FILTERING_STYLE</code>. | |
| </p> | |
| </description> | |
| </change> | |
| <change id="PathLookup"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Lookup improvements and service annotation registration.</summary> | |
| <version major="1" minor="16"/> | |
| <date day="2" month="2" year="2009"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| In order to be able to register debugger services on System FileSystem, | |
| which brings more flexibility and better performance (see also | |
| <a href="https://bz.apache.org/netbeans/show_bug.cgi?id=153093#desc7"/>), | |
| we add non-recursive content of <code>org.openide.util.Lookups.forPath()</code> | |
| into debugger lookup. | |
| Since debugger needs retrieve context-aware services from the lookup, | |
| <code>ContextAwareService</code> interface is introduced. | |
| </p> | |
| <p> | |
| Annotations are added for easy registration on module layers. | |
| <code>DebuggerServiceRegistration</code> to register implementations | |
| of interfaces, <code>*Provider.Registration</code> to register | |
| implementations of appropriate providers. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.spi.debugger" name="DebuggerServiceRegistration" /> | |
| <class package="org.netbeans.spi.debugger" name="ContextAwareService" /> | |
| <class package="org.netbeans.spi.debugger" name="ContextAwareSupport" /> | |
| <issue number="153093"/> | |
| <issue number="156687"/> | |
| </change> | |
| <change id="PropertiesInitializer"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Support for providing initial values of properties.</summary> | |
| <version major="1" minor="17"/> | |
| <date day="28" month="2" year="2009"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| Properties.Initializer interface introduced to provide initial | |
| values of properties. This is necessary when properties are | |
| accessed from more places and it's not practical to copy default | |
| values to every such location. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="Properties" /> | |
| <issue number="158775"/> | |
| </change> | |
| <change id="PropertiesListener"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Support for listening to changes of property values.</summary> | |
| <version major="1" minor="17"/> | |
| <date day="28" month="2" year="2009"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| addPropertyChangeListener() and removePropertyChangeListener() | |
| methods added to Properties class. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="Properties" /> | |
| <issue number="158907"/> | |
| </change> | |
| <change id="WatchesReordering"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Support for changing the order of watches.</summary> | |
| <version major="1" minor="22"/> | |
| <date day="15" month="12" year="2009"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| createWatch(int index, String expr) and reorderWatches(int[] permutation) | |
| methods added to DebuggerManager class.<br/> | |
| These methods are going to be called from WatchesTreeModel when | |
| watches are reordered. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="DebuggerManager" /> | |
| <issue number="178301"/> | |
| </change> | |
| <change id="LazyActionRegistration"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>A declarative mechanism to delay creation of action provider instance until a file with specific MIME type becomes active.</summary> | |
| <version major="1" minor="23"/> | |
| <date day="11" month="2" year="2010"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| ActionsProvider.Registration annotation is enhanced with two additional | |
| methods actions() and activateForMIMETypes(). Until a file with the | |
| listed MIME type is selected in the IDE, the appropriate actions provider | |
| is left disabled for the given list of actions, without instantiating the | |
| implementation class. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.spi.debugger" name="ActionsProvider" /> | |
| <issue number="177561"/> | |
| </change> | |
| <change id="AddWatchActionProvider"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>It's possible to override New Watch action with a session-specific provider.</summary> | |
| <version major="1" minor="24"/> | |
| <date day="23" month="2" year="2010"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| ActionsManager.ACTION_NEW_WATCH constant was added for use by session-specific | |
| provider of New Watch action. That action invokes an implementation | |
| of ActionsProvider that is registered for the active debugger session | |
| and contains ActionsManager.ACTION_NEW_WATCH action. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="ActionsManager" /> | |
| <issue number="180558"/> | |
| </change> | |
| <change id="BreakpointsGrouping"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Breakpoints group properties.</summary> | |
| <version major="1" minor="25"/> | |
| <date day="28" month="2" year="2010"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| Add Breakpoint.getGroupProperties() method, that returns an implementation | |
| of GroupProperties class with the relevant grouping information | |
| used by BreakpointsWindow to create hierarchy of breakpoint groups | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="Breakpoint" /> | |
| <issue number="179759"/> | |
| </change> | |
| <change id="DebuggerServiceRegistrations"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Allow multiple debugger service registrations and position order</summary> | |
| <version major="1" minor="28"/> | |
| <date day="10" month="9" year="2010"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| Allow to specify the order of the debugger service registry. | |
| For the need of being able to define multiple different | |
| registrations for a single instance, @DebuggerServiceRegistrations | |
| and ActionsProvider.Registrations annotations are introduced. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.spi.debugger" name="DebuggerServiceRegistration" /> | |
| <class package="org.netbeans.spi.debugger" name="DebuggerServiceRegistrations" /> | |
| <class package="org.netbeans.spi.debugger" name="ActionsProvider" /> | |
| <issue number="190080"/> | |
| </change> | |
| <change id="EvaluateAction"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Evaluate action is made generic, based on action providers.</summary> | |
| <version major="1" minor="29"/> | |
| <date day="12" month="11" year="2010"/> | |
| <author login="mentlicher"/> | |
| <compatibility binary="compatible" source="compatible" addition="yes"/> | |
| <description> | |
| <p> | |
| Evaluate action is moved from JPDA Debugger into Debugger Core UI module. | |
| ActionsManager.ACTION_EVALUATE constant was added for use by debugger-specific | |
| provider (ActionsProvider) of Evaluate action. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="ActionsManager" /> | |
| <issue number="191394"/> | |
| </change> | |
| <change id="DependentBreakpoints"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>Added a possibility to enable/disable other breakpoints when one is hit.</summary> | |
| <version major="1" minor="35"/> | |
| <date day="19" month="12" year="2011"/> | |
| <author login="mentlicher"/> | |
| <compatibility addition="yes" source="compatible" binary="compatible"/> | |
| <description> | |
| Four methods are added to the Breakpoint class, that allow to | |
| get or set a set of breakpoints, that are enabled or disabled when | |
| the breakpoint is hit. One test method is provided, which determines | |
| if the dependent breakpoints are supported by the implementation. | |
| <p> | |
| Added methods:<br/> | |
| <code>Breakpoint.canHaveDependentBreakpoints()</code>, | |
| <code>Breakpoint.getBreakpointsToEnable()</code>, | |
| <code>Breakpoint.setBreakpointsToEnable()</code>, | |
| <code>Breakpoint.getBreakpointsToDisable()</code>, | |
| <code>Breakpoint.setBreakpointsToDisable()</code>. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="Breakpoint" /> | |
| <issue number="197707"/> | |
| </change> | |
| <change id="SessionBridge"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>A session bridge introduced to handle mixed languages debugging.</summary> | |
| <version major="1" minor="48"/> | |
| <date day="8" month="9" year="2014"/> | |
| <author login="mentlicher"/> | |
| <compatibility addition="yes" source="compatible" binary="compatible"/> | |
| <description> | |
| <code>SessionBridge</code> class introduced. This class allows to | |
| suggest that some debug action can be handled by a different debugging | |
| session. The handlers can be registered via implementations of | |
| <code>SessionChanger</code> interface. | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="SessionBridge" /> | |
| <issue number="246819"/> | |
| </change> | |
| <change id="BreakpointsDeactivation"> | |
| <api name="DebuggerCoreAPI"/> | |
| <summary>A mechanism for activation/deactivation of engine-related breakpoints.</summary> | |
| <version major="1" minor="51"/> | |
| <date day="30" month="4" year="2015"/> | |
| <author login="mentlicher"/> | |
| <compatibility addition="yes" source="compatible" binary="compatible"/> | |
| <description> | |
| API class <code>ActiveBreakpoints</code> and SPI interface | |
| <code>BreakpointsActivationProvider</code> introduced. These classes | |
| handle an activation/deactivation of engine-related breakpoints, | |
| which is independent on their enabled/disabled state. | |
| </description> | |
| <class package="org.netbeans.api.debugger" name="ActiveBreakpoints" /> | |
| <class package="org.netbeans.spi.debugger" name="BreakpointsActivationProvider" /> | |
| <issue number="242800"/> | |
| </change> | |
| </changes> | |
| <!-- Now the surrounding HTML text and document structure: --> | |
| <htmlcontents> | |
| <!-- | |
| NO NO NO NO NO! | |
| ==============> DO NOT EDIT ME! <====================== | |
| AUTOMATICALLY GENERATED FROM APICHANGES.XML, DO NOT EDIT | |
| SEE xml/api/doc/changes/apichanges.xml | |
| --> | |
| <head> | |
| <title>Debugger Core API changes by date</title> | |
| </head> | |
| <body> | |
| <p class="overviewlink"><a href="overview-summary.html">Overview</a></p> | |
| <h1>Introduction</h1> | |
| <p>This document lists changes made to the Debugger Core APIs. Please ask on the | |
| <code>nbdev@netbeans.org</code> | |
| mailing list if you have any questions about the details of a | |
| change, or are wondering how to convert existing code to be compatible. | |
| </p> | |
| <hr/><standard-changelists module-code-name="org.netbeans.api.debugger/1"/> | |
| <hr/><p>@FOOTER@</p> | |
| </body> | |
| </htmlcontents> | |
| </apichanges> |