jde.debugger.spec
Class EventRequestSpecList

java.lang.Object
  |
  +--jde.debugger.spec.EventRequestSpecList
All Implemented Interfaces:
Protocol

public class EventRequestSpecList
extends java.lang.Object
implements Protocol

EventRequestSpecList.java

Maintains a list of all the "specs", i.e. requests by the user for notification of a particular type of event. Not all commands create specs: watchpoints, breakpoints, and exception catches do.

See EventRequestSpec for more details.

Created: Thu Jul 15 11:26:23 1999

Since:
0.1
Author:
Amit Kumar

Fields inherited from interface jde.debugger.Protocol
APP_IO, ATTACH_SHMEM, ATTACH_SOCKET, BR, BREAK, CANCEL_TRACE_CLASSES, CANCEL_TRACE_METHODS, CANCEL_TRACE_THREADS, CLEAR, CMD_NOK, CMD_OK, COMMAND_ERROR, COMMAND_RESULT, COMMANDS, 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, EVENTS, EVENTSET, EXCEPTION, EXIT, FINISH, FRAMEWORK, GET_ARRAY, GET_LOADED_CLASSES, GET_LOCALS, GET_OBJECT, GET_OBJECT_MONITORS, GET_PATH_INFORMATION, GET_STRING, GET_THREAD, GET_THREADS, GUI, INTERRUPT, INVALID, JDE_BUG, JDE_INIT_DEBUG_SESSION, JDE_PIPE, KILL_THREAD, LAUNCH, LISTEN_SHMEM, LISTEN_SOCKET, MESSAGE, NONE, NOQUOTE, QUIT, QUOTE, REPORT_IDS_IN_USE, RESUME, RUN, SPEC_RESOLVED, STEP, SUSPEND, TRACE_CLASSES, TRACE_EXCEPTIONS, TRACE_METHODS, TRACE_THREADS, WARNING, WATCH
 
Constructor Summary
EventRequestSpecList(Debugger debugger)
           
 
Method Summary
 WatchpointSpec createAccessWatchpoint(java.lang.String classPattern, java.lang.String m)
           
 EventRequestSpec createClassLineBreakpoint(java.lang.String classPattern, int line)
           
 EventRequestSpec createExceptionIntercept(java.lang.String classPattern, boolean notifyCaught, boolean notifyUncaught)
           
 EventRequestSpec createMethodBreakpoint(java.lang.String classPattern, java.lang.String methodId, java.util.List methodArgs)
           
 WatchpointSpec createModificationWatchpoint(java.lang.String classPattern, java.lang.String m)
           
 EventRequestSpec createSourceLineBreakpoint(java.lang.String sourceName, int line)
           
 void delete(EventRequestSpec ers)
          Delete an existing event request spec
 void install(EventRequestSpec ers)
          Install a new event request spec - XXX synchronize throughout!?
 void removeSpec(java.lang.Long specID)
          remove a spec based on its specID
 void resolve(com.sun.jdi.ReferenceType refType)
          Resolve all deferred eventRequests waiting for 'refType'.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EventRequestSpecList

public EventRequestSpecList(Debugger debugger)
Method Detail

resolve

public void resolve(com.sun.jdi.ReferenceType refType)
Resolve all deferred eventRequests waiting for 'refType'. This is called when a new reference type is prepared. We iterate through all the requestspecs, calling their attemptResolve methods.
Parameters:
refType - The reference type that was recently prepared

install

public void install(EventRequestSpec ers)
             throws JDEException
Install a new event request spec - XXX synchronize throughout!?

delete

public void delete(EventRequestSpec ers)
Delete an existing event request spec

removeSpec

public void removeSpec(java.lang.Long specID)
                throws JDEException
remove a spec based on its specID

createExceptionIntercept

public EventRequestSpec createExceptionIntercept(java.lang.String classPattern,
                                                 boolean notifyCaught,
                                                 boolean notifyUncaught)

createAccessWatchpoint

public WatchpointSpec createAccessWatchpoint(java.lang.String classPattern,
                                             java.lang.String m)

createModificationWatchpoint

public WatchpointSpec createModificationWatchpoint(java.lang.String classPattern,
                                                   java.lang.String m)

createClassLineBreakpoint

public EventRequestSpec createClassLineBreakpoint(java.lang.String classPattern,
                                                  int line)

createSourceLineBreakpoint

public EventRequestSpec createSourceLineBreakpoint(java.lang.String sourceName,
                                                   int line)

createMethodBreakpoint

public EventRequestSpec createMethodBreakpoint(java.lang.String classPattern,
                                               java.lang.String methodId,
                                               java.util.List methodArgs)