Class Debugger


  • public class Debugger
    extends java.lang.Object
    • Field Detail

      • BACK_OUT_LOCATION

        private static final java.lang.String BACK_OUT_LOCATION
        See Also:
        Constant Field Values
      • _debuggerThread

        private java.lang.Thread _debuggerThread
      • _vm

        private com.sun.jdi.VirtualMachine _vm
      • _eventSet

        private com.sun.jdi.event.EventSet _eventSet
      • _vmExit

        private boolean _vmExit
      • _location

        private com.sun.jdi.Location _location
      • _eventThread

        private com.sun.jdi.ThreadReference _eventThread
      • _classPrepareRequests

        private java.util.Map<java.lang.String,​com.sun.jdi.request.ClassPrepareRequest> _classPrepareRequests
      • _monitor

        private final java.lang.Object _monitor
      • _bPaused

        private boolean _bPaused
      • _listeners

        private java.util.List<java.util.function.Consumer<Debugger>> _listeners
      • _eventName

        private java.lang.String _eventName
      • _refs

        private final java.util.HashSet<com.sun.jdi.ObjectReference> _refs
      • _temporarilySuspended

        private boolean _temporarilySuspended
      • _eventIterator

        private com.sun.jdi.event.EventIterator _eventIterator
    • Constructor Detail

      • Debugger

        public Debugger​(com.sun.jdi.VirtualMachine vm,
                        BreakpointManager bpm)
    • Method Detail

      • startDebugging

        public void startDebugging()
      • resumeExecution

        public void resumeExecution()
      • getSuspendedLocation

        public com.sun.jdi.Location getSuspendedLocation()
      • getSuspendedThread

        public com.sun.jdi.ThreadReference getSuspendedThread()
      • assignSuspendedState

        private void assignSuspendedState​(com.sun.jdi.event.LocatableEvent event,
                                          boolean temporary)
      • clearSuspendedState

        private void clearSuspendedState()
      • addChangeListener

        public void addChangeListener​(java.util.function.Consumer<Debugger> listener)
      • removeChangeListener

        public boolean removeChangeListener​(java.util.function.Consumer<Debugger> listener)
      • notifyListeners

        private void notifyListeners()
      • getEventName

        public java.lang.String getEventName()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • muteBreakpoints

        public void muteBreakpoints​(boolean mute)
      • run

        private void run()
      • handleStepEvent

        private void handleStepEvent​(com.sun.jdi.event.StepEvent event)
      • getEventRequestManager

        private com.sun.jdi.request.EventRequestManager getEventRequestManager()
      • handleBreakpointEvent

        private void handleBreakpointEvent​(com.sun.jdi.event.LocatableEvent event)
      • consumeRemainingEvents

        private void consumeRemainingEvents()
      • handleExceptionEvent

        private void handleExceptionEvent​(com.sun.jdi.event.ExceptionEvent event)
      • handleVMStartEvent

        private void handleVMStartEvent()
      • handleClassPrepareEvent

        private void handleClassPrepareEvent​(com.sun.jdi.event.ClassPrepareEvent event)
      • handleVMDeathEvent

        private void handleVMDeathEvent()
      • handleVMDisconnectEvent

        private void handleVMDisconnectEvent()
      • quit

        private void quit()
      • handleSuspendLocatableEvent

        private void handleSuspendLocatableEvent​(com.sun.jdi.event.LocatableEvent event)
      • isSuspended

        public boolean isSuspended()
      • stepOver

        public void stepOver()
      • stepInto

        public void stepInto()
      • stepOut

        public void stepOut()
      • step

        private void step​(int depth)
      • createStep

        private com.sun.jdi.request.StepRequest createStep​(com.sun.jdi.ThreadReference eventThread,
                                                           int depth)
      • isPaused

        public boolean isPaused()
      • pause

        public void pause()
      • dropToFrame

        public void dropToFrame​(com.sun.jdi.StackFrame frame)
      • isFirstFrame

        private boolean isFirstFrame​(com.sun.jdi.StackFrame frame)
                              throws com.sun.jdi.IncompatibleThreadStateException
        Throws:
        com.sun.jdi.IncompatibleThreadStateException
      • addBreakpoints

        private void addBreakpoints()
      • addBreakpointJdi

        public void addBreakpointJdi​(Breakpoint bp)
      • deferAddVmBreakpoint

        private void deferAddVmBreakpoint​(Breakpoint bp)
      • removeBreakpointJdi

        public void removeBreakpointJdi​(Breakpoint bp)
      • addPendingBreakpointFor

        private void addPendingBreakpointFor​(java.lang.String className)
      • resumeProgram

        private void resumeProgram​(boolean silent)
      • stopDebugging

        private void stopDebugging​(boolean bKill)
      • suspended

        private void suspended()
      • resumed

        private void resumed​(boolean silent)
      • retain

        public void retain​(com.sun.jdi.ObjectReference ref)
      • releaseRefs

        private void releaseRefs()
      • getOutermostType

        public static java.lang.String getOutermostType​(com.sun.jdi.ReferenceType type)
      • getGosuPanel

        private GosuPanel getGosuPanel()
      • getThreads

        public java.util.List<com.sun.jdi.ThreadReference> getThreads()
      • redefineClasses

        public void redefineClasses​(java.util.List<CompiledClass> listCompiledClasses)