Chapter 9
EventRequest Command Set
This command set is numbered (15) to match the equivalent JDWP command set.
Set Command (1)
Set an event request. When the event described by this request occurs, an event
is sent from the target VM.
Out Data
TABLE 35 – Structure of Out Data for Set Command
byte
|
eventKind
|
Event kind to request. See KDWP.EventKind for a complete list of events that can be requested. The default is to support only Breakpoint , Class_Prepare and Midlet_Death events.
|
byte
|
suspendPolicy
|
What threads are suspended when this event occurs? Note that the order of events and command replies accurately reflects the order in which threads are suspended and resumed. For example, if a VM-wide resume is processed before an event occurs which suspends the VM, the reply to the resume command is written to the transport before the suspending event. Refer to SuspendPolicy Constants in the Appendix.
|
int
|
modifiers
|
Constraints used to control the number of generated events. Modifiers specify additional tests that an event must satisfy before it is placed in the event queue. Events are filtered by applying each modifier to an event in the order they are specified in this collection Only events that satisfy all modifiers are reported.
Filtering can improve debugger performance dramatically by reducing the amount of event traffic sent from the target VM to the debugger VM.
|
Repeated modifiers times:
|
byte
|
modKind
|
Modifier kind
|
Case ClassOnly - if modKind is 4:
|
For class prepare events, restricts the events generated by this request to be the preparation of the given reference type and any subtypes. For other events, restricts the events generated by this request to those whose location is in the given reference type or any of its subtypes. An event is generated for any location in a reference type that can be safely cast to the given reference type. This modifier can be used with any event kind except class unload , thread start , and thread end .
|
referenceTypeID
|
clazz
|
Required class
|
Case ClassMatch - if modKind is 5:
|
Restricts reported events to those for classes whose name matches the given restricted regular expression.
For class prepare events, the prepared class name is matched.
For class unload events, the unloaded class name is matched.
For other events, the class name of the event's location is matched.
This modifier can be used with any event kind except thread start and thread end.
|
string
|
classPattern
|
Matches are limited to exact matches of the given class pattern and matches of patterns that begin or
end with "*"; for example, "*.Foo"or "java.*".
|
Case LocationOnly - if modKind is 7:
|
Restricts reported events to those that occur at the given location. This modifier can be used with breakpoint , field access , field modification , step , and exception event kinds.
|
location
|
loc
|
Required location
|
|
Reply Data
TABLE 36 – Structure of Reply Data for Set Command
int
|
requestID
|
ID of created request
|
|
Clear Command (2)
Clear an event request.
Out Data
TABLE 37 – Structure of Out Data for Clear Command
byte
|
event
|
Event type to clear
|
int
|
requestID
|
ID of request to clear
|
|
Reply Data
(None)
ClearAllBreakpoints Command (3)
Remove all set breakpoints.
If bit 14 in the handshake is set, which means that the KVM stores event information, then the ClearAllBreakpoints
command should be supported. Otherwise it is not supported.
Out Data
(None)
Reply Data
(None)
|
KDWP Specification KVM Debug Wire Protocol, 1.0
|
Copyright ©
2002 Sun Microsystems, Inc. All rights reserved. Use is
subject to license terms. Third-party software, including
font technology, is copyrighted and licensed from Sun
suppliers. Sun, Sun Microsystems, the Sun logo, Java and
Solaris are trademarks or registered trademarks of Sun
Microsystems, Inc. in the US and other countries. Federal
Acquisitions: Commercial Software - Government Users
Subject to Standard License Terms and Conditions.
Copyright © 2002
Sun Microsystems, Inc. Tous droits réservés.
Distribué par des licences qui en restreignent
l'utilisation. Le logiciel détenu par des tiers, et
qui comprend la technologie relative aux polices de
caractères, est protégé par un copyright et
licencié par des fournisseurs de Sun. Sun, Sun
Microsystems, le logo Sun, Java et Solaris sont des
marques de fabrique ou des marques déposées de
Sun Microsystems, Inc. aux Etats-Unis et dans d'autres
pays.