org.drools.eclipse.debug.core
Class DroolsDebugTarget

java.lang.Object
  extended by org.eclipse.core.runtime.PlatformObject
      extended by org.eclipse.debug.core.model.DebugElement
          extended by org.eclipse.jdt.internal.debug.core.model.JDIDebugElement
              extended by org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget
                  extended by org.drools.eclipse.debug.core.DroolsDebugTarget
All Implemented Interfaces:
org.eclipse.core.runtime.IAdaptable, org.eclipse.debug.core.IBreakpointListener, org.eclipse.debug.core.IBreakpointManagerListener, org.eclipse.debug.core.IDebugEventSetListener, org.eclipse.debug.core.ILaunchListener, org.eclipse.debug.core.model.IDebugElement, org.eclipse.debug.core.model.IDebugTarget, org.eclipse.debug.core.model.IDisconnect, org.eclipse.debug.core.model.IMemoryBlockRetrieval, org.eclipse.debug.core.model.IStepFilters, org.eclipse.debug.core.model.ISuspendResume, org.eclipse.debug.core.model.ITerminate, org.eclipse.jdt.debug.core.IJavaDebugTarget

public class DroolsDebugTarget
extends org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget


Constructor Summary
DroolsDebugTarget(org.eclipse.debug.core.ILaunch launch, com.sun.jdi.VirtualMachine jvm, String name, boolean supportTerminate, boolean supportDisconnect, org.eclipse.debug.core.model.IProcess process, boolean resume)
           
 
Method Summary
 void breakpointAdded(org.eclipse.debug.core.model.IBreakpoint breakpoint)
           
 void breakpointRemoved(org.eclipse.debug.core.model.IBreakpoint breakpoint, org.eclipse.core.resources.IMarkerDelta delta)
           
protected  void cancelSuspendByBreakpoint(org.eclipse.jdt.internal.debug.core.breakpoints.JavaBreakpoint breakpoint)
           
 boolean canResume()
           
protected  org.eclipse.jdt.internal.debug.core.model.JDIThread createThread(com.sun.jdi.ThreadReference thread)
           
 void disconnect()
           
 org.eclipse.jdt.internal.debug.core.model.JDIThread findThread(com.sun.jdi.ThreadReference tr)
           
 DroolsLineBreakpoint getDroolsBreakpoint(String source)
          Tries to find a match for the provided breakpoint information from the list of registered breakpoints.
 org.eclipse.debug.core.model.IThread[] getThreads()
           
protected  org.drools.eclipse.debug.core.DroolsDebugTarget.ThreadStartHandler getThreadStartHandler2()
           
 void handleVMStart(com.sun.jdi.event.VMStartEvent event)
           
 boolean hasThreads()
           
protected  void initialize()
           
protected  void initializeRequests()
           
protected  void initializeState()
           
 boolean isOutOfSynch()
           
 boolean isSuspended()
           
 boolean mayBeOutOfSynch()
           
 void prepareToSuspendByBreakpoint(org.eclipse.jdt.internal.debug.core.breakpoints.JavaBreakpoint breakpoint)
           
protected  void removeAllThreads()
           
protected  void resume(boolean fireNotification)
           
protected  void resumeThreads()
           
protected  void setThreadStartHandler(org.drools.eclipse.debug.core.DroolsDebugTarget.ThreadStartHandler threadStartHandler)
           
 void suspend()
           
protected  void suspendThreads()
           
 void terminate()
           
 
Methods inherited from class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget
addHotCodeReplaceListener, addOutOfSynchTypes, breakpointChanged, breakpointManagerEnablementChanged, canDisconnect, canPopFrames, canSuspend, canTerminate, cleanup, createClassPrepareRequest, createClassPrepareRequest, createClassPrepareRequest, createClassPrepareRequest, disconnected, findVariable, getAdapter, getAllThreadGroups, getBreakpoints, getCRC, getDebugTarget, getDefaultStratum, getEvaluationEngine, getEventDispatcher, getHotCodeReplaceListeners, getJavaTypes, getLaunch, getMemoryBlock, getName, getProcess, getRootThreadGroups, getStepFilters, getSuspendCount, getThreadStartHandler, getVersion, getVM, getVMName, handleDebugEvents, handleVMDeath, handleVMDisconnect, hasHCRFailed, hasHCROccurred, incrementSuspendCount, initializeBreakpoints, isAvailable, isDisconnected, isFilterConstructors, isFilterStaticInitializers, isFilterSynthetics, isOutOfSynch, isPerformingHotCodeReplace, isResumeOnStartup, isStepFiltersEnabled, isStepThruFilters, isTerminated, isTerminating, jdiClassesByName, launchAdded, launchChanged, launchRemoved, newThread, newValue, newValue, newValue, newValue, newValue, newValue, newValue, newValue, newValue, nullValue, prepareThreadsForClientSuspend, refreshState, reinstallAllBreakpoints, reinstallBreakpointsIn, removeAllBreakpoints, removeHotCodeReplaceListener, removeOutOfSynchTypes, resume, resumeQuiet, sendCommand, sendJDWPCommand, setDefaultStratum, setDisconnected, setFilterConstructors, setFilterStaticInitializers, setFilterSynthetics, setHCROccurred, setIsPerformingHotCodeReplace, setName, setProcess, setStepFilters, setStepFiltersEnabled, setStepThruFilters, setTerminated, setTerminating, setThreadStartHandler, shutdown, supportsAccessWatchpoints, supportsBreakpoint, supportsDisconnect, supportsForceReturn, supportsHotCodeReplace, supportsInstanceBreakpoints, supportsInstanceRetrieval, supportsJ9HotCodeReplace, supportsJDKHotCodeReplace, supportsModificationWatchpoints, supportsMonitorInformation, supportsSelectiveGarbageCollection, supportsStepFilters, supportsStorageRetrieval, supportsTerminate, suspendedByBreakpoint, terminated, voidValue
 
Methods inherited from class org.eclipse.jdt.internal.debug.core.model.JDIDebugElement
addJDIEventListener, fireSuspendEvent, getEventRequestManager, getJavaDebugTarget, getModelIdentifier, getRequestTimeout, getUnknownMessage, internalError, internalError, jdiRequestFailed, logError, notSupported, queueEvent, queueSuspendEvent, removeJDIEventListener, requestFailed, requestFailed, setRequestTimeout, supportsRequestTimeout, targetRequestFailed, targetRequestFailed, throwDebugException
 
Methods inherited from class org.eclipse.debug.core.model.DebugElement
fireChangeEvent, fireCreationEvent, fireEvent, fireResumeEvent, fireTerminateEvent, notSupported, requestFailed
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.jdt.debug.core.IJavaDebugTarget
getRequestTimeout, setRequestTimeout, supportsRequestTimeout
 
Methods inherited from interface org.eclipse.debug.core.model.IDebugElement
getModelIdentifier
 

Constructor Detail

DroolsDebugTarget

public DroolsDebugTarget(org.eclipse.debug.core.ILaunch launch,
                         com.sun.jdi.VirtualMachine jvm,
                         String name,
                         boolean supportTerminate,
                         boolean supportDisconnect,
                         org.eclipse.debug.core.model.IProcess process,
                         boolean resume)
Method Detail

breakpointAdded

public void breakpointAdded(org.eclipse.debug.core.model.IBreakpoint breakpoint)
Specified by:
breakpointAdded in interface org.eclipse.debug.core.IBreakpointListener
Overrides:
breakpointAdded in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

initialize

protected void initialize()
Overrides:
initialize in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

createThread

protected org.eclipse.jdt.internal.debug.core.model.JDIThread createThread(com.sun.jdi.ThreadReference thread)
Overrides:
createThread in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

canResume

public boolean canResume()
Specified by:
canResume in interface org.eclipse.debug.core.model.ISuspendResume
Overrides:
canResume in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

resume

protected void resume(boolean fireNotification)
               throws org.eclipse.debug.core.DebugException
Overrides:
resume in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget
Throws:
org.eclipse.debug.core.DebugException

isSuspended

public boolean isSuspended()
Specified by:
isSuspended in interface org.eclipse.debug.core.model.ISuspendResume
Overrides:
isSuspended in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

getThreads

public org.eclipse.debug.core.model.IThread[] getThreads()
Specified by:
getThreads in interface org.eclipse.debug.core.model.IDebugTarget
Overrides:
getThreads in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

removeAllThreads

protected void removeAllThreads()
Overrides:
removeAllThreads in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

initializeRequests

protected void initializeRequests()
Overrides:
initializeRequests in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

hasThreads

public boolean hasThreads()
Specified by:
hasThreads in interface org.eclipse.debug.core.model.IDebugTarget
Overrides:
hasThreads in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

getThreadStartHandler2

protected org.drools.eclipse.debug.core.DroolsDebugTarget.ThreadStartHandler getThreadStartHandler2()

setThreadStartHandler

protected void setThreadStartHandler(org.drools.eclipse.debug.core.DroolsDebugTarget.ThreadStartHandler threadStartHandler)

isOutOfSynch

public boolean isOutOfSynch()
                     throws org.eclipse.debug.core.DebugException
Specified by:
isOutOfSynch in interface org.eclipse.jdt.debug.core.IJavaDebugTarget
Overrides:
isOutOfSynch in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget
Throws:
org.eclipse.debug.core.DebugException

mayBeOutOfSynch

public boolean mayBeOutOfSynch()
Specified by:
mayBeOutOfSynch in interface org.eclipse.jdt.debug.core.IJavaDebugTarget
Overrides:
mayBeOutOfSynch in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

findThread

public org.eclipse.jdt.internal.debug.core.model.JDIThread findThread(com.sun.jdi.ThreadReference tr)
Overrides:
findThread in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

breakpointRemoved

public void breakpointRemoved(org.eclipse.debug.core.model.IBreakpoint breakpoint,
                              org.eclipse.core.resources.IMarkerDelta delta)
Specified by:
breakpointRemoved in interface org.eclipse.debug.core.IBreakpointListener
Overrides:
breakpointRemoved in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

suspendThreads

protected void suspendThreads()
Overrides:
suspendThreads in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

resumeThreads

protected void resumeThreads()
                      throws org.eclipse.debug.core.DebugException
Overrides:
resumeThreads in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget
Throws:
org.eclipse.debug.core.DebugException

disconnect

public void disconnect()
                throws org.eclipse.debug.core.DebugException
Specified by:
disconnect in interface org.eclipse.debug.core.model.IDisconnect
Overrides:
disconnect in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget
Throws:
org.eclipse.debug.core.DebugException

terminate

public void terminate()
               throws org.eclipse.debug.core.DebugException
Specified by:
terminate in interface org.eclipse.debug.core.model.ITerminate
Overrides:
terminate in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget
Throws:
org.eclipse.debug.core.DebugException

handleVMStart

public void handleVMStart(com.sun.jdi.event.VMStartEvent event)
Overrides:
handleVMStart in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

initializeState

protected void initializeState()
Overrides:
initializeState in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

suspend

public void suspend()
             throws org.eclipse.debug.core.DebugException
Specified by:
suspend in interface org.eclipse.debug.core.model.ISuspendResume
Overrides:
suspend in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget
Throws:
org.eclipse.debug.core.DebugException

prepareToSuspendByBreakpoint

public void prepareToSuspendByBreakpoint(org.eclipse.jdt.internal.debug.core.breakpoints.JavaBreakpoint breakpoint)
Overrides:
prepareToSuspendByBreakpoint in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget

cancelSuspendByBreakpoint

protected void cancelSuspendByBreakpoint(org.eclipse.jdt.internal.debug.core.breakpoints.JavaBreakpoint breakpoint)
                                  throws org.eclipse.debug.core.DebugException
Overrides:
cancelSuspendByBreakpoint in class org.eclipse.jdt.internal.debug.core.model.JDIDebugTarget
Throws:
org.eclipse.debug.core.DebugException

getDroolsBreakpoint

public DroolsLineBreakpoint getDroolsBreakpoint(String source)
Tries to find a match for the provided breakpoint information from the list of registered breakpoints. For stepping and possibly other purposes it returns also a breakpoint for cases where exactly the same line was not found. If breakpoint is not found for line at source then it takes the first line that is above the specified line at the same file.

Parameters:
source -
line -
Returns:


Copyright © 2001-2012 JBoss by Red Hat. All Rights Reserved.