IScriptDebugger

Overview

The IScriptDebugger interface represents debugger that can be attached to the Business Rules Scripting API.

Location


Required Methods


Attach

Attaches listener to the Business Rules Scripting API script debugger.

Listener Id designates the recipient of events raised by the debugger. For example RemoteScriptDebugger provides session Id as the listenerId argument's value, so the debugger events are later sent to the remote debugger application.

Debug flags are a list of the string valued describing requested debug features. Possible values are: {| class="dashed-table" ! style="width: 30% " |

Flag
! style="width: 70% " |
Description
|- | Enable Step By Step Debug | Script execution pauses after each script operation. |- | Disable Step By Step Debug | Script execution pauses on errors and the stop; keyword. |- | Enable Caching: xxx | Value of the variable xxx defined in the script is sent to the debbugger events recipient only on value changes. For example serialized value of the ServerSchema variable can be rather big (up to several dozen of kilobytes) and doesn't 'change during script execution. So there is no need to sent it to the remote debugger application on every code execution step.

This flag can be added several times to the debuggerFlags argument, enabling cache for several script variables. |}

 

method Attach(listenerId: Guid; debugFlags: array of String)

 

void Attach(Guid listenerId, String[] debugFlags)

 

Sub Attach(listenerId As Guid, debugFlags As String())

Parameters:

  • listenerId: Listener Id
  • debugFlags: Debug flags

Continue

Continues script execution.

 

method Continue

 

void Continue()

 

Sub Continue()

Detach

Detaches listener from the Business Rules Scripting API script debugger.

 

method Detach(listenerId: Guid)

 

void Detach(Guid listenerId)

 

Sub Detach(listenerId As Guid)

Parameters:

  • listenerId: Listener Id

Register

Registers provided debug events provider.

 

method Register(provider: IScriptDebugProvider)

 

void Register(IScriptDebugProvider provider)

 

Sub Register(provider As IScriptDebugProvider)

Parameters:

  • provider: Debug events provider

StepInto

Steps into the function call or other script operation.

 

method StepInto

 

void StepInto()

 

Sub StepInto()

StepOut

Steps out of the script funtion currently executing.

 

method StepOut

 

void StepOut()

 

Sub StepOut()

StepOver

Steps over the function call or other script operation.

 

method StepOver

 

void StepOver()

 

Sub StepOver()

Stop

Breaks script execution.

 

method Stop

 

void Stop()

 

Sub Stop()

Unregister

Unregisters debug events provider.

 

method Unregister

 

void Unregister()

 

Sub Unregister()