Class Debugger

java.lang.Object
editor.debugger.Debugger

public class Debugger extends Object
  • Field Details

    • TEMPORARY

      private static final String TEMPORARY
      See Also:
    • FROM_LOCATION

      private static final String FROM_LOCATION
      See Also:
    • BACK_OUT_LOCATION

      private static final String BACK_OUT_LOCATION
      See Also:
    • _debuggerThread

      private Thread _debuggerThread
    • _bpm

      private final BreakpointManager _bpm
    • _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 Map<String,com.sun.jdi.request.ClassPrepareRequest> _classPrepareRequests
    • _monitor

      private final Object _monitor
    • _bPaused

      private boolean _bPaused
    • _listeners

      private List<Consumer<Debugger>> _listeners
    • _eventName

      private String _eventName
    • _refs

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

      private boolean _temporarilySuspended
    • _eventIterator

      private com.sun.jdi.event.EventIterator _eventIterator
    • _classRedefiner

      private ExperimentBuild _classRedefiner
  • Constructor Details

  • Method Details

    • 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(Consumer<Debugger> listener)
    • removeChangeListener

      public boolean removeChangeListener(Consumer<Debugger> listener)
    • notifyListeners

      private void notifyListeners()
    • getEventName

      public String getEventName()
    • toString

      public String toString()
      Overrides:
      toString in class 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(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 String getOutermostType(com.sun.jdi.ReferenceType type)
    • getGosuPanel

      private GosuPanel getGosuPanel()
    • getThreads

      public List<com.sun.jdi.ThreadReference> getThreads()
    • getClassRedefiner

      public ExperimentBuild getClassRedefiner()
    • redefineClasses

      public void redefineClasses(List<CompiledClass> listCompiledClasses)