Bug 121270 - Incompatible API changes in debuggercore
Incompatible API changes in debuggercore
Status: NEW
Product: debugger
Classification: Unclassified
Component: Code
6.x
All All
: P2 (vote)
: 6.x
Assigned To: Martin Entlicher
issues@debugger
: API
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2007-11-06 10:39 UTC by Martin Entlicher
Modified: 2007-11-06 10:59 UTC (History)
0 users

See Also:
Issue Type: TASK
:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Entlicher 2007-11-06 10:39:54 UTC
There are several known problems in debuggercore APIs, which will caused incompatible API changed when fixed.

We will list/discuss the desired API changes here and then decide which release we will put this into.
Comment 1 Martin Entlicher 2007-11-06 10:59:05 UTC
One problem is in DebuggerManager. 

code like
                dl.breakpointAdded (breakpoint);
                dl.propertyChange (ev);
and
            ((DebuggerManagerListener) l.elementAt (i)).watchRemoved (watch);
            // TODO: fix nonsense double firing
            ((DebuggerManagerListener) l.elementAt (i)).propertyChange (ev);
does not look right, but can not be changed in a compatible way.

Watch initialization is implemented via DebuggerManagerListener and (unlike breakpoint initialization) the listener
implementation is supposed to add the created watches explicitely into DebuggerManager. This makes it impossible to
distinguish between creation and addition.

createWatch() is public, but removeWatch() is package-private and called from Watch.remove() - inconsistent.

Watch is a final class - encapsulation of String, but Breakpoint is an abstract class. Perhaps this is O.K., but the
reasons are not clear.


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo