Class Py4jDebuggerEngine
java.lang.Object
org.eclipse.core.runtime.PlatformObject
org.eclipse.core.internal.jobs.InternalJob
org.eclipse.core.runtime.jobs.Job
org.eclipse.ease.AbstractScriptEngine
org.eclipse.ease.AbstractReplScriptEngine
org.eclipse.ease.lang.python.py4j.internal.Py4jScriptEngine
org.eclipse.ease.lang.python.py4j.internal.Py4jDebuggerEngine
- All Implemented Interfaces:
Comparable,org.eclipse.core.runtime.IAdaptable,IDebugEngine,IReplEngine,IScriptEngine,IPythonDebugEngine
public class Py4jDebuggerEngine extends Py4jScriptEngine implements IPythonDebugEngine
A script engine to debug Python code on a PY4J engine.
Uses most of
Py4jDebuggerEngine's functionality and only extends it when file is to be debugged.-
Field Summary
Fields inherited from class org.eclipse.core.runtime.jobs.Job
ASYNC_FINISH, BUILD, DECORATE, INTERACTIVE, LONG, NONE, RUNNING, SHORT, SLEEPING, WAITINGFields inherited from interface org.eclipse.ease.IScriptEngine
TRACE_SCRIPT_ENGINE -
Constructor Summary
Constructors Constructor Description Py4jDebuggerEngine() -
Method Summary
Modifier and Type Method Description ScriptStackTracegetExceptionStackTrace()Get the stack trace of the last thrown exception of the current thread.ScriptStackTracegetExceptionStackTrace(Object thread)Get the stack trace of the last thrown exception of the given thread.Collection<EaseDebugVariable>getVariables(Object scope)Get variables within a specific scope or child elements for a given object.ObjectremoveVariable(String name)Remove a variable from the scope.voidsetDebugger(PythonDebugger debugger)Sets the PythonDebugger for the debug engine.voidsetupDebugger(org.eclipse.debug.core.ILaunch launch, boolean suspendOnStartup, boolean suspendOnScriptLoad, boolean showDynamicCode)Methods inherited from class org.eclipse.ease.lang.python.py4j.internal.Py4jScriptEngine
getAdapter, pythonStartupComplete, registerJar, terminateCurrent, toStringMethods inherited from class org.eclipse.ease.AbstractReplScriptEngine
getDefinedVariables, getLastExecutionResult, getTerminateOnIdle, getType, setTerminateOnIdle, terminateMethods inherited from class org.eclipse.ease.AbstractScriptEngine
addExecutionListener, addSecurityCheck, execute, getCurrentScriptEngine, getDescription, getErrorStream, getExecutedFile, getInputStream, getLaunch, getMonitor, getOutputStream, getStackTrace, getVariable, getVariables, hasVariable, inject, isFinished, joinEngine, joinEngine, removeExecutionListener, setCloseStreamsOnTerminate, setEngineDescription, setErrorStream, setExecutionRootFile, setInputStream, setLaunch, setOutputStream, setVariableMethods inherited from class org.eclipse.core.runtime.jobs.Job
addJobChangeListener, belongsTo, cancel, create, create, createSystem, createSystem, done, getJobGroup, getJobManager, getName, getPriority, getProperty, getResult, getRule, getState, getThread, isBlocking, isSystem, isUser, join, join, removeJobChangeListener, schedule, schedule, setJobGroup, setName, setPriority, setProgressGroup, setProperty, setRule, setSystem, setThread, setUser, shouldRun, shouldSchedule, sleep, toString, wakeUp, wakeUp, yieldRuleMethods inherited from class org.eclipse.core.internal.jobs.InternalJob
compareToMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.eclipse.ease.IDebugEngine
getStackTraceMethods inherited from interface org.eclipse.ease.IScriptEngine
addExecutionListener, addSecurityCheck, execute, getDescription, getErrorStream, getExecutedFile, getInputStream, getLaunch, getMonitor, getName, getOutputStream, getVariable, getVariables, hasVariable, inject, isFinished, joinEngine, joinEngine, registerJar, removeExecutionListener, schedule, setCloseStreamsOnTerminate, setErrorStream, setInputStream, setOutputStream, setVariable, terminate, terminateCurrent
-
Field Details
-
ENGINE_ID
- See Also:
- Constant Field Values
-
-
Constructor Details
-
Py4jDebuggerEngine
public Py4jDebuggerEngine()
-
-
Method Details
-
setDebugger
Description copied from interface:IPythonDebugEngineSets the PythonDebugger for the debug engine.- Specified by:
setDebuggerin interfaceIPythonDebugEngine- Parameters:
debugger-PythonDebuggerto be used.
-
setupDebugger
public void setupDebugger(org.eclipse.debug.core.ILaunch launch, boolean suspendOnStartup, boolean suspendOnScriptLoad, boolean showDynamicCode)- Specified by:
setupDebuggerin interfaceIDebugEngine
-
getExceptionStackTrace
Description copied from interface:IDebugEngineGet the stack trace of the last thrown exception of the current thread. Will be populated when an exception is thrown by the script engine. Can be evaluated in a try/catch statement within the script. Only available during script runtime.- Specified by:
getExceptionStackTracein interfaceIDebugEngine- Returns:
- last exception stack trace or
null
-
getExceptionStackTrace
Description copied from interface:IDebugEngineGet the stack trace of the last thrown exception of the given thread. Will be populated when an exception is thrown by the script engine. Can be evaluated in a try/catch statement within the script. Only available during script runtime.- Specified by:
getExceptionStackTracein interfaceIDebugEngine- Parameters:
thread- thread to get last exception stacktrace from- Returns:
- last exception stack trace or
null
-
removeVariable
Description copied from interface:IDebugEngineRemove a variable from the scope.- Specified by:
removeVariablein interfaceIDebugEngine- Parameters:
name- variable to be removed.- Returns:
- variable content
-
getVariables
Description copied from interface:IDebugEngineGet variables within a specific scope or child elements for a given object.- Specified by:
getVariablesin interfaceIDebugEngine- Parameters:
scope- scope or parent object- Returns:
- variables assigned to scope
-