org.eclipse.emf.mwe.internal.ui.debug.model
Class DebugThread

java.lang.Object
  extended by org.eclipse.core.runtime.PlatformObject
      extended by org.eclipse.emf.mwe.internal.ui.debug.model.DebugElement
          extended by org.eclipse.emf.mwe.internal.ui.debug.model.DebugThread
All Implemented Interfaces:
org.eclipse.core.runtime.IAdaptable, org.eclipse.debug.core.model.IDebugElement, org.eclipse.debug.core.model.IStep, org.eclipse.debug.core.model.ISuspendResume, org.eclipse.debug.core.model.ITerminate, org.eclipse.debug.core.model.IThread

public class DebugThread
extends DebugElement
implements org.eclipse.debug.core.model.IThread

MWE Debug Thread implementation
For Info: A debug thread handles the stepping commands and holds the DebugStackFrames


Field Summary
 
Fields inherited from class org.eclipse.emf.mwe.internal.ui.debug.model.DebugElement
target
 
Constructor Summary
DebugThread(DebugTarget target)
           
 
Method Summary
 boolean canResume()
           
 boolean canStepInto()
           
 boolean canStepOver()
           
 boolean canStepReturn()
           
 boolean canSuspend()
           
 boolean canTerminate()
           
 void clearStack(int cleanStackLevel)
           
 org.eclipse.debug.core.model.IBreakpoint[] getBreakpoints()
           
 java.lang.String getName()
           
 int getPriority()
           
 int getSetVarFrameId(DebugStackFrame frame)
           
 DebugStackFrame getStackFramePeek()
           
 org.eclipse.debug.core.model.IStackFrame[] getStackFrames()
           
 java.lang.String getState()
           
 org.eclipse.debug.core.model.IStackFrame getTopStackFrame()
           
 int getVarFrameId()
           
 boolean hasStackFrames()
           
 boolean isStepping()
           
 boolean isSuspended()
           
 boolean isTerminated()
           
 void pushStackFrames(java.util.List<SyntaxElement> list)
           
 void resume()
           
 void setBreakpoint(MWEBreakpoint bp)
           
 void setStepping(boolean stepping)
           
 void setVariablesDirty()
           
 void stepInto()
           
 void stepOver()
           
 void stepReturn()
           
 void suspend()
           
 void terminate()
           
 
Methods inherited from class org.eclipse.emf.mwe.internal.ui.debug.model.DebugElement
getAdapter, getDebugModelManager, getDebugTarget, getDebugTarget0, getLaunch, getModelIdentifier
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.debug.core.model.IDebugElement
getDebugTarget, getLaunch, getModelIdentifier
 
Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
 

Constructor Detail

DebugThread

public DebugThread(DebugTarget target)
Method Detail

hasStackFrames

public boolean hasStackFrames()
Specified by:
hasStackFrames in interface org.eclipse.debug.core.model.IThread

getStackFrames

public org.eclipse.debug.core.model.IStackFrame[] getStackFrames()
Specified by:
getStackFrames in interface org.eclipse.debug.core.model.IThread

getTopStackFrame

public org.eclipse.debug.core.model.IStackFrame getTopStackFrame()
Specified by:
getTopStackFrame in interface org.eclipse.debug.core.model.IThread

getStackFramePeek

public DebugStackFrame getStackFramePeek()

getSetVarFrameId

public int getSetVarFrameId(DebugStackFrame frame)

getVarFrameId

public int getVarFrameId()

clearStack

public void clearStack(int cleanStackLevel)

pushStackFrames

public void pushStackFrames(java.util.List<SyntaxElement> list)

setVariablesDirty

public void setVariablesDirty()

getBreakpoints

public org.eclipse.debug.core.model.IBreakpoint[] getBreakpoints()
Specified by:
getBreakpoints in interface org.eclipse.debug.core.model.IThread

setBreakpoint

public void setBreakpoint(MWEBreakpoint bp)

getPriority

public int getPriority()
Specified by:
getPriority in interface org.eclipse.debug.core.model.IThread

getName

public java.lang.String getName()
Specified by:
getName in interface org.eclipse.debug.core.model.IThread

getState

public java.lang.String getState()

isStepping

public boolean isStepping()
Specified by:
isStepping in interface org.eclipse.debug.core.model.IStep

setStepping

public void setStepping(boolean stepping)

canStepInto

public boolean canStepInto()
Specified by:
canStepInto in interface org.eclipse.debug.core.model.IStep

stepInto

public void stepInto()
              throws org.eclipse.debug.core.DebugException
Specified by:
stepInto in interface org.eclipse.debug.core.model.IStep
Throws:
org.eclipse.debug.core.DebugException

canStepOver

public boolean canStepOver()
Specified by:
canStepOver in interface org.eclipse.debug.core.model.IStep

stepOver

public void stepOver()
              throws org.eclipse.debug.core.DebugException
Specified by:
stepOver in interface org.eclipse.debug.core.model.IStep
Throws:
org.eclipse.debug.core.DebugException

canStepReturn

public boolean canStepReturn()
Specified by:
canStepReturn in interface org.eclipse.debug.core.model.IStep

stepReturn

public void stepReturn()
                throws org.eclipse.debug.core.DebugException
Specified by:
stepReturn in interface org.eclipse.debug.core.model.IStep
Throws:
org.eclipse.debug.core.DebugException

canSuspend

public boolean canSuspend()
Specified by:
canSuspend in interface org.eclipse.debug.core.model.ISuspendResume

isSuspended

public boolean isSuspended()
Specified by:
isSuspended in interface org.eclipse.debug.core.model.ISuspendResume

suspend

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

canResume

public boolean canResume()
Specified by:
canResume in interface org.eclipse.debug.core.model.ISuspendResume

resume

public void resume()
            throws org.eclipse.debug.core.DebugException
Specified by:
resume in interface org.eclipse.debug.core.model.ISuspendResume
Throws:
org.eclipse.debug.core.DebugException

canTerminate

public boolean canTerminate()
Specified by:
canTerminate in interface org.eclipse.debug.core.model.ITerminate

isTerminated

public boolean isTerminated()
Specified by:
isTerminated in interface org.eclipse.debug.core.model.ITerminate

terminate

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