jde.debugger
Interface Protocol

All Known Implementing Classes:
JDEException, Rep, Jdebug, Application, EventHandler, ObjectStore, Debug, ApplicationCommands, Main, EventRequestSpec

public interface Protocol

Protocol.java

Repository of all commands sent from jde to jdebug, and all lisp functions sent from jdebug to jde

Nomenclature:

jdebug:
The java side of the debugger
jde:
The emacs side of the debugger. Also used in general terms to mean JDE itself.
JDE:
The java development environment
debugger:
Usually the java side, also used in general terms to mean the full debugging framework
debugee:
The application being debugged. Usually means the VM of the application, as against the VM of the debugger.
application:
Same as 'debugee'
VM:
The java virtual machine. During debugging, the debugger VM connects to the debuggee VM through a socket/shared memory (the latter is possible in case of Win9x/NT)

Commands

The commands will be ASCII strings delimited by spaces, and will end with a BR .

      debugee_vm_id command_id command [optional_args]
 
debugee_vm_id
a number that is assigned during handshake between the emacs and the jde sides, representing a specific debugee vm.

if (id == -1), the command is not specific to any debugee vm.

'app_id', 'vm_id' 'id' & 'debugee_vm_id' are synonymous.

command_id
an id that helps match a command and its response.

'cmd_id' 'cid' & 'command_id' are synonymous.

command
plain text command
optional_args
arguments for the command. can use "" for arguments with white spaces.

Replies

The replies to these commands will be ASCII too, in lisp forms, and will also end with a BR . They will either by "result" or "error":

      (jde-dbo-command-result command_id [optional_args])
      (jde-dbo-command-error command_id reason)
 
debugee_vm_id, command_id
as above
optional_args
if required
reason
a string, containing the error message

Event Sets See here

Created: Thu Jul 8 13:44:10 1999

Since:
0.1

Field Summary
static java.lang.String ATTACH_SHMEM
           
static java.lang.String ATTACH_SOCKET
           
static java.lang.String BR
          line break, platform dependent
static java.lang.String BREAK
           
static java.lang.String CANCEL_TRACE_CLASSES
           
static java.lang.String CANCEL_TRACE_METHODS
           
static java.lang.String CANCEL_TRACE_THREADS
           
static java.lang.String CLEAR
           
static java.lang.String COMMAND_ERROR
          There was an error executing the command, returns the error
static java.lang.String COMMAND_RESULT
          The command executed properly, returns the result
static java.lang.String CONNECTED_TO_VM
          Notifies that a connection to a vm was successfully made
static java.lang.String DEBUG
          a debug message
static java.lang.String ERROR
          an error
static java.lang.String EVALUATE
           
static java.lang.String EVENT_BREAKPOINT_HIT
           
static java.lang.String EVENT_CLASS_PREPARE
           
static java.lang.String EVENT_CLASS_UNLOAD
           
static java.lang.String EVENT_EXCEPTION
           
static java.lang.String EVENT_METHOD_ENTRY
           
static java.lang.String EVENT_METHOD_EXIT
           
static java.lang.String EVENT_OTHER
           
static java.lang.String EVENT_STEP_COMPLETED
           
static java.lang.String EVENT_THREAD_DEATH
           
static java.lang.String EVENT_THREAD_START
           
static java.lang.String EVENT_VM_DEATH
           
static java.lang.String EVENT_VM_DISCONNECT
           
static java.lang.String EVENT_VM_START
           
static java.lang.String EVENT_WATCHPOINT_HIT
           
static java.lang.String EVENTSET
          Event sets caused by the jpda.
static java.lang.String EXIT
           
static java.lang.String FINISH
           
static java.lang.String GET_ARRAY
           
static java.lang.String GET_LOADED_CLASSES
           
static java.lang.String GET_LOCALS
           
static java.lang.String GET_OBJECT
           
static java.lang.String GET_OBJECT_MONITORS
           
static java.lang.String GET_PATH_INFORMATION
           
static java.lang.String GET_STRING
           
static java.lang.String GET_THREAD
           
static java.lang.String GET_THREADS
           
static java.lang.String INTERRUPT
           
static java.lang.String INVALID
          used to construct messages about invalid breakpoints etc.
static java.lang.String JDE_BUG
          arbitrary lisp functions passed to jde start with this
static java.lang.String JDE_INIT_DEBUG_SESSION
          the very first function, indicating that jdebug is up and running
static java.lang.String KILL_THREAD
           
static java.lang.String LAUNCH
           
static java.lang.String LISTEN_SHMEM
           
static java.lang.String LISTEN_SOCKET
           
static java.lang.String MESSAGE
          A message to be displayed on the JDE UI
static java.lang.String QUIT
           
static java.lang.String REPORT_IDS_IN_USE
          tell jdebug to inform jdebug about references to objects being currently used.
static java.lang.String RESUME
           
static java.lang.String RUN
           
static java.lang.String SPEC_RESOLVED
          Notifies that a spec was resolved properly
static java.lang.String STEP
           
static java.lang.String SUSPEND
           
static java.lang.String TRACE_CLASSES
           
static java.lang.String TRACE_EXCEPTIONS
           
static java.lang.String TRACE_METHODS
           
static java.lang.String TRACE_THREADS
           
static java.lang.String WARNING
          A warning
static java.lang.String WATCH
           
 

Field Detail

BR

public static final java.lang.String BR
line break, platform dependent

LAUNCH

public static final java.lang.String LAUNCH
See Also:
Jdebug.doLaunch(Integer, List)

ATTACH_SOCKET

public static final java.lang.String ATTACH_SOCKET
See Also:
Jdebug.doAttach(String, Integer, List)

ATTACH_SHMEM

public static final java.lang.String ATTACH_SHMEM
See Also:
Jdebug.doAttach(String, Integer, List)

LISTEN_SOCKET

public static final java.lang.String LISTEN_SOCKET
See Also:
Jdebug.doListen(String, Integer, List)

LISTEN_SHMEM

public static final java.lang.String LISTEN_SHMEM
See Also:
Jdebug.doListen(String, Integer, List)

QUIT

public static final java.lang.String QUIT
See Also:
Jdebug.doQuit(Integer, List)

EXIT

public static final java.lang.String EXIT
See Also:
Jdebug.doQuit(Integer, List)

RUN

public static final java.lang.String RUN
See Also:
GeneralCommands.doRun(Integer, List)

FINISH

public static final java.lang.String FINISH
See Also:
GeneralCommands.doFinish(Integer, List)

TRACE_CLASSES

public static final java.lang.String TRACE_CLASSES
See Also:
GeneralCommands.doTraceClasses(Integer, List)

CANCEL_TRACE_CLASSES

public static final java.lang.String CANCEL_TRACE_CLASSES
See Also:
GeneralCommands.doCancelTraceClasses(Integer, List)

TRACE_EXCEPTIONS

public static final java.lang.String TRACE_EXCEPTIONS
See Also:
SpecCommands.doTraceExceptions(Integer, List)

WATCH

public static final java.lang.String WATCH
See Also:
SpecCommands.doWatch(Integer, List)

BREAK

public static final java.lang.String BREAK
See Also:
SpecCommands.doBreak(Integer, List)

CLEAR

public static final java.lang.String CLEAR
See Also:
SpecCommands.doClear(Integer, List)

STEP

public static final java.lang.String STEP
See Also:
SpecCommands.doStep(Integer, List)

SUSPEND

public static final java.lang.String SUSPEND
See Also:
ThreadCommands.doSuspend(Integer, List)

RESUME

public static final java.lang.String RESUME
See Also:
ThreadCommands.doResume(Integer, List)

INTERRUPT

public static final java.lang.String INTERRUPT
See Also:
ThreadCommands.doInterrupt(Integer, List)

KILL_THREAD

public static final java.lang.String KILL_THREAD
See Also:
ThreadCommands.doKillThread(Integer, List)

GET_THREADS

public static final java.lang.String GET_THREADS
See Also:
ThreadCommands.doGetThreads(Integer, List)

GET_THREAD

public static final java.lang.String GET_THREAD
See Also:
ThreadCommands.doGetThread(Integer, List)

GET_OBJECT_MONITORS

public static final java.lang.String GET_OBJECT_MONITORS
See Also:
ThreadCommands.doGetObjectMonitors(Integer, List)

TRACE_THREADS

public static final java.lang.String TRACE_THREADS
See Also:
ThreadCommands.doTraceThreads(Integer, List)

CANCEL_TRACE_THREADS

public static final java.lang.String CANCEL_TRACE_THREADS
See Also:
ThreadCommands.doCancelTraceThreads(Integer, List)

TRACE_METHODS

public static final java.lang.String TRACE_METHODS
See Also:
GeneralCommands.doTraceMethods(Integer, List)

CANCEL_TRACE_METHODS

public static final java.lang.String CANCEL_TRACE_METHODS
See Also:
GeneralCommands.doCancelTraceMethods(Integer, List)

GET_OBJECT

public static final java.lang.String GET_OBJECT
See Also:
GeneralCommands.doGetObject(Integer, List)

GET_ARRAY

public static final java.lang.String GET_ARRAY
See Also:
GeneralCommands.doGetArray(Integer, List)

GET_STRING

public static final java.lang.String GET_STRING
See Also:
GeneralCommands.doGetString(Integer, List)

GET_LOCALS

public static final java.lang.String GET_LOCALS
See Also:
GeneralCommands.doGetLocals(Integer, List)

GET_LOADED_CLASSES

public static final java.lang.String GET_LOADED_CLASSES
See Also:
GeneralCommands.doGetLoadedClasses(Integer, List)

GET_PATH_INFORMATION

public static final java.lang.String GET_PATH_INFORMATION
See Also:
GeneralCommands.doGetPathInformation(Integer, List)

EVALUATE

public static final java.lang.String EVALUATE
See Also:
GeneralCommands.doEvaluate(Integer, List)

JDE_BUG

public static final java.lang.String JDE_BUG
arbitrary lisp functions passed to jde start with this

JDE_INIT_DEBUG_SESSION

public static final java.lang.String JDE_INIT_DEBUG_SESSION
the very first function, indicating that jdebug is up and running

COMMAND_RESULT

public static final java.lang.String COMMAND_RESULT
The command executed properly, returns the result

COMMAND_ERROR

public static final java.lang.String COMMAND_ERROR
There was an error executing the command, returns the error

MESSAGE

public static final java.lang.String MESSAGE
A message to be displayed on the JDE UI

WARNING

public static final java.lang.String WARNING
A warning

ERROR

public static final java.lang.String ERROR
an error

DEBUG

public static final java.lang.String DEBUG
a debug message

EVENTSET

public static final java.lang.String EVENTSET
Event sets caused by the jpda.

INVALID

public static final java.lang.String INVALID
used to construct messages about invalid breakpoints etc.

REPORT_IDS_IN_USE

public static final java.lang.String REPORT_IDS_IN_USE
tell jdebug to inform jdebug about references to objects being currently used. might dissapear soon...

CONNECTED_TO_VM

public static final java.lang.String CONNECTED_TO_VM
Notifies that a connection to a vm was successfully made

SPEC_RESOLVED

public static final java.lang.String SPEC_RESOLVED
Notifies that a spec was resolved properly

EVENT_BREAKPOINT_HIT

public static final java.lang.String EVENT_BREAKPOINT_HIT
See Also:
EventHandler.breakpointEvent(BreakpointEvent)

EVENT_STEP_COMPLETED

public static final java.lang.String EVENT_STEP_COMPLETED
See Also:
EventHandler.stepEvent(StepEvent)

EVENT_WATCHPOINT_HIT

public static final java.lang.String EVENT_WATCHPOINT_HIT
See Also:
EventHandler.watchpointEvent(WatchpointEvent)

EVENT_CLASS_PREPARE

public static final java.lang.String EVENT_CLASS_PREPARE
See Also:
EventHandler.classPrepareEvent(ClassPrepareEvent)

EVENT_CLASS_UNLOAD

public static final java.lang.String EVENT_CLASS_UNLOAD
See Also:
EventHandler.classUnloadEvent(ClassUnloadEvent)

EVENT_EXCEPTION

public static final java.lang.String EVENT_EXCEPTION
See Also:
EventHandler.exceptionEvent(ExceptionEvent)

EVENT_THREAD_START

public static final java.lang.String EVENT_THREAD_START
See Also:
EventHandler.threadStartEvent(ThreadStartEvent)

EVENT_THREAD_DEATH

public static final java.lang.String EVENT_THREAD_DEATH
See Also:
EventHandler.threadDeathEvent(ThreadDeathEvent)

EVENT_METHOD_ENTRY

public static final java.lang.String EVENT_METHOD_ENTRY
See Also:
EventHandler.methodEntryEvent(MethodEntryEvent)

EVENT_METHOD_EXIT

public static final java.lang.String EVENT_METHOD_EXIT
See Also:
EventHandler.methodExitEvent(MethodExitEvent)

EVENT_VM_START

public static final java.lang.String EVENT_VM_START
See Also:
EventHandler.vmStartEvent(Event)

EVENT_VM_DEATH

public static final java.lang.String EVENT_VM_DEATH
See Also:
EventHandler.vmDeathEvent(Event)

EVENT_VM_DISCONNECT

public static final java.lang.String EVENT_VM_DISCONNECT
See Also:
EventHandler.vmDisconnectEvent(Event)

EVENT_OTHER

public static final java.lang.String EVENT_OTHER
See Also:
EventHandler.otherEvent(Event)