jde.debugger.spec
Class MethodBreakpointSpec
java.lang.Object
|
+--jde.debugger.spec.EventRequestSpec
|
+--jde.debugger.spec.BreakpointSpec
|
+--jde.debugger.spec.MethodBreakpointSpec
- All Implemented Interfaces:
- Protocol
- public class MethodBreakpointSpec
- extends BreakpointSpec
MethodBreakpointSpec.java
Funnily, it seems this class actually supports setting breakpoints in
a particular method of an arbitrary filename! since it's very weird, it's
not supported. Let us know if you require such a feature...
Created: Thu Jul 15 15:52:45 1999
- Since:
- 0.1
- Author:
- Amit Kumar
Field Summary |
(package private) java.util.List |
methodArgs
|
(package private) java.lang.String |
methodName
|
Fields inherited from class jde.debugger.spec.EventRequestSpec |
app, classExFilters, classFilters, expr, expressionKey, isResolved, myID, refSpec, request, specPropertyKey, suspendPolicy, thread, threadKey |
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 |
Method Summary |
private boolean |
compareArgTypes(com.sun.jdi.Method method,
java.util.List nameList)
|
private com.sun.jdi.Method |
findMatchingMethod(com.sun.jdi.ClassType clazz)
|
private com.sun.jdi.Location |
getLocation(com.sun.jdi.ClassType clazz)
|
java.util.List |
getMethodArgs()
|
java.lang.String |
getMethodName()
|
private boolean |
isValidMethodName(java.lang.String s)
|
private java.lang.String |
normalizeArgTypeName(java.lang.String name)
Remove unneeded spaces and expand class names to fully
qualified names, if necessary and possible. |
(package private) boolean |
resolve(com.sun.jdi.ReferenceType refType)
This function is called to resolve an EventRequestSpec when
the ReferenceType is known to match
|
java.lang.String |
toString()
Returns a string representation of the object. |
Methods inherited from class jde.debugger.spec.EventRequestSpec |
attemptImmediateResolve, attemptResolve, getEventRequest, getID, installClassExFilters, installClassFilters, isJavaIdentifier, isResolved, setClassExFilters, setClassFilters, setExpression, setIsResolved, setRequest, setSuspendPolicy, setThread |
Methods inherited from class java.lang.Object |
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait |
methodName
java.lang.String methodName
methodArgs
java.util.List methodArgs
MethodBreakpointSpec
public MethodBreakpointSpec(Application app,
ReferenceTypeSpec refSpec,
java.lang.String methodName,
java.util.List methodArgs)
resolve
boolean resolve(com.sun.jdi.ReferenceType refType)
throws JDEException
- Description copied from class:
EventRequestSpec
- This function is called to resolve an
EventRequestSpec
when
the ReferenceType is known to match
if any errors occur at any time during resolution of the event-
requestspec, it's entry in the EventRequestSpecList
is
removed, and jde
informed about it (through
Application.removeSpecAndInformJDE(jde.debugger.spec.EventRequestSpec, java.lang.String)
- Overrides:
resolve
in class EventRequestSpec
- Following copied from class:
jde.debugger.spec.EventRequestSpec
- Returns:
- true if the resolution was successful
getLocation
private com.sun.jdi.Location getLocation(com.sun.jdi.ClassType clazz)
throws JDEException
getMethodName
public java.lang.String getMethodName()
getMethodArgs
public java.util.List getMethodArgs()
toString
public java.lang.String toString()
- Description copied from class:
java.lang.Object
- Returns a string representation of the object. In general, the
toString
method returns a string that
"textually represents" this object. The result should
be a concise but informative representation that is easy for a
person to read.
It is recommended that all subclasses override this method.
The toString
method for class Object
returns a string consisting of the name of the class of which the
object is an instance, the at-sign character `@
', and
the unsigned hexadecimal representation of the hash code of the
object. In other words, this method returns a string equal to the
value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
- Overrides:
toString
in class java.lang.Object
- Following copied from class:
java.lang.Object
- Returns:
- a string representation of the object.
isValidMethodName
private boolean isValidMethodName(java.lang.String s)
compareArgTypes
private boolean compareArgTypes(com.sun.jdi.Method method,
java.util.List nameList)
normalizeArgTypeName
private java.lang.String normalizeArgTypeName(java.lang.String name)
throws JDEException
- Remove unneeded spaces and expand class names to fully
qualified names, if necessary and possible.
findMatchingMethod
private com.sun.jdi.Method findMatchingMethod(com.sun.jdi.ClassType clazz)
throws JDEException