jde.debugger
Class ApplicationCommands

java.lang.Object
  |
  +--jde.debugger.ApplicationCommands
Direct Known Subclasses:
GeneralCommands, SpecCommands, ThreadCommands

public abstract class ApplicationCommands
extends java.lang.Object
implements Protocol

ApplicationCommands.java

An abstract class that must be implemented by classes that process commands from the jde side.

Created: Fri Jul 30 17:13:57 1999

Since:
0.1

Field Summary
(package private)  Application app
           
protected  java.util.Map identifiableEventRequests
          This map stores the event requests that are NOT specs.
(package private)  ObjectStore store
           
 
Fields inherited from interface jde.debugger.Protocol
ATTACH_SHMEM, ATTACH_SOCKET, BR, BREAK, CANCEL_TRACE_CLASSES, CANCEL_TRACE_METHODS, CANCEL_TRACE_THREADS, CLEAR, COMMAND_ERROR, COMMAND_RESULT, CONNECTED_TO_VM, DEBUG, ERROR, EVALUATE, EVENT_BREAKPOINT_HIT, EVENT_CLASS_PREPARE, EVENT_CLASS_UNLOAD, EVENT_EXCEPTION, EVENT_METHOD_ENTRY, EVENT_METHOD_EXIT, EVENT_OTHER, EVENT_STEP_COMPLETED, EVENT_THREAD_DEATH, EVENT_THREAD_START, EVENT_VM_DEATH, EVENT_VM_DISCONNECT, EVENT_VM_START, EVENT_WATCHPOINT_HIT, EVENTSET, EXIT, FINISH, GET_ARRAY, GET_LOADED_CLASSES, GET_LOCALS, GET_OBJECT, GET_OBJECT_MONITORS, GET_PATH_INFORMATION, GET_STRING, GET_THREAD, GET_THREADS, INTERRUPT, INVALID, JDE_BUG, JDE_INIT_DEBUG_SESSION, KILL_THREAD, LAUNCH, LISTEN_SHMEM, LISTEN_SOCKET, MESSAGE, QUIT, REPORT_IDS_IN_USE, RESUME, RUN, SPEC_RESOLVED, STEP, SUSPEND, TRACE_CLASSES, TRACE_EXCEPTIONS, TRACE_METHODS, TRACE_THREADS, WARNING, WATCH
 
Constructor Summary
ApplicationCommands(Application a, ObjectStore s)
           
 
Method Summary
protected  java.lang.Long addIdentifiableRequest(com.sun.jdi.request.EventRequest e)
          Adds an event request to the above map.
protected  void deleteIdentifiableRequest(java.lang.Long id)
          Removes an event request.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

app

final Application app

store

final ObjectStore store

identifiableEventRequests

protected java.util.Map identifiableEventRequests
This map stores the event requests that are NOT specs. storing it here allows the user to cancel them easily: they just specify the id, that gets reverse-looked up here, uniquely identifying the actual request.

Of course, the id is sent back to the user when the actual command is responded to, so that the handle is available to jde in the first place

Constructor Detail

ApplicationCommands

public ApplicationCommands(Application a,
                           ObjectStore s)
Method Detail

addIdentifiableRequest

protected java.lang.Long addIdentifiableRequest(com.sun.jdi.request.EventRequest e)
Adds an event request to the above map. Also enables the request.
Returns:
an identifier for the request

deleteIdentifiableRequest

protected void deleteIdentifiableRequest(java.lang.Long id)
                                  throws JDEException
Removes an event request. Also disables/deletes from the vm.