public interface DebuggerExtender extends DebuggerListener
Old, deprecated way of registering a DebuggerExtender Use the Debugger method: DebuggerExtenderCallback addDebuggerExtender( DebuggerExtender extender ); to add a DebuggerExtender to a Debugger.
The existing DebuggerListener interface, from which DebuggerExtender derives, provides callbacks for some basic Debugger events, such as start, stop, resume, finish
Modifier and Type | Method and Description |
---|---|
void |
breakpointAdded(DebuggerBreakpoint breakpoint)
Called by the Debugger when a breakpoint has been added.
|
void |
breakpointChanged(DebuggerBreakpoint breakpoint,
DebuggerBreakpoint.BreakpointState newState)
Called by the Debugger when a previously added breakpoint has changed
|
void |
breakpointDeleted(DebuggerBreakpoint breakpoint)
Called by the Debugger when a previously added breakpoint has been deleted
by the user.
|
void |
breakpointInScope(DebuggerBreakpoint breakpoint)
Called by the debugger to tell the DebuggerExtender that a breakpoint has
become visible in the scope of the current context, and the Icon of the
breakpoint can be shown if appropriate.
|
void |
breakpointOutOfScope(DebuggerBreakpoint breakpoint)
Called by the debugger to tell the DebuggerExtender that a breakpoint has
become invisible in the scope of the current context, and the Icon of the
breakpoint should be hidden if appropriate.
|
boolean |
breakpointsEqual(DebuggerBreakpoint debuggerBreakpoint,
DebuggerBreakpoint debuggerExtenderBreakpoint)
Called by the debugger to ask the DebuggerExtender if two DebuggerBreakpoints
are equal.
|
void |
breakpointsLoaded()
Called by the Debugger to signal that persistent breakpoints have been
loaded from storage.
|
boolean |
canCreateCustomBreakpoint(java.lang.String customBreakpointType,
Workspace workspace,
Project project)
Called by the debugger to ask the DebuggerExtender if new breakpoints
of a certain type can be created for the incoming workspace and project
|
boolean |
canRunToCursor(Context context,
DebuggerBreakpoint breakpoint)
Called when the debugger determines if runToCursor is allowed at a
breakpoint.
|
boolean |
canShowBreakpointLocation(Context context,
DebuggerBreakpoint breakpoint)
Called by the debugger when actions are enabled/disabled to inquire if
the DebuggerExtender wants to disable the action that shows the location
corresponding to the breakpoint.
|
boolean |
canShowIPLocation(Context context,
DebuggerBreakpoint breakpoint)
Called by the debugger when the debuggee is stopped at a previously added
breakpoint.
|
boolean |
canStepInto(Context context,
DebuggerBreakpoint breakpoint)
Called when the debugger determines if stepInto is allowed at a breakpoint.
|
boolean |
canStepOut(Context context,
DebuggerBreakpoint breakpoint)
Called when the debugger determines if stepOut is allowed at a breakpoint.
|
boolean |
canStepOver(Context context,
DebuggerBreakpoint breakpoint)
Called by the debugger to determine if the DebuggerExtender wants to
override the StepOver behavior.
|
boolean |
canStepToEndOfMethod(Context context,
DebuggerBreakpoint breakpoint)
Called when the debugger determines if stepToEndOfMethod is allowed at a
breakpoint.
|
void |
debuggeeStoppedAtBreakpoint(Context context,
DebuggerBreakpoint breakpoint)
Called by the Debugger when the debuggee has stopped at a previously added
breakpoint.
|
DebuggerBreakpointPanel |
getCustomBreakpointPanel(java.lang.String customBreakpointType,
DebuggerBreakpoint breakpoint,
javax.swing.event.ChangeListener changeListener)
Called by the debugger to ask the DebuggerExtender for the panel to
create or edit a custom breakpoint.
|
java.lang.String |
getID()
Called by the Debugger to get the unique ID that identifies this
DebuggerExtender
Warning: This method will be called during the call to method:
DebuggerExtenderCallback addDebuggerExtender( DebuggerExtender extender );
|
void |
newDebugSession(Context context)
Called by the debugger before a new debug session is started on the
incoming context.
|
DebuggerBreakpoint |
runToCursor(Context context,
DebuggerBreakpoint breakpoint)
Called when the debugger will execute a RunToCursor command.
|
void |
setEvaluator(Context context,
DebuggerEvaluator evaluator)
Called after the debuggee has stopped and the stack window is refreshed.
|
boolean |
showBreakpointLocation(Context context,
DebuggerBreakpoint breakpoint)
Called by the debugger when the user double-clicks on a previously added
breakpoint.
|
boolean |
showIPLocation(Context context,
DebuggerBreakpoint breakpoint)
Called by the debugger when the debuggee is stopped at a previously added
breakpoint.
|
DebuggerBreakpoint |
stepInto(Context context,
DebuggerBreakpoint breakpoint)
Called when the debugger will execute a StepInto command.
|
DebuggerBreakpoint |
stepOut(Context context,
DebuggerBreakpoint breakpoint)
Called when the debugger will execute a StepOut command.
|
DebuggerBreakpoint |
stepOver(Context context,
DebuggerBreakpoint breakpoint)
Called when the debugger will execute a StepOver command.
|
DebuggerBreakpoint |
stepToEndOfMethod(Context context,
DebuggerBreakpoint breakpoint)
Called when the debugger will execute a StepToEndOfMethod command.
|
void |
temporaryBreakpointSet(Context context,
DebuggerBreakpoint breakpoint)
Called by the debugger to tell the DebuggerExtender that the temporary
breakpoint, requested by the DebuggerExtender for the overriding stepping
behavior, has been set
|
void |
updateBreakpointIcon(DebuggerBreakpoint breakpoint)
Called by the debugger to tell the DebuggerExtender that the Icon of a
breakpoint should be updated, which only makes sense if the breakpoint
is currently visible in the IDE.
|
debuggerFinished, debuggerResuming, debuggerStarted, debuggerStopping
java.lang.String getID()
void breakpointsLoaded()
void newDebugSession(Context context)
context
- The context for the new debug session, which might be nullvoid debuggeeStoppedAtBreakpoint(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtendervoid breakpointAdded(DebuggerBreakpoint breakpoint)
breakpoint
- A breakpoint which is guaranteed to be a breakpoint
belonging to this DebuggerExtendervoid breakpointChanged(DebuggerBreakpoint breakpoint, DebuggerBreakpoint.BreakpointState newState)
breakpoint
- The breakpoint that has changed, which is
guaranteed to be a breakpoint belonging to this DebuggerExtendernewState
- The new state of the breakpointvoid breakpointDeleted(DebuggerBreakpoint breakpoint)
breakpoint
- The breakpoint that has been deleted, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderboolean canShowBreakpointLocation(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug session if there is an active
debug session, otherwise nullbreakpoint
- The breakpoint, which is guaranteed to be a breakpoint
belonging to this DebuggerExtenderboolean showBreakpointLocation(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug session if there is an active
debug session, otherwise nullbreakpoint
- The breakpoint, which is guaranteed to be a breakpoint
belonging to this DebuggerExtenderboolean canShowIPLocation(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderboolean showIPLocation(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtendervoid setEvaluator(Context context, DebuggerEvaluator evaluator)
context
- The context of the debug sessionevaluator
- An evaluator that can be used during this debuggee stop.DebuggerBreakpoint stepOver(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderboolean canStepOver(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderDebuggerBreakpoint stepInto(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderboolean canStepInto(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderDebuggerBreakpoint stepOut(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderboolean canStepToEndOfMethod(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderDebuggerBreakpoint stepToEndOfMethod(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderboolean canStepOut(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderDebuggerBreakpoint runToCursor(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderboolean canRunToCursor(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The breakpoint where the debuggee is stopped, which is
guaranteed to be a breakpoint belonging to this DebuggerExtendervoid breakpointInScope(DebuggerBreakpoint breakpoint)
breakpoint
- The breakpoint, which is guaranteed to be a breakpoint
belonging to this DebuggerExtendervoid breakpointOutOfScope(DebuggerBreakpoint breakpoint)
breakpoint
- The breakpoint, which is guaranteed to be a breakpoint
belonging to this DebuggerExtendervoid updateBreakpointIcon(DebuggerBreakpoint breakpoint)
breakpoint
- The breakpoint, which is guaranteed to be a breakpoint
belonging to this DebuggerExtendervoid temporaryBreakpointSet(Context context, DebuggerBreakpoint breakpoint)
context
- The context of the debug sessionbreakpoint
- The temporary breakpoint set by the debugger, which is
guaranteed to be a breakpoint belonging to this DebuggerExtenderboolean breakpointsEqual(DebuggerBreakpoint debuggerBreakpoint, DebuggerBreakpoint debuggerExtenderBreakpoint)
debuggerBreakpoint
- A DebuggerBreakpoint as backed by the debuggerdebuggerExtenderBreakpoint
- A DebuggerBreakpoint as backed by the
DebuggerExtenderboolean canCreateCustomBreakpoint(java.lang.String customBreakpointType, Workspace workspace, Project project)
customBreakpointType
- The type of the new breakpoint, which is one of
the types registered by the DebuggerExtenderCallback in the
registerCustomBreakpointType callworkspace
- The workspace which might be null but is usually not nullproject
- The project which might be null but is usually not nullDebuggerBreakpointPanel getCustomBreakpointPanel(java.lang.String customBreakpointType, DebuggerBreakpoint breakpoint, javax.swing.event.ChangeListener changeListener)
customBreakpointType
- The type of the new breakpoint, which is one of
the types registered by the DebuggerExtenderCallback in the
registerCustomBreakpointType callbreakpoint
- The breakpoint which will be null when the user will
create a new breakpoint, and not null when the user will edit an
existing breakpointchangeListener
- The DebuggerExtender can notify the debugger through
this listener when anything has changed on the DebuggerBreakpointPanel; this
will cause the debugger to check if the OK button can be enabled or not.