org.eclipse.ease.debugging

## Class AbstractEaseDebugger

- java.lang.Object
- - org.eclipse.ease.debugging.AbstractEaseDebugger

All Implemented Interfaces:
  IEventProcessor, IExecutionListener

Direct Known Subclasses:
  PythonDebugger, RhinoDebugger

    public abstract class AbstractEaseDebugger
    extends java.lang.Object
    implements IEventProcessor, IExecutionListener

### Nested Class Summary

Nested Classes
`class` `AbstractEaseDebugger.ThreadState`

### Field Summary

### Fields inherited from interface org.eclipse.ease.IExecutionListener

`ENGINE_END, ENGINE_START, SCRIPT_END, SCRIPT_INJECTION_END, SCRIPT_INJECTION_START, SCRIPT_START`

### Constructor Summary

Constructors
Constructor and Description
`AbstractEaseDebugger(IDebugEngine engine, boolean showDynamicCode)`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `fireDispatchEvent(IDebuggerEvent event)` Helper method to raise event via dispatcher.
`ScriptStackTrace` `getExceptionStacktrace()`
`ScriptStackTrace` `getExceptionStacktrace(java.lang.Object thread)`
`ScriptStackTrace` `getStacktrace()` Get current stack trace.
`void` `handleEvent(IDebugEvent event)`
`boolean` `isTrackedScript(Script script)` Checks if the given script is tracked by debugger.
`void` `notify(IScriptEngine engine, Script script, int status)` Notify function called by Eclipse EASE framework.
`void` `setDispatcher(EventDispatchJob dispatcher)` Setter method for dispatcher.
`void` `setScriptRegistry(IScriptRegistry registry)` Setter method for script registry for lookups between different types of file identifications.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### AbstractEaseDebugger

    public AbstractEaseDebugger(IDebugEngine engine,
                                boolean showDynamicCode)

### Method Detail

#### setDispatcher

    public void setDispatcher(EventDispatchJob dispatcher)

Setter method for dispatcher.

Specified by:
  `setDispatcher` in interface `IEventProcessor`
Parameters:
  `dispatcher` - dispatcher for communication between debugger and debug target.

#### setScriptRegistry

    public void setScriptRegistry(IScriptRegistry registry)

Setter method for script registry for lookups between different types of file identifications.

Parameters:
  `registry` - Script registry to be used.

#### fireDispatchEvent

    public void fireDispatchEvent(IDebuggerEvent event)

Helper method to raise event via dispatcher.

Parameters:
  `event` - Debug event to be raised.

#### handleEvent

    public void handleEvent(IDebugEvent event)

Specified by:
  `handleEvent` in interface `IEventProcessor`

#### notify

    public void notify(IScriptEngine engine,
                       Script script,
                       int status)

Notify function called by Eclipse EASE framework. Raises according events depending on status

Specified by:
  `notify` in interface `IExecutionListener`
Parameters:
  `engine` - Script Engine
  `script` - Script or `null`
  `status` - Event Status

#### isTrackedScript

    public boolean isTrackedScript(Script script)

Checks if the given script is tracked by debugger.

Parameters:
  `script` - Script to be checked.
Returns:
  `true` if script is being tracked by debugger.

#### getStacktrace

    public ScriptStackTrace getStacktrace()

Get current stack trace. If the current trace is empty (script not started or terminated) we get an optional exception stack trace. This is by default empty and will only be filled when an exception is thrown.

Returns:

#### getExceptionStacktrace

    public ScriptStackTrace getExceptionStacktrace()

#### getExceptionStacktrace

    public ScriptStackTrace getExceptionStacktrace(java.lang.Object thread)