1*e82f7db8SAndroid Build Coastguard Worker/* 2*e82f7db8SAndroid Build Coastguard Worker * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. 3*e82f7db8SAndroid Build Coastguard Worker * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*e82f7db8SAndroid Build Coastguard Worker * 5*e82f7db8SAndroid Build Coastguard Worker * This code is free software; you can redistribute it and/or modify it 6*e82f7db8SAndroid Build Coastguard Worker * under the terms of the GNU General Public License version 2 only, as 7*e82f7db8SAndroid Build Coastguard Worker * published by the Free Software Foundation. Oracle designates this 8*e82f7db8SAndroid Build Coastguard Worker * particular file as subject to the "Classpath" exception as provided 9*e82f7db8SAndroid Build Coastguard Worker * by Oracle in the LICENSE file that accompanied this code. 10*e82f7db8SAndroid Build Coastguard Worker * 11*e82f7db8SAndroid Build Coastguard Worker * This code is distributed in the hope that it will be useful, but WITHOUT 12*e82f7db8SAndroid Build Coastguard Worker * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13*e82f7db8SAndroid Build Coastguard Worker * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14*e82f7db8SAndroid Build Coastguard Worker * version 2 for more details (a copy is included in the LICENSE file that 15*e82f7db8SAndroid Build Coastguard Worker * accompanied this code). 16*e82f7db8SAndroid Build Coastguard Worker * 17*e82f7db8SAndroid Build Coastguard Worker * You should have received a copy of the GNU General Public License version 18*e82f7db8SAndroid Build Coastguard Worker * 2 along with this work; if not, write to the Free Software Foundation, 19*e82f7db8SAndroid Build Coastguard Worker * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20*e82f7db8SAndroid Build Coastguard Worker * 21*e82f7db8SAndroid Build Coastguard Worker * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22*e82f7db8SAndroid Build Coastguard Worker * or visit www.oracle.com if you need additional information or have any 23*e82f7db8SAndroid Build Coastguard Worker * questions. 24*e82f7db8SAndroid Build Coastguard Worker */ 25*e82f7db8SAndroid Build Coastguard Worker 26*e82f7db8SAndroid Build Coastguard WorkerJDWP "Java(tm) Debug Wire Protocol" 27*e82f7db8SAndroid Build Coastguard Worker(CommandSet VirtualMachine=1 28*e82f7db8SAndroid Build Coastguard Worker (Command Version=1 29*e82f7db8SAndroid Build Coastguard Worker "Returns the JDWP version implemented by the target VM. " 30*e82f7db8SAndroid Build Coastguard Worker "The version string format is implementation dependent. " 31*e82f7db8SAndroid Build Coastguard Worker (Out 32*e82f7db8SAndroid Build Coastguard Worker ) 33*e82f7db8SAndroid Build Coastguard Worker (Reply 34*e82f7db8SAndroid Build Coastguard Worker (string description "Text information on the VM version") 35*e82f7db8SAndroid Build Coastguard Worker (int jdwpMajor "Major JDWP Version number") 36*e82f7db8SAndroid Build Coastguard Worker (int jdwpMinor "Minor JDWP Version number") 37*e82f7db8SAndroid Build Coastguard Worker (string vmVersion "Target VM JRE version, as in the java.version property") 38*e82f7db8SAndroid Build Coastguard Worker (string vmName "Target VM name, as in the java.vm.name property") 39*e82f7db8SAndroid Build Coastguard Worker ) 40*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 41*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 42*e82f7db8SAndroid Build Coastguard Worker ) 43*e82f7db8SAndroid Build Coastguard Worker ) 44*e82f7db8SAndroid Build Coastguard Worker (Command ClassesBySignature=2 45*e82f7db8SAndroid Build Coastguard Worker "Returns reference types for all the classes loaded by the target VM " 46*e82f7db8SAndroid Build Coastguard Worker "which match the given signature. " 47*e82f7db8SAndroid Build Coastguard Worker "Multple reference types will be returned if two or more class " 48*e82f7db8SAndroid Build Coastguard Worker "loaders have loaded a class of the same name. " 49*e82f7db8SAndroid Build Coastguard Worker "The search is confined to loaded classes only; no attempt is made " 50*e82f7db8SAndroid Build Coastguard Worker "to load a class of the given signature. " 51*e82f7db8SAndroid Build Coastguard Worker (Out 52*e82f7db8SAndroid Build Coastguard Worker (string signature "JNI signature of the class to find " 53*e82f7db8SAndroid Build Coastguard Worker "(for example, \"Ljava/lang/String;\"). " 54*e82f7db8SAndroid Build Coastguard Worker ) 55*e82f7db8SAndroid Build Coastguard Worker ) 56*e82f7db8SAndroid Build Coastguard Worker (Reply 57*e82f7db8SAndroid Build Coastguard Worker (Repeat classes "Number of reference types that follow." 58*e82f7db8SAndroid Build Coastguard Worker (Group ClassInfo 59*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "<a href=\"#JDWP_TypeTag\">Kind</a> " 60*e82f7db8SAndroid Build Coastguard Worker "of following reference type. ") 61*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID "Matching loaded reference type") 62*e82f7db8SAndroid Build Coastguard Worker (int status "The current class " 63*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_ClassStatus\">status.</a> ") 64*e82f7db8SAndroid Build Coastguard Worker ) 65*e82f7db8SAndroid Build Coastguard Worker ) 66*e82f7db8SAndroid Build Coastguard Worker ) 67*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 68*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 69*e82f7db8SAndroid Build Coastguard Worker ) 70*e82f7db8SAndroid Build Coastguard Worker ) 71*e82f7db8SAndroid Build Coastguard Worker (Command AllClasses=3 72*e82f7db8SAndroid Build Coastguard Worker "Returns reference types for all classes currently loaded by the " 73*e82f7db8SAndroid Build Coastguard Worker "target VM." 74*e82f7db8SAndroid Build Coastguard Worker (Out 75*e82f7db8SAndroid Build Coastguard Worker ) 76*e82f7db8SAndroid Build Coastguard Worker (Reply 77*e82f7db8SAndroid Build Coastguard Worker (Repeat classes "Number of reference types that follow." 78*e82f7db8SAndroid Build Coastguard Worker (Group ClassInfo 79*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "<a href=\"#JDWP_TypeTag\">Kind</a> " 80*e82f7db8SAndroid Build Coastguard Worker "of following reference type. ") 81*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID "Loaded reference type") 82*e82f7db8SAndroid Build Coastguard Worker (string signature 83*e82f7db8SAndroid Build Coastguard Worker "The JNI signature of the loaded reference type") 84*e82f7db8SAndroid Build Coastguard Worker (int status "The current class " 85*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_ClassStatus\">status.</a> ") 86*e82f7db8SAndroid Build Coastguard Worker ) 87*e82f7db8SAndroid Build Coastguard Worker ) 88*e82f7db8SAndroid Build Coastguard Worker ) 89*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 90*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 91*e82f7db8SAndroid Build Coastguard Worker ) 92*e82f7db8SAndroid Build Coastguard Worker ) 93*e82f7db8SAndroid Build Coastguard Worker (Command AllThreads=4 94*e82f7db8SAndroid Build Coastguard Worker "Returns all threads currently running in the target VM . " 95*e82f7db8SAndroid Build Coastguard Worker "The returned list contains threads created through " 96*e82f7db8SAndroid Build Coastguard Worker "java.lang.Thread, all native threads attached to " 97*e82f7db8SAndroid Build Coastguard Worker "the target VM through JNI, and system threads created " 98*e82f7db8SAndroid Build Coastguard Worker "by the target VM. Threads that have not yet been started " 99*e82f7db8SAndroid Build Coastguard Worker "and threads that have completed their execution are not " 100*e82f7db8SAndroid Build Coastguard Worker "included in the returned list. " 101*e82f7db8SAndroid Build Coastguard Worker (Out 102*e82f7db8SAndroid Build Coastguard Worker ) 103*e82f7db8SAndroid Build Coastguard Worker (Reply 104*e82f7db8SAndroid Build Coastguard Worker (Repeat threads "Number of threads that follow." 105*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "A running thread") 106*e82f7db8SAndroid Build Coastguard Worker ) 107*e82f7db8SAndroid Build Coastguard Worker ) 108*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 109*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 110*e82f7db8SAndroid Build Coastguard Worker ) 111*e82f7db8SAndroid Build Coastguard Worker ) 112*e82f7db8SAndroid Build Coastguard Worker (Command TopLevelThreadGroups=5 113*e82f7db8SAndroid Build Coastguard Worker "Returns all thread groups that do not have a parent. This command " 114*e82f7db8SAndroid Build Coastguard Worker "may be used as the first step in building a tree (or trees) of the " 115*e82f7db8SAndroid Build Coastguard Worker "existing thread groups." 116*e82f7db8SAndroid Build Coastguard Worker (Out 117*e82f7db8SAndroid Build Coastguard Worker ) 118*e82f7db8SAndroid Build Coastguard Worker (Reply 119*e82f7db8SAndroid Build Coastguard Worker (Repeat groups "Number of thread groups that follow." 120*e82f7db8SAndroid Build Coastguard Worker (threadGroupObject group "A top level thread group") 121*e82f7db8SAndroid Build Coastguard Worker ) 122*e82f7db8SAndroid Build Coastguard Worker ) 123*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 124*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 125*e82f7db8SAndroid Build Coastguard Worker ) 126*e82f7db8SAndroid Build Coastguard Worker ) 127*e82f7db8SAndroid Build Coastguard Worker (Command Dispose=6 128*e82f7db8SAndroid Build Coastguard Worker "Invalidates this virtual machine mirror. " 129*e82f7db8SAndroid Build Coastguard Worker "The communication channel to the target VM is closed, and " 130*e82f7db8SAndroid Build Coastguard Worker "the target VM prepares to accept another subsequent connection " 131*e82f7db8SAndroid Build Coastguard Worker "from this debugger or another debugger, including the " 132*e82f7db8SAndroid Build Coastguard Worker "following tasks: " 133*e82f7db8SAndroid Build Coastguard Worker "<ul>" 134*e82f7db8SAndroid Build Coastguard Worker "<li>All event requests are cancelled. " 135*e82f7db8SAndroid Build Coastguard Worker "<li>All threads suspended by the thread-level " 136*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_ThreadReference_Resume\">resume</a> command " 137*e82f7db8SAndroid Build Coastguard Worker "or the VM-level " 138*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_Resume\">resume</a> command " 139*e82f7db8SAndroid Build Coastguard Worker "are resumed as many times as necessary for them to run. " 140*e82f7db8SAndroid Build Coastguard Worker "<li>Garbage collection is re-enabled in all cases where it was " 141*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_ObjectReference_DisableCollection\">disabled</a> " 142*e82f7db8SAndroid Build Coastguard Worker "</ul>" 143*e82f7db8SAndroid Build Coastguard Worker "Any current method invocations executing in the target VM " 144*e82f7db8SAndroid Build Coastguard Worker "are continued after the disconnection. Upon completion of any such " 145*e82f7db8SAndroid Build Coastguard Worker "method invocation, the invoking thread continues from the " 146*e82f7db8SAndroid Build Coastguard Worker "location where it was originally stopped. " 147*e82f7db8SAndroid Build Coastguard Worker "<p>" 148*e82f7db8SAndroid Build Coastguard Worker "Resources originating in " 149*e82f7db8SAndroid Build Coastguard Worker "this VirtualMachine (ObjectReferences, ReferenceTypes, etc.) " 150*e82f7db8SAndroid Build Coastguard Worker "will become invalid. " 151*e82f7db8SAndroid Build Coastguard Worker (Out 152*e82f7db8SAndroid Build Coastguard Worker ) 153*e82f7db8SAndroid Build Coastguard Worker (Reply 154*e82f7db8SAndroid Build Coastguard Worker ) 155*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 156*e82f7db8SAndroid Build Coastguard Worker ) 157*e82f7db8SAndroid Build Coastguard Worker ) 158*e82f7db8SAndroid Build Coastguard Worker (Command IDSizes=7 159*e82f7db8SAndroid Build Coastguard Worker "Returns the sizes of variably-sized data types in the target VM." 160*e82f7db8SAndroid Build Coastguard Worker "The returned values indicate the number of bytes used by the " 161*e82f7db8SAndroid Build Coastguard Worker "identifiers in command and reply packets." 162*e82f7db8SAndroid Build Coastguard Worker (Out 163*e82f7db8SAndroid Build Coastguard Worker ) 164*e82f7db8SAndroid Build Coastguard Worker (Reply 165*e82f7db8SAndroid Build Coastguard Worker (int fieldIDSize "fieldID size in bytes ") 166*e82f7db8SAndroid Build Coastguard Worker (int methodIDSize "methodID size in bytes ") 167*e82f7db8SAndroid Build Coastguard Worker (int objectIDSize "objectID size in bytes ") 168*e82f7db8SAndroid Build Coastguard Worker (int referenceTypeIDSize "referenceTypeID size in bytes ") 169*e82f7db8SAndroid Build Coastguard Worker (int frameIDSize "frameID size in bytes ") 170*e82f7db8SAndroid Build Coastguard Worker ) 171*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 172*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 173*e82f7db8SAndroid Build Coastguard Worker ) 174*e82f7db8SAndroid Build Coastguard Worker ) 175*e82f7db8SAndroid Build Coastguard Worker (Command Suspend=8 176*e82f7db8SAndroid Build Coastguard Worker "Suspends the execution of the application running in the target " 177*e82f7db8SAndroid Build Coastguard Worker "VM. All Java threads currently running will be suspended. " 178*e82f7db8SAndroid Build Coastguard Worker "<p>" 179*e82f7db8SAndroid Build Coastguard Worker "Unlike java.lang.Thread.suspend, " 180*e82f7db8SAndroid Build Coastguard Worker "suspends of both the virtual machine and individual threads are " 181*e82f7db8SAndroid Build Coastguard Worker "counted. Before a thread will run again, it must be resumed through " 182*e82f7db8SAndroid Build Coastguard Worker "the <a href=\"#JDWP_VirtualMachine_Resume\">VM-level resume</a> command " 183*e82f7db8SAndroid Build Coastguard Worker "or the <a href=\"#JDWP_ThreadReference_Resume\">thread-level resume</a> command " 184*e82f7db8SAndroid Build Coastguard Worker "the same number of times it has been suspended. " 185*e82f7db8SAndroid Build Coastguard Worker (Out 186*e82f7db8SAndroid Build Coastguard Worker ) 187*e82f7db8SAndroid Build Coastguard Worker (Reply 188*e82f7db8SAndroid Build Coastguard Worker ) 189*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 190*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 191*e82f7db8SAndroid Build Coastguard Worker ) 192*e82f7db8SAndroid Build Coastguard Worker ) 193*e82f7db8SAndroid Build Coastguard Worker (Command Resume=9 194*e82f7db8SAndroid Build Coastguard Worker "Resumes execution of the application after the suspend " 195*e82f7db8SAndroid Build Coastguard Worker "command or an event has stopped it. " 196*e82f7db8SAndroid Build Coastguard Worker "Suspensions of the Virtual Machine and individual threads are " 197*e82f7db8SAndroid Build Coastguard Worker "counted. If a particular thread is suspended n times, it must " 198*e82f7db8SAndroid Build Coastguard Worker "resumed n times before it will continue. " 199*e82f7db8SAndroid Build Coastguard Worker (Out 200*e82f7db8SAndroid Build Coastguard Worker ) 201*e82f7db8SAndroid Build Coastguard Worker (Reply 202*e82f7db8SAndroid Build Coastguard Worker ) 203*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 204*e82f7db8SAndroid Build Coastguard Worker ) 205*e82f7db8SAndroid Build Coastguard Worker ) 206*e82f7db8SAndroid Build Coastguard Worker (Command Exit=10 207*e82f7db8SAndroid Build Coastguard Worker "Terminates the target VM with the given exit code. " 208*e82f7db8SAndroid Build Coastguard Worker "On some platforms, the exit code might be truncated, for " 209*e82f7db8SAndroid Build Coastguard Worker "example, to the low order 8 bits. " 210*e82f7db8SAndroid Build Coastguard Worker "All ids previously returned from the target VM become invalid. " 211*e82f7db8SAndroid Build Coastguard Worker "Threads running in the VM are abruptly terminated. " 212*e82f7db8SAndroid Build Coastguard Worker "A thread death exception is not thrown and " 213*e82f7db8SAndroid Build Coastguard Worker "finally blocks are not run." 214*e82f7db8SAndroid Build Coastguard Worker (Out 215*e82f7db8SAndroid Build Coastguard Worker (int exitCode "the exit code") 216*e82f7db8SAndroid Build Coastguard Worker ) 217*e82f7db8SAndroid Build Coastguard Worker (Reply 218*e82f7db8SAndroid Build Coastguard Worker ) 219*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 220*e82f7db8SAndroid Build Coastguard Worker ) 221*e82f7db8SAndroid Build Coastguard Worker ) 222*e82f7db8SAndroid Build Coastguard Worker (Command CreateString=11 223*e82f7db8SAndroid Build Coastguard Worker "Creates a new string object in the target VM and returns " 224*e82f7db8SAndroid Build Coastguard Worker "its id. " 225*e82f7db8SAndroid Build Coastguard Worker (Out 226*e82f7db8SAndroid Build Coastguard Worker (string utf "UTF-8 characters to use in the created string. ") 227*e82f7db8SAndroid Build Coastguard Worker ) 228*e82f7db8SAndroid Build Coastguard Worker (Reply 229*e82f7db8SAndroid Build Coastguard Worker (stringObject stringObject 230*e82f7db8SAndroid Build Coastguard Worker "Created string (instance of java.lang.String) ") 231*e82f7db8SAndroid Build Coastguard Worker ) 232*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 233*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 234*e82f7db8SAndroid Build Coastguard Worker ) 235*e82f7db8SAndroid Build Coastguard Worker ) 236*e82f7db8SAndroid Build Coastguard Worker (Command Capabilities=12 237*e82f7db8SAndroid Build Coastguard Worker "Retrieve this VM's capabilities. The capabilities are returned " 238*e82f7db8SAndroid Build Coastguard Worker "as booleans, each indicating the presence or absence of a " 239*e82f7db8SAndroid Build Coastguard Worker "capability. The commands associated with each capability will " 240*e82f7db8SAndroid Build Coastguard Worker "return the NOT_IMPLEMENTED error if the cabability is not " 241*e82f7db8SAndroid Build Coastguard Worker "available." 242*e82f7db8SAndroid Build Coastguard Worker (Out 243*e82f7db8SAndroid Build Coastguard Worker ) 244*e82f7db8SAndroid Build Coastguard Worker (Reply 245*e82f7db8SAndroid Build Coastguard Worker (boolean canWatchFieldModification 246*e82f7db8SAndroid Build Coastguard Worker "Can the VM watch field modification, and therefore " 247*e82f7db8SAndroid Build Coastguard Worker "can it send the Modification Watchpoint Event?") 248*e82f7db8SAndroid Build Coastguard Worker (boolean canWatchFieldAccess 249*e82f7db8SAndroid Build Coastguard Worker "Can the VM watch field access, and therefore " 250*e82f7db8SAndroid Build Coastguard Worker "can it send the Access Watchpoint Event?") 251*e82f7db8SAndroid Build Coastguard Worker (boolean canGetBytecodes 252*e82f7db8SAndroid Build Coastguard Worker "Can the VM get the bytecodes of a given method? ") 253*e82f7db8SAndroid Build Coastguard Worker (boolean canGetSyntheticAttribute 254*e82f7db8SAndroid Build Coastguard Worker "Can the VM determine whether a field or method is " 255*e82f7db8SAndroid Build Coastguard Worker "synthetic? (that is, can the VM determine if the " 256*e82f7db8SAndroid Build Coastguard Worker "method or the field was invented by the compiler?) ") 257*e82f7db8SAndroid Build Coastguard Worker (boolean canGetOwnedMonitorInfo 258*e82f7db8SAndroid Build Coastguard Worker "Can the VM get the owned monitors infornation for " 259*e82f7db8SAndroid Build Coastguard Worker "a thread?") 260*e82f7db8SAndroid Build Coastguard Worker (boolean canGetCurrentContendedMonitor 261*e82f7db8SAndroid Build Coastguard Worker "Can the VM get the current contended monitor of a thread?") 262*e82f7db8SAndroid Build Coastguard Worker (boolean canGetMonitorInfo 263*e82f7db8SAndroid Build Coastguard Worker "Can the VM get the monitor information for a given object? ") 264*e82f7db8SAndroid Build Coastguard Worker ) 265*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 266*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 267*e82f7db8SAndroid Build Coastguard Worker ) 268*e82f7db8SAndroid Build Coastguard Worker ) 269*e82f7db8SAndroid Build Coastguard Worker (Command ClassPaths=13 270*e82f7db8SAndroid Build Coastguard Worker "Retrieve the classpath and bootclasspath of the target VM. " 271*e82f7db8SAndroid Build Coastguard Worker "If the classpath is not defined, returns an empty list. If the " 272*e82f7db8SAndroid Build Coastguard Worker "bootclasspath is not defined returns an empty list." 273*e82f7db8SAndroid Build Coastguard Worker (Out 274*e82f7db8SAndroid Build Coastguard Worker ) 275*e82f7db8SAndroid Build Coastguard Worker (Reply 276*e82f7db8SAndroid Build Coastguard Worker (string baseDir "Base directory used to resolve relative " 277*e82f7db8SAndroid Build Coastguard Worker "paths in either of the following lists.") 278*e82f7db8SAndroid Build Coastguard Worker (Repeat classpaths "Number of paths in classpath." 279*e82f7db8SAndroid Build Coastguard Worker (string path "One component of classpath") ) 280*e82f7db8SAndroid Build Coastguard Worker (Repeat bootclasspaths "Number of paths in bootclasspath." 281*e82f7db8SAndroid Build Coastguard Worker (string path "One component of bootclasspath") ) 282*e82f7db8SAndroid Build Coastguard Worker ) 283*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 284*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 285*e82f7db8SAndroid Build Coastguard Worker ) 286*e82f7db8SAndroid Build Coastguard Worker ) 287*e82f7db8SAndroid Build Coastguard Worker (Command DisposeObjects=14 288*e82f7db8SAndroid Build Coastguard Worker "Releases a list of object IDs. For each object in the list, the " 289*e82f7db8SAndroid Build Coastguard Worker "following applies. " 290*e82f7db8SAndroid Build Coastguard Worker "The count of references held by the back-end (the reference " 291*e82f7db8SAndroid Build Coastguard Worker "count) will be decremented by refCnt. " 292*e82f7db8SAndroid Build Coastguard Worker "If thereafter the reference count is less than " 293*e82f7db8SAndroid Build Coastguard Worker "or equal to zero, the ID is freed. " 294*e82f7db8SAndroid Build Coastguard Worker "Any back-end resources associated with the freed ID may " 295*e82f7db8SAndroid Build Coastguard Worker "be freed, and if garbage collection was " 296*e82f7db8SAndroid Build Coastguard Worker "disabled for the object, it will be re-enabled. " 297*e82f7db8SAndroid Build Coastguard Worker "The sender of this command " 298*e82f7db8SAndroid Build Coastguard Worker "promises that no further commands will be sent " 299*e82f7db8SAndroid Build Coastguard Worker "referencing a freed ID. 300*e82f7db8SAndroid Build Coastguard Worker "<p>" 301*e82f7db8SAndroid Build Coastguard Worker "Use of this command is not required. If it is not sent, " 302*e82f7db8SAndroid Build Coastguard Worker "resources associated with each ID will be freed by the back-end " 303*e82f7db8SAndroid Build Coastguard Worker "at some time after the corresponding object is garbage collected. " 304*e82f7db8SAndroid Build Coastguard Worker "It is most useful to use this command to reduce the load on the " 305*e82f7db8SAndroid Build Coastguard Worker "back-end if a very large number of " 306*e82f7db8SAndroid Build Coastguard Worker "objects has been retrieved from the back-end (a large array, " 307*e82f7db8SAndroid Build Coastguard Worker "for example) but may not be garbage collected any time soon. " 308*e82f7db8SAndroid Build Coastguard Worker "<p>" 309*e82f7db8SAndroid Build Coastguard Worker "IDs may be re-used by the back-end after they " 310*e82f7db8SAndroid Build Coastguard Worker "have been freed with this command." 311*e82f7db8SAndroid Build Coastguard Worker "This description assumes reference counting, " 312*e82f7db8SAndroid Build Coastguard Worker "a back-end may use any implementation which operates " 313*e82f7db8SAndroid Build Coastguard Worker "equivalently. " 314*e82f7db8SAndroid Build Coastguard Worker (Out 315*e82f7db8SAndroid Build Coastguard Worker (Repeat requests "Number of object dispose requests that follow" 316*e82f7db8SAndroid Build Coastguard Worker (Group Request 317*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 318*e82f7db8SAndroid Build Coastguard Worker (int refCnt "The number of times this object ID has been " 319*e82f7db8SAndroid Build Coastguard Worker "part of a packet received from the back-end. " 320*e82f7db8SAndroid Build Coastguard Worker "An accurate count prevents the object ID " 321*e82f7db8SAndroid Build Coastguard Worker "from being freed on the back-end if " 322*e82f7db8SAndroid Build Coastguard Worker "it is part of an incoming packet, not yet " 323*e82f7db8SAndroid Build Coastguard Worker "handled by the front-end.") 324*e82f7db8SAndroid Build Coastguard Worker ) 325*e82f7db8SAndroid Build Coastguard Worker ) 326*e82f7db8SAndroid Build Coastguard Worker ) 327*e82f7db8SAndroid Build Coastguard Worker (Reply 328*e82f7db8SAndroid Build Coastguard Worker ) 329*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 330*e82f7db8SAndroid Build Coastguard Worker ) 331*e82f7db8SAndroid Build Coastguard Worker ) 332*e82f7db8SAndroid Build Coastguard Worker (Command HoldEvents=15 333*e82f7db8SAndroid Build Coastguard Worker "Tells the target VM to stop sending events. Events are not discarded; " 334*e82f7db8SAndroid Build Coastguard Worker "they are held until a subsequent ReleaseEvents command is sent. " 335*e82f7db8SAndroid Build Coastguard Worker "This command is useful to control the number of events sent " 336*e82f7db8SAndroid Build Coastguard Worker "to the debugger VM in situations where very large numbers of events " 337*e82f7db8SAndroid Build Coastguard Worker "are generated. " 338*e82f7db8SAndroid Build Coastguard Worker "While events are held by the debugger back-end, application " 339*e82f7db8SAndroid Build Coastguard Worker "execution may be frozen by the debugger back-end to prevent " 340*e82f7db8SAndroid Build Coastguard Worker "buffer overflows on the back end. 341*e82f7db8SAndroid Build Coastguard Worker "Responses to commands are never held and are not affected by this 342*e82f7db8SAndroid Build Coastguard Worker "command. If events are already being held, this command is " 343*e82f7db8SAndroid Build Coastguard Worker "ignored." 344*e82f7db8SAndroid Build Coastguard Worker (Out 345*e82f7db8SAndroid Build Coastguard Worker ) 346*e82f7db8SAndroid Build Coastguard Worker (Reply 347*e82f7db8SAndroid Build Coastguard Worker ) 348*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 349*e82f7db8SAndroid Build Coastguard Worker ) 350*e82f7db8SAndroid Build Coastguard Worker ) 351*e82f7db8SAndroid Build Coastguard Worker (Command ReleaseEvents=16 352*e82f7db8SAndroid Build Coastguard Worker "Tells the target VM to continue sending events. This command is " 353*e82f7db8SAndroid Build Coastguard Worker "used to restore normal activity after a HoldEvents command. If " 354*e82f7db8SAndroid Build Coastguard Worker "there is no current HoldEvents command in effect, this command is " 355*e82f7db8SAndroid Build Coastguard Worker "ignored." 356*e82f7db8SAndroid Build Coastguard Worker (Out 357*e82f7db8SAndroid Build Coastguard Worker ) 358*e82f7db8SAndroid Build Coastguard Worker (Reply 359*e82f7db8SAndroid Build Coastguard Worker ) 360*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 361*e82f7db8SAndroid Build Coastguard Worker ) 362*e82f7db8SAndroid Build Coastguard Worker ) 363*e82f7db8SAndroid Build Coastguard Worker (Command CapabilitiesNew=17 364*e82f7db8SAndroid Build Coastguard Worker "Retrieve all of this VM's capabilities. The capabilities are returned " 365*e82f7db8SAndroid Build Coastguard Worker "as booleans, each indicating the presence or absence of a " 366*e82f7db8SAndroid Build Coastguard Worker "capability. The commands associated with each capability will " 367*e82f7db8SAndroid Build Coastguard Worker "return the NOT_IMPLEMENTED error if the cabability is not " 368*e82f7db8SAndroid Build Coastguard Worker "available." 369*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.4." 370*e82f7db8SAndroid Build Coastguard Worker (Out 371*e82f7db8SAndroid Build Coastguard Worker ) 372*e82f7db8SAndroid Build Coastguard Worker (Reply 373*e82f7db8SAndroid Build Coastguard Worker (boolean canWatchFieldModification 374*e82f7db8SAndroid Build Coastguard Worker "Can the VM watch field modification, and therefore " 375*e82f7db8SAndroid Build Coastguard Worker "can it send the Modification Watchpoint Event?") 376*e82f7db8SAndroid Build Coastguard Worker (boolean canWatchFieldAccess 377*e82f7db8SAndroid Build Coastguard Worker "Can the VM watch field access, and therefore " 378*e82f7db8SAndroid Build Coastguard Worker "can it send the Access Watchpoint Event?") 379*e82f7db8SAndroid Build Coastguard Worker (boolean canGetBytecodes 380*e82f7db8SAndroid Build Coastguard Worker "Can the VM get the bytecodes of a given method? ") 381*e82f7db8SAndroid Build Coastguard Worker (boolean canGetSyntheticAttribute 382*e82f7db8SAndroid Build Coastguard Worker "Can the VM determine whether a field or method is " 383*e82f7db8SAndroid Build Coastguard Worker "synthetic? (that is, can the VM determine if the " 384*e82f7db8SAndroid Build Coastguard Worker "method or the field was invented by the compiler?) ") 385*e82f7db8SAndroid Build Coastguard Worker (boolean canGetOwnedMonitorInfo 386*e82f7db8SAndroid Build Coastguard Worker "Can the VM get the owned monitors infornation for " 387*e82f7db8SAndroid Build Coastguard Worker "a thread?") 388*e82f7db8SAndroid Build Coastguard Worker (boolean canGetCurrentContendedMonitor 389*e82f7db8SAndroid Build Coastguard Worker "Can the VM get the current contended monitor of a thread?") 390*e82f7db8SAndroid Build Coastguard Worker (boolean canGetMonitorInfo 391*e82f7db8SAndroid Build Coastguard Worker "Can the VM get the monitor information for a given object? ") 392*e82f7db8SAndroid Build Coastguard Worker (boolean canRedefineClasses 393*e82f7db8SAndroid Build Coastguard Worker "Can the VM redefine classes?") 394*e82f7db8SAndroid Build Coastguard Worker (boolean canAddMethod 395*e82f7db8SAndroid Build Coastguard Worker "Can the VM add methods when redefining " 396*e82f7db8SAndroid Build Coastguard Worker "classes?") 397*e82f7db8SAndroid Build Coastguard Worker (boolean canUnrestrictedlyRedefineClasses 398*e82f7db8SAndroid Build Coastguard Worker "Can the VM redefine classes" 399*e82f7db8SAndroid Build Coastguard Worker "in arbitrary ways?") 400*e82f7db8SAndroid Build Coastguard Worker (boolean canPopFrames 401*e82f7db8SAndroid Build Coastguard Worker "Can the VM pop stack frames?") 402*e82f7db8SAndroid Build Coastguard Worker (boolean canUseInstanceFilters 403*e82f7db8SAndroid Build Coastguard Worker "Can the VM filter events by specific object?") 404*e82f7db8SAndroid Build Coastguard Worker (boolean canGetSourceDebugExtension 405*e82f7db8SAndroid Build Coastguard Worker "Can the VM get the source debug extension?") 406*e82f7db8SAndroid Build Coastguard Worker (boolean canRequestVMDeathEvent 407*e82f7db8SAndroid Build Coastguard Worker "Can the VM request VM death events?") 408*e82f7db8SAndroid Build Coastguard Worker (boolean canSetDefaultStratum 409*e82f7db8SAndroid Build Coastguard Worker "Can the VM set a default stratum?") 410*e82f7db8SAndroid Build Coastguard Worker (boolean canGetInstanceInfo 411*e82f7db8SAndroid Build Coastguard Worker "Can the VM return instances, counts of instances of classes " 412*e82f7db8SAndroid Build Coastguard Worker "and referring objects?") 413*e82f7db8SAndroid Build Coastguard Worker (boolean canRequestMonitorEvents 414*e82f7db8SAndroid Build Coastguard Worker "Can the VM request monitor events?") 415*e82f7db8SAndroid Build Coastguard Worker (boolean canGetMonitorFrameInfo 416*e82f7db8SAndroid Build Coastguard Worker "Can the VM get monitors with frame depth info?") 417*e82f7db8SAndroid Build Coastguard Worker (boolean canUseSourceNameFilters 418*e82f7db8SAndroid Build Coastguard Worker "Can the VM filter class prepare events by source name?") 419*e82f7db8SAndroid Build Coastguard Worker (boolean canGetConstantPool 420*e82f7db8SAndroid Build Coastguard Worker "Can the VM return the constant pool information?") 421*e82f7db8SAndroid Build Coastguard Worker (boolean canForceEarlyReturn 422*e82f7db8SAndroid Build Coastguard Worker "Can the VM force early return from a method?") 423*e82f7db8SAndroid Build Coastguard Worker (boolean reserved22 424*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 425*e82f7db8SAndroid Build Coastguard Worker (boolean reserved23 426*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 427*e82f7db8SAndroid Build Coastguard Worker (boolean reserved24 428*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 429*e82f7db8SAndroid Build Coastguard Worker (boolean reserved25 430*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 431*e82f7db8SAndroid Build Coastguard Worker (boolean reserved26 432*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 433*e82f7db8SAndroid Build Coastguard Worker (boolean reserved27 434*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 435*e82f7db8SAndroid Build Coastguard Worker (boolean reserved28 436*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 437*e82f7db8SAndroid Build Coastguard Worker (boolean reserved29 438*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 439*e82f7db8SAndroid Build Coastguard Worker (boolean reserved30 440*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 441*e82f7db8SAndroid Build Coastguard Worker (boolean reserved31 442*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 443*e82f7db8SAndroid Build Coastguard Worker (boolean reserved32 444*e82f7db8SAndroid Build Coastguard Worker "Reserved for future capability") 445*e82f7db8SAndroid Build Coastguard Worker ) 446*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 447*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 448*e82f7db8SAndroid Build Coastguard Worker ) 449*e82f7db8SAndroid Build Coastguard Worker ) 450*e82f7db8SAndroid Build Coastguard Worker (Command RedefineClasses=18 451*e82f7db8SAndroid Build Coastguard Worker "Installs new class definitions. " 452*e82f7db8SAndroid Build Coastguard Worker "If there are active stack frames in methods of the redefined classes in the " 453*e82f7db8SAndroid Build Coastguard Worker "target VM then those active frames continue to run the bytecodes of the " 454*e82f7db8SAndroid Build Coastguard Worker "original method. These methods are considered obsolete - see " 455*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_Method_IsObsolete\">IsObsolete</a>. The methods in the " 456*e82f7db8SAndroid Build Coastguard Worker "redefined classes will be used for new invokes in the target VM. " 457*e82f7db8SAndroid Build Coastguard Worker "The original method ID refers to the redefined method. " 458*e82f7db8SAndroid Build Coastguard Worker "All breakpoints in the redefined classes are cleared." 459*e82f7db8SAndroid Build Coastguard Worker "If resetting of stack frames is desired, the " 460*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_StackFrame_PopFrames\">PopFrames</a> command can be used " 461*e82f7db8SAndroid Build Coastguard Worker "to pop frames with obsolete methods." 462*e82f7db8SAndroid Build Coastguard Worker "<p>" 463*e82f7db8SAndroid Build Coastguard Worker "Requires canRedefineClasses capability - see " 464*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. " 465*e82f7db8SAndroid Build Coastguard Worker "In addition to the canRedefineClasses capability, the target VM must " 466*e82f7db8SAndroid Build Coastguard Worker "have the canAddMethod capability to add methods when redefining classes, " 467*e82f7db8SAndroid Build Coastguard Worker "or the canUnrestrictedlyRedefineClasses to redefine classes in arbitrary " 468*e82f7db8SAndroid Build Coastguard Worker "ways." 469*e82f7db8SAndroid Build Coastguard Worker (Out 470*e82f7db8SAndroid Build Coastguard Worker (Repeat classes "Number of reference types that follow." 471*e82f7db8SAndroid Build Coastguard Worker (Group ClassDef 472*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type.") 473*e82f7db8SAndroid Build Coastguard Worker (Repeat classfile "Number of bytes defining class (below)" 474*e82f7db8SAndroid Build Coastguard Worker (byte classbyte "byte in JVM class file " 475*e82f7db8SAndroid Build Coastguard Worker "format.") 476*e82f7db8SAndroid Build Coastguard Worker ) 477*e82f7db8SAndroid Build Coastguard Worker ) 478*e82f7db8SAndroid Build Coastguard Worker ) 479*e82f7db8SAndroid Build Coastguard Worker ) 480*e82f7db8SAndroid Build Coastguard Worker (Reply 481*e82f7db8SAndroid Build Coastguard Worker ) 482*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 483*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "One of the refTypes is not the ID of a reference " 484*e82f7db8SAndroid Build Coastguard Worker "type.") 485*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "One of the refTypes is not a known ID.") 486*e82f7db8SAndroid Build Coastguard Worker (Error UNSUPPORTED_VERSION) 487*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS_FORMAT) 488*e82f7db8SAndroid Build Coastguard Worker (Error CIRCULAR_CLASS_DEFINITION) 489*e82f7db8SAndroid Build Coastguard Worker (Error FAILS_VERIFICATION) 490*e82f7db8SAndroid Build Coastguard Worker (Error NAMES_DONT_MATCH) 491*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED "No aspect of this functionality is implemented " 492*e82f7db8SAndroid Build Coastguard Worker "(CapabilitiesNew.canRedefineClasses is false)") 493*e82f7db8SAndroid Build Coastguard Worker (Error ADD_METHOD_NOT_IMPLEMENTED) 494*e82f7db8SAndroid Build Coastguard Worker (Error SCHEMA_CHANGE_NOT_IMPLEMENTED) 495*e82f7db8SAndroid Build Coastguard Worker (Error HIERARCHY_CHANGE_NOT_IMPLEMENTED) 496*e82f7db8SAndroid Build Coastguard Worker (Error DELETE_METHOD_NOT_IMPLEMENTED) 497*e82f7db8SAndroid Build Coastguard Worker (Error CLASS_MODIFIERS_CHANGE_NOT_IMPLEMENTED) 498*e82f7db8SAndroid Build Coastguard Worker (Error METHOD_MODIFIERS_CHANGE_NOT_IMPLEMENTED) 499*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 500*e82f7db8SAndroid Build Coastguard Worker ) 501*e82f7db8SAndroid Build Coastguard Worker ) 502*e82f7db8SAndroid Build Coastguard Worker (Command SetDefaultStratum=19 503*e82f7db8SAndroid Build Coastguard Worker "Set the default stratum. Requires canSetDefaultStratum capability - see " 504*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 505*e82f7db8SAndroid Build Coastguard Worker (Out 506*e82f7db8SAndroid Build Coastguard Worker (string stratumID "default stratum, or empty string to use " 507*e82f7db8SAndroid Build Coastguard Worker "reference type default.") 508*e82f7db8SAndroid Build Coastguard Worker ) 509*e82f7db8SAndroid Build Coastguard Worker (Reply 510*e82f7db8SAndroid Build Coastguard Worker ) 511*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 512*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 513*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 514*e82f7db8SAndroid Build Coastguard Worker ) 515*e82f7db8SAndroid Build Coastguard Worker ) 516*e82f7db8SAndroid Build Coastguard Worker (Command AllClassesWithGeneric=20 517*e82f7db8SAndroid Build Coastguard Worker "Returns reference types for all classes currently loaded by the " 518*e82f7db8SAndroid Build Coastguard Worker "target VM. " 519*e82f7db8SAndroid Build Coastguard Worker "Both the JNI signature and the generic signature are " 520*e82f7db8SAndroid Build Coastguard Worker "returned for each class. " 521*e82f7db8SAndroid Build Coastguard Worker "Generic signatures are described in the signature attribute " 522*e82f7db8SAndroid Build Coastguard Worker "section in " 523*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 524*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.5." 525*e82f7db8SAndroid Build Coastguard Worker (Out 526*e82f7db8SAndroid Build Coastguard Worker ) 527*e82f7db8SAndroid Build Coastguard Worker (Reply 528*e82f7db8SAndroid Build Coastguard Worker (Repeat classes "Number of reference types that follow." 529*e82f7db8SAndroid Build Coastguard Worker (Group ClassInfo 530*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "<a href=\"#JDWP_TypeTag\">Kind</a> " 531*e82f7db8SAndroid Build Coastguard Worker "of following reference type. ") 532*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID "Loaded reference type") 533*e82f7db8SAndroid Build Coastguard Worker (string signature 534*e82f7db8SAndroid Build Coastguard Worker "The JNI signature of the loaded reference type.") 535*e82f7db8SAndroid Build Coastguard Worker (string genericSignature 536*e82f7db8SAndroid Build Coastguard Worker "The generic signature of the loaded reference type " 537*e82f7db8SAndroid Build Coastguard Worker "or an empty string if there is none.") 538*e82f7db8SAndroid Build Coastguard Worker (int status "The current class " 539*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_ClassStatus\">status.</a> ") 540*e82f7db8SAndroid Build Coastguard Worker ) 541*e82f7db8SAndroid Build Coastguard Worker ) 542*e82f7db8SAndroid Build Coastguard Worker ) 543*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 544*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 545*e82f7db8SAndroid Build Coastguard Worker ) 546*e82f7db8SAndroid Build Coastguard Worker ) 547*e82f7db8SAndroid Build Coastguard Worker 548*e82f7db8SAndroid Build Coastguard Worker (Command InstanceCounts=21 549*e82f7db8SAndroid Build Coastguard Worker "Returns the number of instances of each reference type in the input list. " 550*e82f7db8SAndroid Build Coastguard Worker "Only instances that are reachable for the purposes of " 551*e82f7db8SAndroid Build Coastguard Worker "garbage collection are counted. If a reference type is invalid, " 552*e82f7db8SAndroid Build Coastguard Worker "eg. it has been unloaded, zero is returned for its instance count." 553*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. Requires canGetInstanceInfo capability - see " 554*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 555*e82f7db8SAndroid Build Coastguard Worker (Out 556*e82f7db8SAndroid Build Coastguard Worker (Repeat refTypesCount "Number of reference types that follow. Must be non-negative." 557*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "A reference type ID.") 558*e82f7db8SAndroid Build Coastguard Worker ) 559*e82f7db8SAndroid Build Coastguard Worker ) 560*e82f7db8SAndroid Build Coastguard Worker (Reply 561*e82f7db8SAndroid Build Coastguard Worker (Repeat counts "The number of counts that follow." 562*e82f7db8SAndroid Build Coastguard Worker (long instanceCount "The number of instances for the corresponding reference type " 563*e82f7db8SAndroid Build Coastguard Worker "in 'Out Data'.") 564*e82f7db8SAndroid Build Coastguard Worker ) 565*e82f7db8SAndroid Build Coastguard Worker ) 566*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 567*e82f7db8SAndroid Build Coastguard Worker (Error ILLEGAL_ARGUMENT "refTypesCount is less than zero.") 568*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 569*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 570*e82f7db8SAndroid Build Coastguard Worker ) 571*e82f7db8SAndroid Build Coastguard Worker ) 572*e82f7db8SAndroid Build Coastguard Worker) 573*e82f7db8SAndroid Build Coastguard Worker 574*e82f7db8SAndroid Build Coastguard Worker(CommandSet ReferenceType=2 575*e82f7db8SAndroid Build Coastguard Worker (Command Signature=1 576*e82f7db8SAndroid Build Coastguard Worker "Returns the JNI signature of a reference type. " 577*e82f7db8SAndroid Build Coastguard Worker "JNI signature formats are described in the " 578*e82f7db8SAndroid Build Coastguard Worker "<a href=\"http://java.sun.com/products/jdk/1.2/docs/guide/jni/index.html\">Java Native Inteface Specification</a>" 579*e82f7db8SAndroid Build Coastguard Worker "<p> 580*e82f7db8SAndroid Build Coastguard Worker "For primitive classes " 581*e82f7db8SAndroid Build Coastguard Worker "the returned signature is the signature of the corresponding primitive " 582*e82f7db8SAndroid Build Coastguard Worker "type; for example, \"I\" is returned as the signature of the class " 583*e82f7db8SAndroid Build Coastguard Worker "represented by java.lang.Integer.TYPE." 584*e82f7db8SAndroid Build Coastguard Worker (Out 585*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 586*e82f7db8SAndroid Build Coastguard Worker ) 587*e82f7db8SAndroid Build Coastguard Worker (Reply 588*e82f7db8SAndroid Build Coastguard Worker (string signature 589*e82f7db8SAndroid Build Coastguard Worker "The JNI signature for the reference type.") 590*e82f7db8SAndroid Build Coastguard Worker ) 591*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 592*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 593*e82f7db8SAndroid Build Coastguard Worker "type.") 594*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 595*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 596*e82f7db8SAndroid Build Coastguard Worker ) 597*e82f7db8SAndroid Build Coastguard Worker ) 598*e82f7db8SAndroid Build Coastguard Worker (Command ClassLoader=2 599*e82f7db8SAndroid Build Coastguard Worker "Returns the instance of java.lang.ClassLoader which loaded " 600*e82f7db8SAndroid Build Coastguard Worker "a given reference type. If the reference type was loaded by the " 601*e82f7db8SAndroid Build Coastguard Worker "system class loader, the returned object ID is null." 602*e82f7db8SAndroid Build Coastguard Worker (Out 603*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 604*e82f7db8SAndroid Build Coastguard Worker ) 605*e82f7db8SAndroid Build Coastguard Worker (Reply 606*e82f7db8SAndroid Build Coastguard Worker (classLoaderObject classLoader "The class loader for the reference type. ") 607*e82f7db8SAndroid Build Coastguard Worker ) 608*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 609*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 610*e82f7db8SAndroid Build Coastguard Worker "type.") 611*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 612*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 613*e82f7db8SAndroid Build Coastguard Worker ) 614*e82f7db8SAndroid Build Coastguard Worker ) 615*e82f7db8SAndroid Build Coastguard Worker (Command Modifiers=3 616*e82f7db8SAndroid Build Coastguard Worker "Returns the modifiers (also known as access flags) for a reference type. " 617*e82f7db8SAndroid Build Coastguard Worker "The returned bit mask contains information on the declaration " 618*e82f7db8SAndroid Build Coastguard Worker "of the reference type. If the reference type is an array or " 619*e82f7db8SAndroid Build Coastguard Worker "a primitive class (for example, java.lang.Integer.TYPE), the " 620*e82f7db8SAndroid Build Coastguard Worker "value of the returned bit mask is undefined." 621*e82f7db8SAndroid Build Coastguard Worker (Out 622*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 623*e82f7db8SAndroid Build Coastguard Worker ) 624*e82f7db8SAndroid Build Coastguard Worker (Reply 625*e82f7db8SAndroid Build Coastguard Worker (int modBits "Modifier bits as defined in Chapter 4 of " 626*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>") 627*e82f7db8SAndroid Build Coastguard Worker ) 628*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 629*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 630*e82f7db8SAndroid Build Coastguard Worker "type.") 631*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 632*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 633*e82f7db8SAndroid Build Coastguard Worker ) 634*e82f7db8SAndroid Build Coastguard Worker ) 635*e82f7db8SAndroid Build Coastguard Worker (Command Fields=4 636*e82f7db8SAndroid Build Coastguard Worker "Returns information for each field in a reference type. " 637*e82f7db8SAndroid Build Coastguard Worker "Inherited fields are not included. " 638*e82f7db8SAndroid Build Coastguard Worker "The field list will include any synthetic fields created " 639*e82f7db8SAndroid Build Coastguard Worker "by the compiler. " 640*e82f7db8SAndroid Build Coastguard Worker "Fields are returned in the order they occur in the class file." 641*e82f7db8SAndroid Build Coastguard Worker (Out 642*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 643*e82f7db8SAndroid Build Coastguard Worker ) 644*e82f7db8SAndroid Build Coastguard Worker (Reply 645*e82f7db8SAndroid Build Coastguard Worker (Repeat declared "Number of declared fields." 646*e82f7db8SAndroid Build Coastguard Worker (Group FieldInfo 647*e82f7db8SAndroid Build Coastguard Worker (field fieldID "Field ID.") 648*e82f7db8SAndroid Build Coastguard Worker (string name "Name of field.") 649*e82f7db8SAndroid Build Coastguard Worker (string signature "JNI Signature of field.") 650*e82f7db8SAndroid Build Coastguard Worker (int modBits "The modifier bit flags (also known as access flags) " 651*e82f7db8SAndroid Build Coastguard Worker "which provide additional information on the " 652*e82f7db8SAndroid Build Coastguard Worker "field declaration. Individual flag values are " 653*e82f7db8SAndroid Build Coastguard Worker "defined in Chapter 4 of " 654*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 655*e82f7db8SAndroid Build Coastguard Worker "In addition, The <code>0xf0000000</code> bit identifies " 656*e82f7db8SAndroid Build Coastguard Worker "the field as synthetic, if the synthetic attribute " 657*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_Capabilities\">capability</a> is available.") 658*e82f7db8SAndroid Build Coastguard Worker ) 659*e82f7db8SAndroid Build Coastguard Worker ) 660*e82f7db8SAndroid Build Coastguard Worker ) 661*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 662*e82f7db8SAndroid Build Coastguard Worker (Error CLASS_NOT_PREPARED) 663*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 664*e82f7db8SAndroid Build Coastguard Worker "type.") 665*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 666*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 667*e82f7db8SAndroid Build Coastguard Worker ) 668*e82f7db8SAndroid Build Coastguard Worker ) 669*e82f7db8SAndroid Build Coastguard Worker (Command Methods=5 670*e82f7db8SAndroid Build Coastguard Worker "Returns information for each method in a reference type. " 671*e82f7db8SAndroid Build Coastguard Worker "Inherited methods are not included. The list of methods will " 672*e82f7db8SAndroid Build Coastguard Worker "include constructors (identified with the name \"<init>\"), " 673*e82f7db8SAndroid Build Coastguard Worker "the initialization method (identified with the name \"<clinit>\") " 674*e82f7db8SAndroid Build Coastguard Worker "if present, and any synthetic methods created by the compiler. " 675*e82f7db8SAndroid Build Coastguard Worker "Methods are returned in the order they occur in the class file." 676*e82f7db8SAndroid Build Coastguard Worker (Out 677*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 678*e82f7db8SAndroid Build Coastguard Worker ) 679*e82f7db8SAndroid Build Coastguard Worker (Reply 680*e82f7db8SAndroid Build Coastguard Worker (Repeat declared "Number of declared methods." 681*e82f7db8SAndroid Build Coastguard Worker (Group MethodInfo 682*e82f7db8SAndroid Build Coastguard Worker (method methodID "Method ID.") 683*e82f7db8SAndroid Build Coastguard Worker (string name "Name of method.") 684*e82f7db8SAndroid Build Coastguard Worker (string signature "JNI signature of method.") 685*e82f7db8SAndroid Build Coastguard Worker (int modBits "The modifier bit flags (also known as access flags) " 686*e82f7db8SAndroid Build Coastguard Worker "which provide additional information on the " 687*e82f7db8SAndroid Build Coastguard Worker "method declaration. Individual flag values are " 688*e82f7db8SAndroid Build Coastguard Worker "defined in Chapter 4 of " 689*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 690*e82f7db8SAndroid Build Coastguard Worker "In addition, The <code>0xf0000000</code> bit identifies " 691*e82f7db8SAndroid Build Coastguard Worker "the method as synthetic, if the synthetic attribute " 692*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_Capabilities\">capability</a> is available.") 693*e82f7db8SAndroid Build Coastguard Worker ) 694*e82f7db8SAndroid Build Coastguard Worker ) 695*e82f7db8SAndroid Build Coastguard Worker ) 696*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 697*e82f7db8SAndroid Build Coastguard Worker (Error CLASS_NOT_PREPARED) 698*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 699*e82f7db8SAndroid Build Coastguard Worker "type.") 700*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 701*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 702*e82f7db8SAndroid Build Coastguard Worker ) 703*e82f7db8SAndroid Build Coastguard Worker ) 704*e82f7db8SAndroid Build Coastguard Worker (Command GetValues=6 705*e82f7db8SAndroid Build Coastguard Worker "Returns the value of one or more static fields of the " 706*e82f7db8SAndroid Build Coastguard Worker "reference type. Each field must be member of the reference type " 707*e82f7db8SAndroid Build Coastguard Worker "or one of its superclasses, superinterfaces, or implemented interfaces. " 708*e82f7db8SAndroid Build Coastguard Worker "Access control is not enforced; for example, the values of private " 709*e82f7db8SAndroid Build Coastguard Worker "fields can be obtained." 710*e82f7db8SAndroid Build Coastguard Worker (Out 711*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 712*e82f7db8SAndroid Build Coastguard Worker (Repeat fields "The number of values to get" 713*e82f7db8SAndroid Build Coastguard Worker (Group Field 714*e82f7db8SAndroid Build Coastguard Worker (field fieldID "A field to get") 715*e82f7db8SAndroid Build Coastguard Worker ) 716*e82f7db8SAndroid Build Coastguard Worker ) 717*e82f7db8SAndroid Build Coastguard Worker ) 718*e82f7db8SAndroid Build Coastguard Worker (Reply 719*e82f7db8SAndroid Build Coastguard Worker (Repeat values "The number of values returned, always equal to fields, " 720*e82f7db8SAndroid Build Coastguard Worker "the number of values to get." 721*e82f7db8SAndroid Build Coastguard Worker (value value "The field value") 722*e82f7db8SAndroid Build Coastguard Worker ) 723*e82f7db8SAndroid Build Coastguard Worker ) 724*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 725*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 726*e82f7db8SAndroid Build Coastguard Worker "type.") 727*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 728*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FIELDID) 729*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 730*e82f7db8SAndroid Build Coastguard Worker ) 731*e82f7db8SAndroid Build Coastguard Worker ) 732*e82f7db8SAndroid Build Coastguard Worker (Command SourceFile=7 733*e82f7db8SAndroid Build Coastguard Worker "Returns the name of source file in which a reference type was " 734*e82f7db8SAndroid Build Coastguard Worker "declared. " 735*e82f7db8SAndroid Build Coastguard Worker (Out 736*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 737*e82f7db8SAndroid Build Coastguard Worker ) 738*e82f7db8SAndroid Build Coastguard Worker (Reply 739*e82f7db8SAndroid Build Coastguard Worker (string sourceFile "The source file name. No path information " 740*e82f7db8SAndroid Build Coastguard Worker "for the file is included") 741*e82f7db8SAndroid Build Coastguard Worker ) 742*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 743*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 744*e82f7db8SAndroid Build Coastguard Worker "type.") 745*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 746*e82f7db8SAndroid Build Coastguard Worker (Error ABSENT_INFORMATION "The source file attribute is absent.") 747*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 748*e82f7db8SAndroid Build Coastguard Worker ) 749*e82f7db8SAndroid Build Coastguard Worker ) 750*e82f7db8SAndroid Build Coastguard Worker (Command NestedTypes=8 751*e82f7db8SAndroid Build Coastguard Worker "Returns the classes and interfaces directly nested within this type." 752*e82f7db8SAndroid Build Coastguard Worker "Types further nested within those types are not included. " 753*e82f7db8SAndroid Build Coastguard Worker (Out 754*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 755*e82f7db8SAndroid Build Coastguard Worker ) 756*e82f7db8SAndroid Build Coastguard Worker (Reply 757*e82f7db8SAndroid Build Coastguard Worker (Repeat classes "The number of nested classes and interfaces" 758*e82f7db8SAndroid Build Coastguard Worker (Group TypeInfo 759*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "<a href=\"#JDWP_TypeTag\">Kind</a> " 760*e82f7db8SAndroid Build Coastguard Worker "of following reference type. ") 761*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID "The nested class or interface ID.") 762*e82f7db8SAndroid Build Coastguard Worker ) 763*e82f7db8SAndroid Build Coastguard Worker ) 764*e82f7db8SAndroid Build Coastguard Worker ) 765*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 766*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 767*e82f7db8SAndroid Build Coastguard Worker "type.") 768*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 769*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 770*e82f7db8SAndroid Build Coastguard Worker ) 771*e82f7db8SAndroid Build Coastguard Worker ) 772*e82f7db8SAndroid Build Coastguard Worker (Command Status=9 773*e82f7db8SAndroid Build Coastguard Worker "Returns the current status of the reference type. The status " 774*e82f7db8SAndroid Build Coastguard Worker "indicates the extent to which the reference type has been " 775*e82f7db8SAndroid Build Coastguard Worker "initialized, as described in section 2.1.6 of " 776*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 777*e82f7db8SAndroid Build Coastguard Worker "If the class is linked the PREPARED and VERIFIED bits in the returned status bits " 778*e82f7db8SAndroid Build Coastguard Worker "will be set. If the class is initialized the INITIALIZED bit in the returned " 779*e82f7db8SAndroid Build Coastguard Worker "status bits will be set. If an error occured during initialization then the " 780*e82f7db8SAndroid Build Coastguard Worker "ERROR bit in the returned status bits will be set. " 781*e82f7db8SAndroid Build Coastguard Worker "The returned status bits are undefined for array types and for " 782*e82f7db8SAndroid Build Coastguard Worker "primitive classes (such as java.lang.Integer.TYPE). " 783*e82f7db8SAndroid Build Coastguard Worker (Out 784*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 785*e82f7db8SAndroid Build Coastguard Worker ) 786*e82f7db8SAndroid Build Coastguard Worker (Reply 787*e82f7db8SAndroid Build Coastguard Worker (int status "<a href=\"#JDWP_ClassStatus\">Status</a> bits:" 788*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_ClassStatus\">JDWP.ClassStatus</a>") 789*e82f7db8SAndroid Build Coastguard Worker ) 790*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 791*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 792*e82f7db8SAndroid Build Coastguard Worker "type.") 793*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 794*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 795*e82f7db8SAndroid Build Coastguard Worker ) 796*e82f7db8SAndroid Build Coastguard Worker ) 797*e82f7db8SAndroid Build Coastguard Worker (Command Interfaces=10 798*e82f7db8SAndroid Build Coastguard Worker "Returns the interfaces declared as implemented by this class. " 799*e82f7db8SAndroid Build Coastguard Worker "Interfaces indirectly implemented (extended by the implemented " 800*e82f7db8SAndroid Build Coastguard Worker "interface or implemented by a superclass) are not included." 801*e82f7db8SAndroid Build Coastguard Worker (Out 802*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 803*e82f7db8SAndroid Build Coastguard Worker ) 804*e82f7db8SAndroid Build Coastguard Worker (Reply 805*e82f7db8SAndroid Build Coastguard Worker (Repeat interfaces "The number of implemented interfaces" 806*e82f7db8SAndroid Build Coastguard Worker (interfaceType interfaceType "implemented interface.") 807*e82f7db8SAndroid Build Coastguard Worker ) 808*e82f7db8SAndroid Build Coastguard Worker ) 809*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 810*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 811*e82f7db8SAndroid Build Coastguard Worker "type.") 812*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 813*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 814*e82f7db8SAndroid Build Coastguard Worker ) 815*e82f7db8SAndroid Build Coastguard Worker ) 816*e82f7db8SAndroid Build Coastguard Worker (Command ClassObject=11 817*e82f7db8SAndroid Build Coastguard Worker "Returns the class object corresponding to this type. " 818*e82f7db8SAndroid Build Coastguard Worker (Out 819*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 820*e82f7db8SAndroid Build Coastguard Worker ) 821*e82f7db8SAndroid Build Coastguard Worker (Reply 822*e82f7db8SAndroid Build Coastguard Worker (classObject classObject "class object.") 823*e82f7db8SAndroid Build Coastguard Worker ) 824*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 825*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 826*e82f7db8SAndroid Build Coastguard Worker "type.") 827*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 828*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 829*e82f7db8SAndroid Build Coastguard Worker ) 830*e82f7db8SAndroid Build Coastguard Worker ) 831*e82f7db8SAndroid Build Coastguard Worker (Command SourceDebugExtension=12 832*e82f7db8SAndroid Build Coastguard Worker "Returns the value of the SourceDebugExtension attribute. " 833*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.4. Requires canGetSourceDebugExtension capability - see " 834*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 835*e82f7db8SAndroid Build Coastguard Worker (Out 836*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 837*e82f7db8SAndroid Build Coastguard Worker ) 838*e82f7db8SAndroid Build Coastguard Worker (Reply 839*e82f7db8SAndroid Build Coastguard Worker (string extension "extension attribute") 840*e82f7db8SAndroid Build Coastguard Worker ) 841*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 842*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 843*e82f7db8SAndroid Build Coastguard Worker "type.") 844*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 845*e82f7db8SAndroid Build Coastguard Worker (Error ABSENT_INFORMATION "If the extension is not specified.") 846*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 847*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 848*e82f7db8SAndroid Build Coastguard Worker ) 849*e82f7db8SAndroid Build Coastguard Worker ) 850*e82f7db8SAndroid Build Coastguard Worker (Command SignatureWithGeneric=13 851*e82f7db8SAndroid Build Coastguard Worker "Returns the JNI signature of a reference type along with the " 852*e82f7db8SAndroid Build Coastguard Worker "generic signature if there is one. " 853*e82f7db8SAndroid Build Coastguard Worker "Generic signatures are described in the signature attribute " 854*e82f7db8SAndroid Build Coastguard Worker "section in " 855*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 856*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.5." 857*e82f7db8SAndroid Build Coastguard Worker "<p> 858*e82f7db8SAndroid Build Coastguard Worker (Out 859*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 860*e82f7db8SAndroid Build Coastguard Worker ) 861*e82f7db8SAndroid Build Coastguard Worker (Reply 862*e82f7db8SAndroid Build Coastguard Worker (string signature 863*e82f7db8SAndroid Build Coastguard Worker "The JNI signature for the reference type.") 864*e82f7db8SAndroid Build Coastguard Worker (string genericSignature 865*e82f7db8SAndroid Build Coastguard Worker "The generic signature for the reference type or an empty " 866*e82f7db8SAndroid Build Coastguard Worker "string if there is none.") 867*e82f7db8SAndroid Build Coastguard Worker ) 868*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 869*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 870*e82f7db8SAndroid Build Coastguard Worker "type.") 871*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 872*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 873*e82f7db8SAndroid Build Coastguard Worker ) 874*e82f7db8SAndroid Build Coastguard Worker ) 875*e82f7db8SAndroid Build Coastguard Worker (Command FieldsWithGeneric=14 876*e82f7db8SAndroid Build Coastguard Worker "Returns information, including the generic signature if any, " 877*e82f7db8SAndroid Build Coastguard Worker "for each field in a reference type. " 878*e82f7db8SAndroid Build Coastguard Worker "Inherited fields are not included. " 879*e82f7db8SAndroid Build Coastguard Worker "The field list will include any synthetic fields created " 880*e82f7db8SAndroid Build Coastguard Worker "by the compiler. " 881*e82f7db8SAndroid Build Coastguard Worker "Fields are returned in the order they occur in the class file. " 882*e82f7db8SAndroid Build Coastguard Worker "Generic signatures are described in the signature attribute " 883*e82f7db8SAndroid Build Coastguard Worker "section in " 884*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 885*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.5." 886*e82f7db8SAndroid Build Coastguard Worker (Out 887*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 888*e82f7db8SAndroid Build Coastguard Worker ) 889*e82f7db8SAndroid Build Coastguard Worker (Reply 890*e82f7db8SAndroid Build Coastguard Worker (Repeat declared "Number of declared fields." 891*e82f7db8SAndroid Build Coastguard Worker (Group FieldInfo 892*e82f7db8SAndroid Build Coastguard Worker (field fieldID "Field ID.") 893*e82f7db8SAndroid Build Coastguard Worker (string name "The name of the field.") 894*e82f7db8SAndroid Build Coastguard Worker (string signature "The JNI signature of the field.") 895*e82f7db8SAndroid Build Coastguard Worker (string genericSignature "The generic signature of the " 896*e82f7db8SAndroid Build Coastguard Worker "field, or an empty string if there is none.") 897*e82f7db8SAndroid Build Coastguard Worker (int modBits "The modifier bit flags (also known as access flags) " 898*e82f7db8SAndroid Build Coastguard Worker "which provide additional information on the " 899*e82f7db8SAndroid Build Coastguard Worker "field declaration. Individual flag values are " 900*e82f7db8SAndroid Build Coastguard Worker "defined in Chapter 4 of " 901*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 902*e82f7db8SAndroid Build Coastguard Worker "In addition, The <code>0xf0000000</code> bit identifies " 903*e82f7db8SAndroid Build Coastguard Worker "the field as synthetic, if the synthetic attribute " 904*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_Capabilities\">capability</a> is available.") 905*e82f7db8SAndroid Build Coastguard Worker ) 906*e82f7db8SAndroid Build Coastguard Worker ) 907*e82f7db8SAndroid Build Coastguard Worker ) 908*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 909*e82f7db8SAndroid Build Coastguard Worker (Error CLASS_NOT_PREPARED) 910*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 911*e82f7db8SAndroid Build Coastguard Worker "type.") 912*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 913*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 914*e82f7db8SAndroid Build Coastguard Worker ) 915*e82f7db8SAndroid Build Coastguard Worker ) 916*e82f7db8SAndroid Build Coastguard Worker (Command MethodsWithGeneric=15 917*e82f7db8SAndroid Build Coastguard Worker "Returns information, including the generic signature if any, " 918*e82f7db8SAndroid Build Coastguard Worker "for each method in a reference type. " 919*e82f7db8SAndroid Build Coastguard Worker "Inherited methodss are not included. The list of methods will " 920*e82f7db8SAndroid Build Coastguard Worker "include constructors (identified with the name \"<init>\"), " 921*e82f7db8SAndroid Build Coastguard Worker "the initialization method (identified with the name \"<clinit>\") " 922*e82f7db8SAndroid Build Coastguard Worker "if present, and any synthetic methods created by the compiler. " 923*e82f7db8SAndroid Build Coastguard Worker "Methods are returned in the order they occur in the class file. " 924*e82f7db8SAndroid Build Coastguard Worker "Generic signatures are described in the signature attribute " 925*e82f7db8SAndroid Build Coastguard Worker "section in " 926*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 927*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.5." 928*e82f7db8SAndroid Build Coastguard Worker (Out 929*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 930*e82f7db8SAndroid Build Coastguard Worker ) 931*e82f7db8SAndroid Build Coastguard Worker (Reply 932*e82f7db8SAndroid Build Coastguard Worker (Repeat declared "Number of declared methods." 933*e82f7db8SAndroid Build Coastguard Worker (Group MethodInfo 934*e82f7db8SAndroid Build Coastguard Worker (method methodID "Method ID.") 935*e82f7db8SAndroid Build Coastguard Worker (string name "The name of the method.") 936*e82f7db8SAndroid Build Coastguard Worker (string signature "The JNI signature of the method.") 937*e82f7db8SAndroid Build Coastguard Worker (string genericSignature "The generic signature of the method, or " 938*e82f7db8SAndroid Build Coastguard Worker "an empty string if there is none.") 939*e82f7db8SAndroid Build Coastguard Worker (int modBits "The modifier bit flags (also known as access flags) " 940*e82f7db8SAndroid Build Coastguard Worker "which provide additional information on the " 941*e82f7db8SAndroid Build Coastguard Worker "method declaration. Individual flag values are " 942*e82f7db8SAndroid Build Coastguard Worker "defined in Chapter 4 of " 943*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 944*e82f7db8SAndroid Build Coastguard Worker "In addition, The <code>0xf0000000</code> bit identifies " 945*e82f7db8SAndroid Build Coastguard Worker "the method as synthetic, if the synthetic attribute " 946*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_Capabilities\">capability</a> is available.") 947*e82f7db8SAndroid Build Coastguard Worker ) 948*e82f7db8SAndroid Build Coastguard Worker ) 949*e82f7db8SAndroid Build Coastguard Worker ) 950*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 951*e82f7db8SAndroid Build Coastguard Worker (Error CLASS_NOT_PREPARED) 952*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 953*e82f7db8SAndroid Build Coastguard Worker "type.") 954*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 955*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 956*e82f7db8SAndroid Build Coastguard Worker ) 957*e82f7db8SAndroid Build Coastguard Worker ) 958*e82f7db8SAndroid Build Coastguard Worker (Command Instances=16 959*e82f7db8SAndroid Build Coastguard Worker "Returns instances of this reference type. " 960*e82f7db8SAndroid Build Coastguard Worker "Only instances that are reachable for the purposes of " 961*e82f7db8SAndroid Build Coastguard Worker "garbage collection are returned. " 962*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. Requires canGetInstanceInfo capability - see " 963*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 964*e82f7db8SAndroid Build Coastguard Worker (Out 965*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The reference type ID.") 966*e82f7db8SAndroid Build Coastguard Worker (int maxInstances "Maximum number of instances to return. Must be non-negative. " 967*e82f7db8SAndroid Build Coastguard Worker "If zero, all instances are returned.") 968*e82f7db8SAndroid Build Coastguard Worker ) 969*e82f7db8SAndroid Build Coastguard Worker (Reply 970*e82f7db8SAndroid Build Coastguard Worker (Repeat instances "The number of instances that follow." 971*e82f7db8SAndroid Build Coastguard Worker (tagged-object instance "An instance of this reference type.") 972*e82f7db8SAndroid Build Coastguard Worker ) 973*e82f7db8SAndroid Build Coastguard Worker ) 974*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 975*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 976*e82f7db8SAndroid Build Coastguard Worker "type.") 977*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 978*e82f7db8SAndroid Build Coastguard Worker (Error ILLEGAL_ARGUMENT "maxInstances is less than zero.") 979*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 980*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 981*e82f7db8SAndroid Build Coastguard Worker ) 982*e82f7db8SAndroid Build Coastguard Worker ) 983*e82f7db8SAndroid Build Coastguard Worker (Command ClassFileVersion=17 984*e82f7db8SAndroid Build Coastguard Worker "Returns the class file major and minor version numbers, as defined in the class " 985*e82f7db8SAndroid Build Coastguard Worker "file format of the Java Virtual Machine specification. " 986*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. " 987*e82f7db8SAndroid Build Coastguard Worker (Out 988*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The class.") 989*e82f7db8SAndroid Build Coastguard Worker ) 990*e82f7db8SAndroid Build Coastguard Worker (Reply 991*e82f7db8SAndroid Build Coastguard Worker (int majorVersion "Major version number") 992*e82f7db8SAndroid Build Coastguard Worker (int minorVersion "Minor version number") 993*e82f7db8SAndroid Build Coastguard Worker ) 994*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 995*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 996*e82f7db8SAndroid Build Coastguard Worker "type.") 997*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 998*e82f7db8SAndroid Build Coastguard Worker (Error ABSENT_INFORMATION "The class file version information is " 999*e82f7db8SAndroid Build Coastguard Worker "absent for primitive and array types.") 1000*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1001*e82f7db8SAndroid Build Coastguard Worker ) 1002*e82f7db8SAndroid Build Coastguard Worker ) 1003*e82f7db8SAndroid Build Coastguard Worker (Command ConstantPool=18 1004*e82f7db8SAndroid Build Coastguard Worker "Return the raw bytes of the constant pool in the format of the " 1005*e82f7db8SAndroid Build Coastguard Worker "constant_pool item of the Class File Format in " 1006*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 1007*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. Requires canGetConstantPool capability - see " 1008*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>."" 1009*e82f7db8SAndroid Build Coastguard Worker (Out 1010*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The class.") 1011*e82f7db8SAndroid Build Coastguard Worker ) 1012*e82f7db8SAndroid Build Coastguard Worker (Reply 1013*e82f7db8SAndroid Build Coastguard Worker (int count "Total number of constant pool entries plus one. This " 1014*e82f7db8SAndroid Build Coastguard Worker "corresponds to the constant_pool_count item of the " 1015*e82f7db8SAndroid Build Coastguard Worker "Class File Format in " 1016*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. ") 1017*e82f7db8SAndroid Build Coastguard Worker (Repeat bytes 1018*e82f7db8SAndroid Build Coastguard Worker (byte cpbytes "Raw bytes of constant pool") 1019*e82f7db8SAndroid Build Coastguard Worker ) 1020*e82f7db8SAndroid Build Coastguard Worker ) 1021*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1022*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 1023*e82f7db8SAndroid Build Coastguard Worker "type.") 1024*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 1025*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED "If the target virtual machine does not " 1026*e82f7db8SAndroid Build Coastguard Worker "support the retrieval of constant pool information.") 1027*e82f7db8SAndroid Build Coastguard Worker (Error ABSENT_INFORMATION "The Constant Pool information is " 1028*e82f7db8SAndroid Build Coastguard Worker "absent for primitive and array types.") 1029*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1030*e82f7db8SAndroid Build Coastguard Worker ) 1031*e82f7db8SAndroid Build Coastguard Worker ) 1032*e82f7db8SAndroid Build Coastguard Worker) 1033*e82f7db8SAndroid Build Coastguard Worker(CommandSet ClassType=3 1034*e82f7db8SAndroid Build Coastguard Worker (Command Superclass=1 1035*e82f7db8SAndroid Build Coastguard Worker "Returns the immediate superclass of a class." 1036*e82f7db8SAndroid Build Coastguard Worker (Out 1037*e82f7db8SAndroid Build Coastguard Worker (classType clazz "The class type ID.") 1038*e82f7db8SAndroid Build Coastguard Worker ) 1039*e82f7db8SAndroid Build Coastguard Worker (Reply 1040*e82f7db8SAndroid Build Coastguard Worker (classType superclass 1041*e82f7db8SAndroid Build Coastguard Worker "The superclass (null if the class ID for java.lang.Object is specified).") 1042*e82f7db8SAndroid Build Coastguard Worker ) 1043*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1044*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "clazz is not the ID of a class.") 1045*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "clazz is not a known ID.") 1046*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1047*e82f7db8SAndroid Build Coastguard Worker ) 1048*e82f7db8SAndroid Build Coastguard Worker ) 1049*e82f7db8SAndroid Build Coastguard Worker (Command SetValues=2 1050*e82f7db8SAndroid Build Coastguard Worker "Sets the value of one or more static fields. " 1051*e82f7db8SAndroid Build Coastguard Worker "Each field must be member of the class type " 1052*e82f7db8SAndroid Build Coastguard Worker "or one of its superclasses, superinterfaces, or implemented interfaces. " 1053*e82f7db8SAndroid Build Coastguard Worker "Access control is not enforced; for example, the values of private " 1054*e82f7db8SAndroid Build Coastguard Worker "fields can be set. Final fields cannot be set." 1055*e82f7db8SAndroid Build Coastguard Worker "For primitive values, the value's type must match the " 1056*e82f7db8SAndroid Build Coastguard Worker "field's type exactly. For object values, there must exist a " 1057*e82f7db8SAndroid Build Coastguard Worker "widening reference conversion from the value's type to the 1058*e82f7db8SAndroid Build Coastguard Worker "field's type and the field's type must be loaded. " 1059*e82f7db8SAndroid Build Coastguard Worker (Out 1060*e82f7db8SAndroid Build Coastguard Worker (classType clazz "The class type ID.") 1061*e82f7db8SAndroid Build Coastguard Worker (Repeat values "The number of fields to set." 1062*e82f7db8SAndroid Build Coastguard Worker (Group FieldValue "A Field/Value pair." 1063*e82f7db8SAndroid Build Coastguard Worker (field fieldID "Field to set.") 1064*e82f7db8SAndroid Build Coastguard Worker (untagged-value value "Value to put in the field.") 1065*e82f7db8SAndroid Build Coastguard Worker ) 1066*e82f7db8SAndroid Build Coastguard Worker ) 1067*e82f7db8SAndroid Build Coastguard Worker ) 1068*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 1069*e82f7db8SAndroid Build Coastguard Worker ) 1070*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1071*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "clazz is not the ID of a class.") 1072*e82f7db8SAndroid Build Coastguard Worker (Error CLASS_NOT_PREPARED) 1073*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "clazz is not a known ID or a value of an " 1074*e82f7db8SAndroid Build Coastguard Worker "object field is not a known ID.") 1075*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FIELDID) 1076*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1077*e82f7db8SAndroid Build Coastguard Worker ) 1078*e82f7db8SAndroid Build Coastguard Worker ) 1079*e82f7db8SAndroid Build Coastguard Worker (Command InvokeMethod=3 1080*e82f7db8SAndroid Build Coastguard Worker "Invokes a static method. " 1081*e82f7db8SAndroid Build Coastguard Worker "The method must be member of the class type " 1082*e82f7db8SAndroid Build Coastguard Worker "or one of its superclasses, superinterfaces, or implemented interfaces. " 1083*e82f7db8SAndroid Build Coastguard Worker "Access control is not enforced; for example, private " 1084*e82f7db8SAndroid Build Coastguard Worker "methods can be invoked." 1085*e82f7db8SAndroid Build Coastguard Worker "<p>" 1086*e82f7db8SAndroid Build Coastguard Worker "The method invocation will occur in the specified thread. " 1087*e82f7db8SAndroid Build Coastguard Worker "Method invocation can occur only if the specified thread " 1088*e82f7db8SAndroid Build Coastguard Worker "has been suspended by an event. " 1089*e82f7db8SAndroid Build Coastguard Worker "Method invocation is not supported " 1090*e82f7db8SAndroid Build Coastguard Worker "when the target VM has been suspended by the front-end. " 1091*e82f7db8SAndroid Build Coastguard Worker "<p>" 1092*e82f7db8SAndroid Build Coastguard Worker "The specified method is invoked with the arguments in the specified " 1093*e82f7db8SAndroid Build Coastguard Worker "argument list. " 1094*e82f7db8SAndroid Build Coastguard Worker "The method invocation is synchronous; the reply packet is not " 1095*e82f7db8SAndroid Build Coastguard Worker "sent until the invoked method returns in the target VM. " 1096*e82f7db8SAndroid Build Coastguard Worker "The return value (possibly the void value) is " 1097*e82f7db8SAndroid Build Coastguard Worker "included in the reply packet. " 1098*e82f7db8SAndroid Build Coastguard Worker "If the invoked method throws an exception, the " 1099*e82f7db8SAndroid Build Coastguard Worker "exception object ID is set in the reply packet; otherwise, the " 1100*e82f7db8SAndroid Build Coastguard Worker "exception object ID is null. " 1101*e82f7db8SAndroid Build Coastguard Worker "<p>" 1102*e82f7db8SAndroid Build Coastguard Worker "For primitive arguments, the argument value's type must match the " 1103*e82f7db8SAndroid Build Coastguard Worker "argument's type exactly. For object arguments, there must exist a " 1104*e82f7db8SAndroid Build Coastguard Worker "widening reference conversion from the argument value's type to the " 1105*e82f7db8SAndroid Build Coastguard Worker "argument's type and the argument's type must be loaded. " 1106*e82f7db8SAndroid Build Coastguard Worker "<p>" 1107*e82f7db8SAndroid Build Coastguard Worker "By default, all threads in the target VM are resumed while " 1108*e82f7db8SAndroid Build Coastguard Worker "the method is being invoked if they were previously " 1109*e82f7db8SAndroid Build Coastguard Worker "suspended by an event or by command. " 1110*e82f7db8SAndroid Build Coastguard Worker "This is done to prevent the deadlocks " 1111*e82f7db8SAndroid Build Coastguard Worker "that will occur if any of the threads own monitors " 1112*e82f7db8SAndroid Build Coastguard Worker "that will be needed by the invoked method. It is possible that " 1113*e82f7db8SAndroid Build Coastguard Worker "breakpoints or other events might occur during the invocation. " 1114*e82f7db8SAndroid Build Coastguard Worker "Note, however, that this implicit resume acts exactly like " 1115*e82f7db8SAndroid Build Coastguard Worker "the ThreadReference resume command, so if the thread's suspend " 1116*e82f7db8SAndroid Build Coastguard Worker "count is greater than 1, it will remain in a suspended state " 1117*e82f7db8SAndroid Build Coastguard Worker "during the invocation. By default, when the invocation completes, " 1118*e82f7db8SAndroid Build Coastguard Worker "all threads in the target VM are suspended, regardless their state " 1119*e82f7db8SAndroid Build Coastguard Worker "before the invocation. " 1120*e82f7db8SAndroid Build Coastguard Worker "<p>" 1121*e82f7db8SAndroid Build Coastguard Worker "The resumption of other threads during the invoke can be prevented " 1122*e82f7db8SAndroid Build Coastguard Worker "by specifying the INVOKE_SINGLE_THREADED " 1123*e82f7db8SAndroid Build Coastguard Worker "bit flag in the <code>options</code> field; however, " 1124*e82f7db8SAndroid Build Coastguard Worker "there is no protection against or recovery from the deadlocks " 1125*e82f7db8SAndroid Build Coastguard Worker "described above, so this option should be used with great caution. " 1126*e82f7db8SAndroid Build Coastguard Worker "Only the specified thread will be resumed (as described for all " 1127*e82f7db8SAndroid Build Coastguard Worker "threads above). Upon completion of a single threaded invoke, the invoking thread " 1128*e82f7db8SAndroid Build Coastguard Worker "will be suspended once again. Note that any threads started during " 1129*e82f7db8SAndroid Build Coastguard Worker "the single threaded invocation will not be suspended when the " 1130*e82f7db8SAndroid Build Coastguard Worker "invocation completes. " 1131*e82f7db8SAndroid Build Coastguard Worker "<p>" 1132*e82f7db8SAndroid Build Coastguard Worker "If the target VM is disconnected during the invoke (for example, through " 1133*e82f7db8SAndroid Build Coastguard Worker "the VirtualMachine dispose command) the method invocation continues. " 1134*e82f7db8SAndroid Build Coastguard Worker (Out 1135*e82f7db8SAndroid Build Coastguard Worker (classType clazz "The class type ID.") 1136*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread in which to invoke.") 1137*e82f7db8SAndroid Build Coastguard Worker (method methodID "The method to invoke.") 1138*e82f7db8SAndroid Build Coastguard Worker (Repeat arguments 1139*e82f7db8SAndroid Build Coastguard Worker (value arg "The argument value.") 1140*e82f7db8SAndroid Build Coastguard Worker ) 1141*e82f7db8SAndroid Build Coastguard Worker (int options "Invocation <a href=\"#JDWP_InvokeOptions\">options</a>") 1142*e82f7db8SAndroid Build Coastguard Worker ) 1143*e82f7db8SAndroid Build Coastguard Worker (Reply 1144*e82f7db8SAndroid Build Coastguard Worker (value returnValue "The returned value.") 1145*e82f7db8SAndroid Build Coastguard Worker (tagged-object exception "The thrown exception.") 1146*e82f7db8SAndroid Build Coastguard Worker ) 1147*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1148*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "clazz is not the ID of a class.") 1149*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "clazz is not a known ID.") 1150*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID "methodID is not the ID of a static method in " 1151*e82f7db8SAndroid Build Coastguard Worker "this class type or one of its superclasses.") 1152*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1153*e82f7db8SAndroid Build Coastguard Worker (Error THREAD_NOT_SUSPENDED) 1154*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1155*e82f7db8SAndroid Build Coastguard Worker ) 1156*e82f7db8SAndroid Build Coastguard Worker ) 1157*e82f7db8SAndroid Build Coastguard Worker (Command NewInstance=4 1158*e82f7db8SAndroid Build Coastguard Worker "Creates a new object of this type, invoking the specified " 1159*e82f7db8SAndroid Build Coastguard Worker "constructor. The constructor method ID must be a member of " 1160*e82f7db8SAndroid Build Coastguard Worker "the class type." 1161*e82f7db8SAndroid Build Coastguard Worker "<p>" 1162*e82f7db8SAndroid Build Coastguard Worker "Instance creation will occur in the specified thread. " 1163*e82f7db8SAndroid Build Coastguard Worker "Instance creation can occur only if the specified thread " 1164*e82f7db8SAndroid Build Coastguard Worker "has been suspended by an event. " 1165*e82f7db8SAndroid Build Coastguard Worker "Method invocation is not supported " 1166*e82f7db8SAndroid Build Coastguard Worker "when the target VM has been suspended by the front-end. " 1167*e82f7db8SAndroid Build Coastguard Worker "<p>" 1168*e82f7db8SAndroid Build Coastguard Worker "The specified constructor is invoked with the arguments in the specified " 1169*e82f7db8SAndroid Build Coastguard Worker "argument list. " 1170*e82f7db8SAndroid Build Coastguard Worker "The constructor invocation is synchronous; the reply packet is not " 1171*e82f7db8SAndroid Build Coastguard Worker "sent until the invoked method returns in the target VM. " 1172*e82f7db8SAndroid Build Coastguard Worker "The return value (possibly the void value) is " 1173*e82f7db8SAndroid Build Coastguard Worker "included in the reply packet. " 1174*e82f7db8SAndroid Build Coastguard Worker "If the constructor throws an exception, the " 1175*e82f7db8SAndroid Build Coastguard Worker "exception object ID is set in the reply packet; otherwise, the " 1176*e82f7db8SAndroid Build Coastguard Worker "exception object ID is null. " 1177*e82f7db8SAndroid Build Coastguard Worker "<p>" 1178*e82f7db8SAndroid Build Coastguard Worker "For primitive arguments, the argument value's type must match the " 1179*e82f7db8SAndroid Build Coastguard Worker "argument's type exactly. For object arguments, there must exist a " 1180*e82f7db8SAndroid Build Coastguard Worker "widening reference conversion from the argument value's type to the " 1181*e82f7db8SAndroid Build Coastguard Worker "argument's type and the argument's type must be loaded. " 1182*e82f7db8SAndroid Build Coastguard Worker "<p>" 1183*e82f7db8SAndroid Build Coastguard Worker "By default, all threads in the target VM are resumed while " 1184*e82f7db8SAndroid Build Coastguard Worker "the method is being invoked if they were previously " 1185*e82f7db8SAndroid Build Coastguard Worker "suspended by an event or by command. " 1186*e82f7db8SAndroid Build Coastguard Worker "This is done to prevent the deadlocks " 1187*e82f7db8SAndroid Build Coastguard Worker "that will occur if any of the threads own monitors " 1188*e82f7db8SAndroid Build Coastguard Worker "that will be needed by the invoked method. It is possible that " 1189*e82f7db8SAndroid Build Coastguard Worker "breakpoints or other events might occur during the invocation. " 1190*e82f7db8SAndroid Build Coastguard Worker "Note, however, that this implicit resume acts exactly like " 1191*e82f7db8SAndroid Build Coastguard Worker "the ThreadReference resume command, so if the thread's suspend " 1192*e82f7db8SAndroid Build Coastguard Worker "count is greater than 1, it will remain in a suspended state " 1193*e82f7db8SAndroid Build Coastguard Worker "during the invocation. By default, when the invocation completes, " 1194*e82f7db8SAndroid Build Coastguard Worker "all threads in the target VM are suspended, regardless their state " 1195*e82f7db8SAndroid Build Coastguard Worker "before the invocation. " 1196*e82f7db8SAndroid Build Coastguard Worker "<p>" 1197*e82f7db8SAndroid Build Coastguard Worker "The resumption of other threads during the invoke can be prevented " 1198*e82f7db8SAndroid Build Coastguard Worker "by specifying the INVOKE_SINGLE_THREADED " 1199*e82f7db8SAndroid Build Coastguard Worker "bit flag in the <code>options</code> field; however, " 1200*e82f7db8SAndroid Build Coastguard Worker "there is no protection against or recovery from the deadlocks " 1201*e82f7db8SAndroid Build Coastguard Worker "described above, so this option should be used with great caution. " 1202*e82f7db8SAndroid Build Coastguard Worker "Only the specified thread will be resumed (as described for all " 1203*e82f7db8SAndroid Build Coastguard Worker "threads above). Upon completion of a single threaded invoke, the invoking thread " 1204*e82f7db8SAndroid Build Coastguard Worker "will be suspended once again. Note that any threads started during " 1205*e82f7db8SAndroid Build Coastguard Worker "the single threaded invocation will not be suspended when the " 1206*e82f7db8SAndroid Build Coastguard Worker "invocation completes. " 1207*e82f7db8SAndroid Build Coastguard Worker "<p>" 1208*e82f7db8SAndroid Build Coastguard Worker "If the target VM is disconnected during the invoke (for example, through " 1209*e82f7db8SAndroid Build Coastguard Worker "the VirtualMachine dispose command) the method invocation continues. " 1210*e82f7db8SAndroid Build Coastguard Worker (Out 1211*e82f7db8SAndroid Build Coastguard Worker (classType clazz "The class type ID.") 1212*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread in which to invoke the constructor.") 1213*e82f7db8SAndroid Build Coastguard Worker (method methodID "The constructor to invoke.") 1214*e82f7db8SAndroid Build Coastguard Worker (Repeat arguments 1215*e82f7db8SAndroid Build Coastguard Worker (value arg "The argument value.") 1216*e82f7db8SAndroid Build Coastguard Worker ) 1217*e82f7db8SAndroid Build Coastguard Worker (int options "Constructor invocation <a href=\"#JDWP_InvokeOptions\">options</a>") 1218*e82f7db8SAndroid Build Coastguard Worker ) 1219*e82f7db8SAndroid Build Coastguard Worker (Reply 1220*e82f7db8SAndroid Build Coastguard Worker (tagged-object newObject "The newly created object, or null " 1221*e82f7db8SAndroid Build Coastguard Worker "if the constructor threw an exception.") 1222*e82f7db8SAndroid Build Coastguard Worker (tagged-object exception "The thrown exception, if any; otherwise, null.") 1223*e82f7db8SAndroid Build Coastguard Worker ) 1224*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1225*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "clazz is not the ID of a class.") 1226*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "clazz is not a known ID or a value of an " 1227*e82f7db8SAndroid Build Coastguard Worker "object parameter is not a known ID..") 1228*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID "methodID is not the ID of a method.") 1229*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1230*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1231*e82f7db8SAndroid Build Coastguard Worker (Error THREAD_NOT_SUSPENDED) 1232*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1233*e82f7db8SAndroid Build Coastguard Worker ) 1234*e82f7db8SAndroid Build Coastguard Worker ) 1235*e82f7db8SAndroid Build Coastguard Worker) 1236*e82f7db8SAndroid Build Coastguard Worker(CommandSet ArrayType=4 1237*e82f7db8SAndroid Build Coastguard Worker (Command NewInstance=1 1238*e82f7db8SAndroid Build Coastguard Worker "Creates a new array object of this type with a given length." 1239*e82f7db8SAndroid Build Coastguard Worker (Out 1240*e82f7db8SAndroid Build Coastguard Worker (arrayType arrType "The array type of the new instance.") 1241*e82f7db8SAndroid Build Coastguard Worker (int length "The length of the array.") 1242*e82f7db8SAndroid Build Coastguard Worker ) 1243*e82f7db8SAndroid Build Coastguard Worker (Reply 1244*e82f7db8SAndroid Build Coastguard Worker (tagged-object newArray "The newly created array object. ") 1245*e82f7db8SAndroid Build Coastguard Worker ) 1246*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1247*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_ARRAY) 1248*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1249*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1250*e82f7db8SAndroid Build Coastguard Worker ) 1251*e82f7db8SAndroid Build Coastguard Worker ) 1252*e82f7db8SAndroid Build Coastguard Worker) 1253*e82f7db8SAndroid Build Coastguard Worker(CommandSet InterfaceType=5 1254*e82f7db8SAndroid Build Coastguard Worker (Command InvokeMethod=1 1255*e82f7db8SAndroid Build Coastguard Worker "Invokes a static method. " 1256*e82f7db8SAndroid Build Coastguard Worker "The method must not be a static initializer. " 1257*e82f7db8SAndroid Build Coastguard Worker "The method must be a member of the interface type. " 1258*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.8 " 1259*e82f7db8SAndroid Build Coastguard Worker "<p>" 1260*e82f7db8SAndroid Build Coastguard Worker "The method invocation will occur in the specified thread. " 1261*e82f7db8SAndroid Build Coastguard Worker "Method invocation can occur only if the specified thread " 1262*e82f7db8SAndroid Build Coastguard Worker "has been suspended by an event. " 1263*e82f7db8SAndroid Build Coastguard Worker "Method invocation is not supported " 1264*e82f7db8SAndroid Build Coastguard Worker "when the target VM has been suspended by the front-end. " 1265*e82f7db8SAndroid Build Coastguard Worker "<p>" 1266*e82f7db8SAndroid Build Coastguard Worker "The specified method is invoked with the arguments in the specified " 1267*e82f7db8SAndroid Build Coastguard Worker "argument list. " 1268*e82f7db8SAndroid Build Coastguard Worker "The method invocation is synchronous; the reply packet is not " 1269*e82f7db8SAndroid Build Coastguard Worker "sent until the invoked method returns in the target VM. " 1270*e82f7db8SAndroid Build Coastguard Worker "The return value (possibly the void value) is " 1271*e82f7db8SAndroid Build Coastguard Worker "included in the reply packet. " 1272*e82f7db8SAndroid Build Coastguard Worker "If the invoked method throws an exception, the " 1273*e82f7db8SAndroid Build Coastguard Worker "exception object ID is set in the reply packet; otherwise, the " 1274*e82f7db8SAndroid Build Coastguard Worker "exception object ID is null. " 1275*e82f7db8SAndroid Build Coastguard Worker "<p>" 1276*e82f7db8SAndroid Build Coastguard Worker "For primitive arguments, the argument value's type must match the " 1277*e82f7db8SAndroid Build Coastguard Worker "argument's type exactly. For object arguments, there must exist a " 1278*e82f7db8SAndroid Build Coastguard Worker "widening reference conversion from the argument value's type to the " 1279*e82f7db8SAndroid Build Coastguard Worker "argument's type and the argument's type must be loaded. " 1280*e82f7db8SAndroid Build Coastguard Worker "<p>" 1281*e82f7db8SAndroid Build Coastguard Worker "By default, all threads in the target VM are resumed while " 1282*e82f7db8SAndroid Build Coastguard Worker "the method is being invoked if they were previously " 1283*e82f7db8SAndroid Build Coastguard Worker "suspended by an event or by a command. " 1284*e82f7db8SAndroid Build Coastguard Worker "This is done to prevent the deadlocks " 1285*e82f7db8SAndroid Build Coastguard Worker "that will occur if any of the threads own monitors " 1286*e82f7db8SAndroid Build Coastguard Worker "that will be needed by the invoked method. It is possible that " 1287*e82f7db8SAndroid Build Coastguard Worker "breakpoints or other events might occur during the invocation. " 1288*e82f7db8SAndroid Build Coastguard Worker "Note, however, that this implicit resume acts exactly like " 1289*e82f7db8SAndroid Build Coastguard Worker "the ThreadReference resume command, so if the thread's suspend " 1290*e82f7db8SAndroid Build Coastguard Worker "count is greater than 1, it will remain in a suspended state " 1291*e82f7db8SAndroid Build Coastguard Worker "during the invocation. By default, when the invocation completes, " 1292*e82f7db8SAndroid Build Coastguard Worker "all threads in the target VM are suspended, regardless their state " 1293*e82f7db8SAndroid Build Coastguard Worker "before the invocation. " 1294*e82f7db8SAndroid Build Coastguard Worker "<p>" 1295*e82f7db8SAndroid Build Coastguard Worker "The resumption of other threads during the invoke can be prevented " 1296*e82f7db8SAndroid Build Coastguard Worker "by specifying the INVOKE_SINGLE_THREADED " 1297*e82f7db8SAndroid Build Coastguard Worker "bit flag in the <code>options</code> field; however, " 1298*e82f7db8SAndroid Build Coastguard Worker "there is no protection against or recovery from the deadlocks " 1299*e82f7db8SAndroid Build Coastguard Worker "described above, so this option should be used with great caution. " 1300*e82f7db8SAndroid Build Coastguard Worker "Only the specified thread will be resumed (as described for all " 1301*e82f7db8SAndroid Build Coastguard Worker "threads above). Upon completion of a single threaded invoke, the invoking thread " 1302*e82f7db8SAndroid Build Coastguard Worker "will be suspended once again. Note that any threads started during " 1303*e82f7db8SAndroid Build Coastguard Worker "the single threaded invocation will not be suspended when the " 1304*e82f7db8SAndroid Build Coastguard Worker "invocation completes. " 1305*e82f7db8SAndroid Build Coastguard Worker "<p>" 1306*e82f7db8SAndroid Build Coastguard Worker "If the target VM is disconnected during the invoke (for example, through " 1307*e82f7db8SAndroid Build Coastguard Worker "the VirtualMachine dispose command) the method invocation continues. " 1308*e82f7db8SAndroid Build Coastguard Worker (Out 1309*e82f7db8SAndroid Build Coastguard Worker (interfaceType clazz "The interface type ID.") 1310*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread in which to invoke.") 1311*e82f7db8SAndroid Build Coastguard Worker (method methodID "The method to invoke.") 1312*e82f7db8SAndroid Build Coastguard Worker (Repeat arguments 1313*e82f7db8SAndroid Build Coastguard Worker (value arg "The argument value.") 1314*e82f7db8SAndroid Build Coastguard Worker ) 1315*e82f7db8SAndroid Build Coastguard Worker (int options "Invocation <a href=\"#JDWP_InvokeOptions\">options</a>") 1316*e82f7db8SAndroid Build Coastguard Worker ) 1317*e82f7db8SAndroid Build Coastguard Worker (Reply 1318*e82f7db8SAndroid Build Coastguard Worker (value returnValue "The returned value.") 1319*e82f7db8SAndroid Build Coastguard Worker (tagged-object exception "The thrown exception.") 1320*e82f7db8SAndroid Build Coastguard Worker ) 1321*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1322*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "clazz is not the ID of an interface.") 1323*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "clazz is not a known ID.") 1324*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID "methodID is not the ID of a static method in this " 1325*e82f7db8SAndroid Build Coastguard Worker "interface type or is the ID of a static initializer.") 1326*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1327*e82f7db8SAndroid Build Coastguard Worker (Error THREAD_NOT_SUSPENDED) 1328*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1329*e82f7db8SAndroid Build Coastguard Worker ) 1330*e82f7db8SAndroid Build Coastguard Worker ) 1331*e82f7db8SAndroid Build Coastguard Worker) 1332*e82f7db8SAndroid Build Coastguard Worker(CommandSet Method=6 1333*e82f7db8SAndroid Build Coastguard Worker (Command LineTable=1 1334*e82f7db8SAndroid Build Coastguard Worker "Returns line number information for the method, if present. " 1335*e82f7db8SAndroid Build Coastguard Worker "The line table maps source line numbers to the initial code index " 1336*e82f7db8SAndroid Build Coastguard Worker "of the line. The line table " 1337*e82f7db8SAndroid Build Coastguard Worker "is ordered by code index (from lowest to highest). The line number " 1338*e82f7db8SAndroid Build Coastguard Worker "information is constant unless a new class definition is installed " 1339*e82f7db8SAndroid Build Coastguard Worker "using <a href=\"#JDWP_VirtualMachine_RedefineClasses\">RedefineClasses</a>." 1340*e82f7db8SAndroid Build Coastguard Worker (Out 1341*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The class.") 1342*e82f7db8SAndroid Build Coastguard Worker (method methodID "The method.") 1343*e82f7db8SAndroid Build Coastguard Worker ) 1344*e82f7db8SAndroid Build Coastguard Worker (Reply 1345*e82f7db8SAndroid Build Coastguard Worker (long start "Lowest valid code index for the method, >=0, or -1 if the method is native ") 1346*e82f7db8SAndroid Build Coastguard Worker (long end "Highest valid code index for the method, >=0, or -1 if the method is native") 1347*e82f7db8SAndroid Build Coastguard Worker (Repeat lines "The number of entries in the line table for this method." 1348*e82f7db8SAndroid Build Coastguard Worker (Group LineInfo 1349*e82f7db8SAndroid Build Coastguard Worker (long lineCodeIndex "Initial code index of the line, " 1350*e82f7db8SAndroid Build Coastguard Worker "start <= lineCodeIndex < end") 1351*e82f7db8SAndroid Build Coastguard Worker (int lineNumber "Line number.") 1352*e82f7db8SAndroid Build Coastguard Worker ) 1353*e82f7db8SAndroid Build Coastguard Worker ) 1354*e82f7db8SAndroid Build Coastguard Worker ) 1355*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1356*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 1357*e82f7db8SAndroid Build Coastguard Worker "type.") 1358*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 1359*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID "methodID is not the ID of a method.") 1360*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1361*e82f7db8SAndroid Build Coastguard Worker ) 1362*e82f7db8SAndroid Build Coastguard Worker ) 1363*e82f7db8SAndroid Build Coastguard Worker (Command VariableTable=2 1364*e82f7db8SAndroid Build Coastguard Worker "Returns variable information for the method. The variable table " 1365*e82f7db8SAndroid Build Coastguard Worker "includes arguments and locals declared within the method. For " 1366*e82f7db8SAndroid Build Coastguard Worker "instance methods, the \"this\" reference is included in the " 1367*e82f7db8SAndroid Build Coastguard Worker "table. Also, synthetic variables may be present. " 1368*e82f7db8SAndroid Build Coastguard Worker (Out 1369*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The class.") 1370*e82f7db8SAndroid Build Coastguard Worker (method methodID "The method.") 1371*e82f7db8SAndroid Build Coastguard Worker ) 1372*e82f7db8SAndroid Build Coastguard Worker (Reply 1373*e82f7db8SAndroid Build Coastguard Worker (int argCnt "The number of words in the frame used by arguments. " 1374*e82f7db8SAndroid Build Coastguard Worker "Eight-byte arguments use two words; all others use one. ") 1375*e82f7db8SAndroid Build Coastguard Worker (Repeat slots "The number of variables." 1376*e82f7db8SAndroid Build Coastguard Worker (Group SlotInfo "Information about the variable." 1377*e82f7db8SAndroid Build Coastguard Worker (long codeIndex 1378*e82f7db8SAndroid Build Coastguard Worker "First code index at which the variable is visible (unsigned). " 1379*e82f7db8SAndroid Build Coastguard Worker "Used in conjunction with <code>length</code>. " 1380*e82f7db8SAndroid Build Coastguard Worker "The variable can be get or set only when the current " 1381*e82f7db8SAndroid Build Coastguard Worker "<code>codeIndex</code> <= current frame code index < <code>codeIndex + length</code> ") 1382*e82f7db8SAndroid Build Coastguard Worker (string name "The variable's name.") 1383*e82f7db8SAndroid Build Coastguard Worker (string signature "The variable type's JNI signature.") 1384*e82f7db8SAndroid Build Coastguard Worker (int length 1385*e82f7db8SAndroid Build Coastguard Worker "Unsigned value used in conjunction with <code>codeIndex</code>. " 1386*e82f7db8SAndroid Build Coastguard Worker "The variable can be get or set only when the current " 1387*e82f7db8SAndroid Build Coastguard Worker "<code>codeIndex</code> <= current frame code index < <code>code index + length</code> ") 1388*e82f7db8SAndroid Build Coastguard Worker (int slot "The local variable's index in its frame") 1389*e82f7db8SAndroid Build Coastguard Worker ) 1390*e82f7db8SAndroid Build Coastguard Worker ) 1391*e82f7db8SAndroid Build Coastguard Worker ) 1392*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1393*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 1394*e82f7db8SAndroid Build Coastguard Worker "type.") 1395*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 1396*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID "methodID is not the ID of a method.") 1397*e82f7db8SAndroid Build Coastguard Worker (Error ABSENT_INFORMATION "there is no variable information for the method.") 1398*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1399*e82f7db8SAndroid Build Coastguard Worker ) 1400*e82f7db8SAndroid Build Coastguard Worker ) 1401*e82f7db8SAndroid Build Coastguard Worker (Command Bytecodes=3 1402*e82f7db8SAndroid Build Coastguard Worker "Retrieve the method's bytecodes as defined in " 1403*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 1404*e82f7db8SAndroid Build Coastguard Worker "Requires canGetBytecodes capability - see " 1405*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 1406*e82f7db8SAndroid Build Coastguard Worker (Out 1407*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The class.") 1408*e82f7db8SAndroid Build Coastguard Worker (method methodID "The method.") 1409*e82f7db8SAndroid Build Coastguard Worker ) 1410*e82f7db8SAndroid Build Coastguard Worker (Reply 1411*e82f7db8SAndroid Build Coastguard Worker (Repeat bytes 1412*e82f7db8SAndroid Build Coastguard Worker (byte bytecode "A Java bytecode.") 1413*e82f7db8SAndroid Build Coastguard Worker ) 1414*e82f7db8SAndroid Build Coastguard Worker ) 1415*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1416*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 1417*e82f7db8SAndroid Build Coastguard Worker "type.") 1418*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 1419*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID "methodID is not the ID of a method.") 1420*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED "If the target virtual machine does not " 1421*e82f7db8SAndroid Build Coastguard Worker "support the retrieval of bytecodes.") 1422*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1423*e82f7db8SAndroid Build Coastguard Worker ) 1424*e82f7db8SAndroid Build Coastguard Worker ) 1425*e82f7db8SAndroid Build Coastguard Worker (Command IsObsolete=4 1426*e82f7db8SAndroid Build Coastguard Worker "Determine if this method is obsolete. A method is obsolete if it has been replaced " 1427*e82f7db8SAndroid Build Coastguard Worker "by a non-equivalent method using the " 1428*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_RedefineClasses\">RedefineClasses</a> command. " 1429*e82f7db8SAndroid Build Coastguard Worker "The original and redefined methods are considered equivalent if their bytecodes are " 1430*e82f7db8SAndroid Build Coastguard Worker "the same except for indices into the constant pool and the referenced constants are " 1431*e82f7db8SAndroid Build Coastguard Worker "equal." 1432*e82f7db8SAndroid Build Coastguard Worker (Out 1433*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The class.") 1434*e82f7db8SAndroid Build Coastguard Worker (method methodID "The method.") 1435*e82f7db8SAndroid Build Coastguard Worker ) 1436*e82f7db8SAndroid Build Coastguard Worker (Reply 1437*e82f7db8SAndroid Build Coastguard Worker (boolean isObsolete "true if this method has been replaced" 1438*e82f7db8SAndroid Build Coastguard Worker "by a non-equivalent method using" 1439*e82f7db8SAndroid Build Coastguard Worker "the RedefineClasses command.") 1440*e82f7db8SAndroid Build Coastguard Worker ) 1441*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1442*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 1443*e82f7db8SAndroid Build Coastguard Worker "type.") 1444*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 1445*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID "methodID is not the ID of a method.") 1446*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED "If the target virtual machine does " 1447*e82f7db8SAndroid Build Coastguard Worker "not support this query.") 1448*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1449*e82f7db8SAndroid Build Coastguard Worker ) 1450*e82f7db8SAndroid Build Coastguard Worker ) 1451*e82f7db8SAndroid Build Coastguard Worker (Command VariableTableWithGeneric=5 1452*e82f7db8SAndroid Build Coastguard Worker "Returns variable information for the method, including " 1453*e82f7db8SAndroid Build Coastguard Worker "generic signatures for the variables. The variable table " 1454*e82f7db8SAndroid Build Coastguard Worker "includes arguments and locals declared within the method. For " 1455*e82f7db8SAndroid Build Coastguard Worker "instance methods, the \"this\" reference is included in the " 1456*e82f7db8SAndroid Build Coastguard Worker "table. Also, synthetic variables may be present. " 1457*e82f7db8SAndroid Build Coastguard Worker "Generic signatures are described in the signature attribute " 1458*e82f7db8SAndroid Build Coastguard Worker "section in " 1459*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>. " 1460*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.5." 1461*e82f7db8SAndroid Build Coastguard Worker (Out 1462*e82f7db8SAndroid Build Coastguard Worker (referenceType refType "The class.") 1463*e82f7db8SAndroid Build Coastguard Worker (method methodID "The method.") 1464*e82f7db8SAndroid Build Coastguard Worker ) 1465*e82f7db8SAndroid Build Coastguard Worker (Reply 1466*e82f7db8SAndroid Build Coastguard Worker (int argCnt "The number of words in the frame used by arguments. " 1467*e82f7db8SAndroid Build Coastguard Worker "Eight-byte arguments use two words; all others use one. ") 1468*e82f7db8SAndroid Build Coastguard Worker (Repeat slots "The number of variables." 1469*e82f7db8SAndroid Build Coastguard Worker (Group SlotInfo "Information about the variable." 1470*e82f7db8SAndroid Build Coastguard Worker (long codeIndex 1471*e82f7db8SAndroid Build Coastguard Worker "First code index at which the variable is visible (unsigned). " 1472*e82f7db8SAndroid Build Coastguard Worker "Used in conjunction with <code>length</code>. " 1473*e82f7db8SAndroid Build Coastguard Worker "The variable can be get or set only when the current " 1474*e82f7db8SAndroid Build Coastguard Worker "<code>codeIndex</code> <= current frame code index < <code>codeIndex + length</code> ") 1475*e82f7db8SAndroid Build Coastguard Worker (string name "The variable's name.") 1476*e82f7db8SAndroid Build Coastguard Worker (string signature "The variable type's JNI signature.") 1477*e82f7db8SAndroid Build Coastguard Worker (string genericSignature "The variable type's generic " 1478*e82f7db8SAndroid Build Coastguard Worker "signature or an empty string if there is none.") 1479*e82f7db8SAndroid Build Coastguard Worker (int length 1480*e82f7db8SAndroid Build Coastguard Worker "Unsigned value used in conjunction with <code>codeIndex</code>. " 1481*e82f7db8SAndroid Build Coastguard Worker "The variable can be get or set only when the current " 1482*e82f7db8SAndroid Build Coastguard Worker "<code>codeIndex</code> <= current frame code index < <code>code index + length</code> ") 1483*e82f7db8SAndroid Build Coastguard Worker (int slot "The local variable's index in its frame") 1484*e82f7db8SAndroid Build Coastguard Worker ) 1485*e82f7db8SAndroid Build Coastguard Worker ) 1486*e82f7db8SAndroid Build Coastguard Worker ) 1487*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1488*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "refType is not the ID of a reference " 1489*e82f7db8SAndroid Build Coastguard Worker "type.") 1490*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "refType is not a known ID.") 1491*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID "methodID is not the ID of a method.") 1492*e82f7db8SAndroid Build Coastguard Worker (Error ABSENT_INFORMATION "there is no variable information for the method.") 1493*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1494*e82f7db8SAndroid Build Coastguard Worker ) 1495*e82f7db8SAndroid Build Coastguard Worker ) 1496*e82f7db8SAndroid Build Coastguard Worker 1497*e82f7db8SAndroid Build Coastguard Worker) 1498*e82f7db8SAndroid Build Coastguard Worker(CommandSet Field=8 1499*e82f7db8SAndroid Build Coastguard Worker) 1500*e82f7db8SAndroid Build Coastguard Worker(CommandSet ObjectReference=9 1501*e82f7db8SAndroid Build Coastguard Worker (Command ReferenceType=1 1502*e82f7db8SAndroid Build Coastguard Worker "Returns the runtime type of the object. " 1503*e82f7db8SAndroid Build Coastguard Worker "The runtime type will be a class or an array. " 1504*e82f7db8SAndroid Build Coastguard Worker (Out 1505*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 1506*e82f7db8SAndroid Build Coastguard Worker ) 1507*e82f7db8SAndroid Build Coastguard Worker (Reply 1508*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "<a href=\"#JDWP_TypeTag\">Kind</a> " 1509*e82f7db8SAndroid Build Coastguard Worker "of following reference type. ") 1510*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID "The runtime reference type.") 1511*e82f7db8SAndroid Build Coastguard Worker ) 1512*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1513*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1514*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1515*e82f7db8SAndroid Build Coastguard Worker ) 1516*e82f7db8SAndroid Build Coastguard Worker ) 1517*e82f7db8SAndroid Build Coastguard Worker (Command GetValues=2 1518*e82f7db8SAndroid Build Coastguard Worker "Returns the value of one or more instance fields. " 1519*e82f7db8SAndroid Build Coastguard Worker "Each field must be member of the object's type " 1520*e82f7db8SAndroid Build Coastguard Worker "or one of its superclasses, superinterfaces, or implemented interfaces. " 1521*e82f7db8SAndroid Build Coastguard Worker "Access control is not enforced; for example, the values of private " 1522*e82f7db8SAndroid Build Coastguard Worker "fields can be obtained." 1523*e82f7db8SAndroid Build Coastguard Worker (Out 1524*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 1525*e82f7db8SAndroid Build Coastguard Worker (Repeat fields "The number of values to get" 1526*e82f7db8SAndroid Build Coastguard Worker (Group Field 1527*e82f7db8SAndroid Build Coastguard Worker (field fieldID "Field to get.") 1528*e82f7db8SAndroid Build Coastguard Worker ) 1529*e82f7db8SAndroid Build Coastguard Worker ) 1530*e82f7db8SAndroid Build Coastguard Worker ) 1531*e82f7db8SAndroid Build Coastguard Worker (Reply 1532*e82f7db8SAndroid Build Coastguard Worker (Repeat values "The number of values returned, always equal to 'fields', " 1533*e82f7db8SAndroid Build Coastguard Worker "the number of values to get. Field values are ordered " 1534*e82f7db8SAndroid Build Coastguard Worker "in the reply in the same order as corresponding fieldIDs " 1535*e82f7db8SAndroid Build Coastguard Worker "in the command." 1536*e82f7db8SAndroid Build Coastguard Worker (value value "The field value") 1537*e82f7db8SAndroid Build Coastguard Worker ) 1538*e82f7db8SAndroid Build Coastguard Worker ) 1539*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1540*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1541*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FIELDID) 1542*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1543*e82f7db8SAndroid Build Coastguard Worker ) 1544*e82f7db8SAndroid Build Coastguard Worker ) 1545*e82f7db8SAndroid Build Coastguard Worker (Command SetValues=3 1546*e82f7db8SAndroid Build Coastguard Worker "Sets the value of one or more instance fields. " 1547*e82f7db8SAndroid Build Coastguard Worker "Each field must be member of the object's type " 1548*e82f7db8SAndroid Build Coastguard Worker "or one of its superclasses, superinterfaces, or implemented interfaces. " 1549*e82f7db8SAndroid Build Coastguard Worker "Access control is not enforced; for example, the values of private " 1550*e82f7db8SAndroid Build Coastguard Worker "fields can be set. " 1551*e82f7db8SAndroid Build Coastguard Worker "For primitive values, the value's type must match the " 1552*e82f7db8SAndroid Build Coastguard Worker "field's type exactly. For object values, there must be a " 1553*e82f7db8SAndroid Build Coastguard Worker "widening reference conversion from the value's type to the 1554*e82f7db8SAndroid Build Coastguard Worker "field's type and the field's type must be loaded. " 1555*e82f7db8SAndroid Build Coastguard Worker (Out 1556*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 1557*e82f7db8SAndroid Build Coastguard Worker (Repeat values "The number of fields to set." 1558*e82f7db8SAndroid Build Coastguard Worker (Group FieldValue "A Field/Value pair." 1559*e82f7db8SAndroid Build Coastguard Worker (field fieldID "Field to set.") 1560*e82f7db8SAndroid Build Coastguard Worker (untagged-value value "Value to put in the field.") 1561*e82f7db8SAndroid Build Coastguard Worker ) 1562*e82f7db8SAndroid Build Coastguard Worker ) 1563*e82f7db8SAndroid Build Coastguard Worker ) 1564*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 1565*e82f7db8SAndroid Build Coastguard Worker ) 1566*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1567*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1568*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FIELDID) 1569*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1570*e82f7db8SAndroid Build Coastguard Worker ) 1571*e82f7db8SAndroid Build Coastguard Worker ) 1572*e82f7db8SAndroid Build Coastguard Worker (Command MonitorInfo=5 1573*e82f7db8SAndroid Build Coastguard Worker "Returns monitor information for an object. All threads int the VM must " 1574*e82f7db8SAndroid Build Coastguard Worker "be suspended." 1575*e82f7db8SAndroid Build Coastguard Worker "Requires canGetMonitorInfo capability - see " 1576*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 1577*e82f7db8SAndroid Build Coastguard Worker (Out 1578*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 1579*e82f7db8SAndroid Build Coastguard Worker ) 1580*e82f7db8SAndroid Build Coastguard Worker (Reply 1581*e82f7db8SAndroid Build Coastguard Worker (threadObject owner "The monitor owner, or null if it is not currently owned.") 1582*e82f7db8SAndroid Build Coastguard Worker (int entryCount "The number of times the monitor has been entered.") 1583*e82f7db8SAndroid Build Coastguard Worker (Repeat waiters "The number of threads that are waiting for the monitor " 1584*e82f7db8SAndroid Build Coastguard Worker "0 if there is no current owner" 1585*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "A thread waiting for this monitor.") 1586*e82f7db8SAndroid Build Coastguard Worker ) 1587*e82f7db8SAndroid Build Coastguard Worker ) 1588*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1589*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1590*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 1591*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1592*e82f7db8SAndroid Build Coastguard Worker ) 1593*e82f7db8SAndroid Build Coastguard Worker ) 1594*e82f7db8SAndroid Build Coastguard Worker (Command InvokeMethod=6 1595*e82f7db8SAndroid Build Coastguard Worker "Invokes a instance method. " 1596*e82f7db8SAndroid Build Coastguard Worker "The method must be member of the object's type " 1597*e82f7db8SAndroid Build Coastguard Worker "or one of its superclasses, superinterfaces, or implemented interfaces. " 1598*e82f7db8SAndroid Build Coastguard Worker "Access control is not enforced; for example, private " 1599*e82f7db8SAndroid Build Coastguard Worker "methods can be invoked." 1600*e82f7db8SAndroid Build Coastguard Worker "<p>" 1601*e82f7db8SAndroid Build Coastguard Worker "The method invocation will occur in the specified thread. " 1602*e82f7db8SAndroid Build Coastguard Worker "Method invocation can occur only if the specified thread " 1603*e82f7db8SAndroid Build Coastguard Worker "has been suspended by an event. " 1604*e82f7db8SAndroid Build Coastguard Worker "Method invocation is not supported " 1605*e82f7db8SAndroid Build Coastguard Worker "when the target VM has been suspended by the front-end. " 1606*e82f7db8SAndroid Build Coastguard Worker "<p>" 1607*e82f7db8SAndroid Build Coastguard Worker "The specified method is invoked with the arguments in the specified " 1608*e82f7db8SAndroid Build Coastguard Worker "argument list. " 1609*e82f7db8SAndroid Build Coastguard Worker "The method invocation is synchronous; the reply packet is not " 1610*e82f7db8SAndroid Build Coastguard Worker "sent until the invoked method returns in the target VM. " 1611*e82f7db8SAndroid Build Coastguard Worker "The return value (possibly the void value) is " 1612*e82f7db8SAndroid Build Coastguard Worker "included in the reply packet. " 1613*e82f7db8SAndroid Build Coastguard Worker "If the invoked method throws an exception, the " 1614*e82f7db8SAndroid Build Coastguard Worker "exception object ID is set in the reply packet; otherwise, the " 1615*e82f7db8SAndroid Build Coastguard Worker "exception object ID is null. " 1616*e82f7db8SAndroid Build Coastguard Worker "<p>" 1617*e82f7db8SAndroid Build Coastguard Worker "For primitive arguments, the argument value's type must match the " 1618*e82f7db8SAndroid Build Coastguard Worker "argument's type exactly. For object arguments, there must be a " 1619*e82f7db8SAndroid Build Coastguard Worker "widening reference conversion from the argument value's type to the " 1620*e82f7db8SAndroid Build Coastguard Worker "argument's type and the argument's type must be loaded. " 1621*e82f7db8SAndroid Build Coastguard Worker "<p>" 1622*e82f7db8SAndroid Build Coastguard Worker "By default, all threads in the target VM are resumed while " 1623*e82f7db8SAndroid Build Coastguard Worker "the method is being invoked if they were previously " 1624*e82f7db8SAndroid Build Coastguard Worker "suspended by an event or by a command. " 1625*e82f7db8SAndroid Build Coastguard Worker "This is done to prevent the deadlocks " 1626*e82f7db8SAndroid Build Coastguard Worker "that will occur if any of the threads own monitors " 1627*e82f7db8SAndroid Build Coastguard Worker "that will be needed by the invoked method. It is possible that " 1628*e82f7db8SAndroid Build Coastguard Worker "breakpoints or other events might occur during the invocation. " 1629*e82f7db8SAndroid Build Coastguard Worker "Note, however, that this implicit resume acts exactly like " 1630*e82f7db8SAndroid Build Coastguard Worker "the ThreadReference resume command, so if the thread's suspend " 1631*e82f7db8SAndroid Build Coastguard Worker "count is greater than 1, it will remain in a suspended state " 1632*e82f7db8SAndroid Build Coastguard Worker "during the invocation. By default, when the invocation completes, " 1633*e82f7db8SAndroid Build Coastguard Worker "all threads in the target VM are suspended, regardless their state " 1634*e82f7db8SAndroid Build Coastguard Worker "before the invocation. " 1635*e82f7db8SAndroid Build Coastguard Worker "<p>" 1636*e82f7db8SAndroid Build Coastguard Worker "The resumption of other threads during the invoke can be prevented " 1637*e82f7db8SAndroid Build Coastguard Worker "by specifying the INVOKE_SINGLE_THREADED " 1638*e82f7db8SAndroid Build Coastguard Worker "bit flag in the <code>options</code> field; however, " 1639*e82f7db8SAndroid Build Coastguard Worker "there is no protection against or recovery from the deadlocks " 1640*e82f7db8SAndroid Build Coastguard Worker "described above, so this option should be used with great caution. " 1641*e82f7db8SAndroid Build Coastguard Worker "Only the specified thread will be resumed (as described for all " 1642*e82f7db8SAndroid Build Coastguard Worker "threads above). Upon completion of a single threaded invoke, the invoking thread " 1643*e82f7db8SAndroid Build Coastguard Worker "will be suspended once again. Note that any threads started during " 1644*e82f7db8SAndroid Build Coastguard Worker "the single threaded invocation will not be suspended when the " 1645*e82f7db8SAndroid Build Coastguard Worker "invocation completes. " 1646*e82f7db8SAndroid Build Coastguard Worker "<p>" 1647*e82f7db8SAndroid Build Coastguard Worker "If the target VM is disconnected during the invoke (for example, through " 1648*e82f7db8SAndroid Build Coastguard Worker "the VirtualMachine dispose command) the method invocation continues. " 1649*e82f7db8SAndroid Build Coastguard Worker (Out 1650*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 1651*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread in which to invoke.") 1652*e82f7db8SAndroid Build Coastguard Worker (classType clazz "The class type.") 1653*e82f7db8SAndroid Build Coastguard Worker (method methodID "The method to invoke.") 1654*e82f7db8SAndroid Build Coastguard Worker (Repeat arguments "The number of arguments." 1655*e82f7db8SAndroid Build Coastguard Worker (value arg "The argument value.") 1656*e82f7db8SAndroid Build Coastguard Worker ) 1657*e82f7db8SAndroid Build Coastguard Worker (int options "Invocation <a href=\"#JDWP_InvokeOptions\">options</a>") 1658*e82f7db8SAndroid Build Coastguard Worker ) 1659*e82f7db8SAndroid Build Coastguard Worker (Reply 1660*e82f7db8SAndroid Build Coastguard Worker (value returnValue "The returned value, or null if an exception is thrown.") 1661*e82f7db8SAndroid Build Coastguard Worker (tagged-object exception "The thrown exception, if any.") 1662*e82f7db8SAndroid Build Coastguard Worker ) 1663*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1664*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1665*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS "clazz is not the ID of a reference " 1666*e82f7db8SAndroid Build Coastguard Worker "type.") 1667*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID "methodID is not the ID of an instance method " 1668*e82f7db8SAndroid Build Coastguard Worker "in this object's type or one of its superclasses, " 1669*e82f7db8SAndroid Build Coastguard Worker "superinterfaces, or implemented interfaces.") 1670*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1671*e82f7db8SAndroid Build Coastguard Worker (Error THREAD_NOT_SUSPENDED) 1672*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1673*e82f7db8SAndroid Build Coastguard Worker ) 1674*e82f7db8SAndroid Build Coastguard Worker ) 1675*e82f7db8SAndroid Build Coastguard Worker (Command DisableCollection=7 1676*e82f7db8SAndroid Build Coastguard Worker "Prevents garbage collection for the given object. By " 1677*e82f7db8SAndroid Build Coastguard Worker "default all objects in back-end replies may be " 1678*e82f7db8SAndroid Build Coastguard Worker "collected at any time the target VM is running. A call to " 1679*e82f7db8SAndroid Build Coastguard Worker "this command guarantees that the object will not be " 1680*e82f7db8SAndroid Build Coastguard Worker "collected. The " 1681*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_ObjectReference_EnableCollection\">EnableCollection</a> " 1682*e82f7db8SAndroid Build Coastguard Worker "command can be used to " 1683*e82f7db8SAndroid Build Coastguard Worker "allow collection once again. " 1684*e82f7db8SAndroid Build Coastguard Worker "<p>" 1685*e82f7db8SAndroid Build Coastguard Worker "Note that while the target VM is suspended, no garbage " 1686*e82f7db8SAndroid Build Coastguard Worker "collection will occur because all threads are suspended. " 1687*e82f7db8SAndroid Build Coastguard Worker "The typical examination of variables, fields, and arrays " 1688*e82f7db8SAndroid Build Coastguard Worker "during the suspension is safe without explicitly disabling " 1689*e82f7db8SAndroid Build Coastguard Worker "garbage collection. " 1690*e82f7db8SAndroid Build Coastguard Worker "<p>" 1691*e82f7db8SAndroid Build Coastguard Worker "This method should be used sparingly, as it alters the " 1692*e82f7db8SAndroid Build Coastguard Worker "pattern of garbage collection in the target VM and, " 1693*e82f7db8SAndroid Build Coastguard Worker "consequently, may result in application behavior under the " 1694*e82f7db8SAndroid Build Coastguard Worker "debugger that differs from its non-debugged behavior. " 1695*e82f7db8SAndroid Build Coastguard Worker (Out 1696*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 1697*e82f7db8SAndroid Build Coastguard Worker ) 1698*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 1699*e82f7db8SAndroid Build Coastguard Worker ) 1700*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1701*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1702*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1703*e82f7db8SAndroid Build Coastguard Worker ) 1704*e82f7db8SAndroid Build Coastguard Worker ) 1705*e82f7db8SAndroid Build Coastguard Worker (Command EnableCollection=8 1706*e82f7db8SAndroid Build Coastguard Worker "Permits garbage collection for this object. By default all " 1707*e82f7db8SAndroid Build Coastguard Worker "objects returned by JDWP may become unreachable in the target VM, " 1708*e82f7db8SAndroid Build Coastguard Worker "and hence may be garbage collected. A call to this command is " 1709*e82f7db8SAndroid Build Coastguard Worker "necessary only if garbage collection was previously disabled with " 1710*e82f7db8SAndroid Build Coastguard Worker "the <a href=\"#JDWP_ObjectReference_DisableCollection\">DisableCollection</a> " 1711*e82f7db8SAndroid Build Coastguard Worker "command." 1712*e82f7db8SAndroid Build Coastguard Worker (Out 1713*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 1714*e82f7db8SAndroid Build Coastguard Worker ) 1715*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 1716*e82f7db8SAndroid Build Coastguard Worker ) 1717*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1718*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1719*e82f7db8SAndroid Build Coastguard Worker ) 1720*e82f7db8SAndroid Build Coastguard Worker ) 1721*e82f7db8SAndroid Build Coastguard Worker (Command IsCollected=9 1722*e82f7db8SAndroid Build Coastguard Worker "Determines whether an object has been garbage collected in the " 1723*e82f7db8SAndroid Build Coastguard Worker "target VM. " 1724*e82f7db8SAndroid Build Coastguard Worker (Out 1725*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 1726*e82f7db8SAndroid Build Coastguard Worker ) 1727*e82f7db8SAndroid Build Coastguard Worker (Reply 1728*e82f7db8SAndroid Build Coastguard Worker (boolean isCollected "true if the object has been collected; false otherwise") 1729*e82f7db8SAndroid Build Coastguard Worker ) 1730*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1731*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1732*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1733*e82f7db8SAndroid Build Coastguard Worker ) 1734*e82f7db8SAndroid Build Coastguard Worker ) 1735*e82f7db8SAndroid Build Coastguard Worker (Command ReferringObjects=10 1736*e82f7db8SAndroid Build Coastguard Worker "Returns objects that directly reference this object. " 1737*e82f7db8SAndroid Build Coastguard Worker "Only objects that are reachable for the purposes " 1738*e82f7db8SAndroid Build Coastguard Worker "of garbage collection are returned. " 1739*e82f7db8SAndroid Build Coastguard Worker "Note that an object can also be referenced in other ways, " 1740*e82f7db8SAndroid Build Coastguard Worker "such as from a local variable in a stack frame, or from a JNI global " 1741*e82f7db8SAndroid Build Coastguard Worker "reference. Such non-object referrers are not returned by this command. " 1742*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. Requires canGetInstanceInfo capability - see " 1743*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 1744*e82f7db8SAndroid Build Coastguard Worker (Out 1745*e82f7db8SAndroid Build Coastguard Worker (object object "The object ID") 1746*e82f7db8SAndroid Build Coastguard Worker (int maxReferrers "Maximum number of referring objects to return. " 1747*e82f7db8SAndroid Build Coastguard Worker "Must be non-negative. If zero, all referring " 1748*e82f7db8SAndroid Build Coastguard Worker "objects are returned.") 1749*e82f7db8SAndroid Build Coastguard Worker ) 1750*e82f7db8SAndroid Build Coastguard Worker (Reply 1751*e82f7db8SAndroid Build Coastguard Worker (Repeat referringObjects "The number of objects that follow." 1752*e82f7db8SAndroid Build Coastguard Worker (tagged-object instance "An object that references this object.") 1753*e82f7db8SAndroid Build Coastguard Worker ) 1754*e82f7db8SAndroid Build Coastguard Worker ) 1755*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1756*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "object is not a known ID.") 1757*e82f7db8SAndroid Build Coastguard Worker (Error ILLEGAL_ARGUMENT "maxReferrers is less than zero.") 1758*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 1759*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1760*e82f7db8SAndroid Build Coastguard Worker ) 1761*e82f7db8SAndroid Build Coastguard Worker ) 1762*e82f7db8SAndroid Build Coastguard Worker) 1763*e82f7db8SAndroid Build Coastguard Worker 1764*e82f7db8SAndroid Build Coastguard Worker(CommandSet StringReference=10 1765*e82f7db8SAndroid Build Coastguard Worker (Command Value=1 1766*e82f7db8SAndroid Build Coastguard Worker "Returns the characters contained in the string. " 1767*e82f7db8SAndroid Build Coastguard Worker (Out 1768*e82f7db8SAndroid Build Coastguard Worker (object stringObject "The String object ID. ") 1769*e82f7db8SAndroid Build Coastguard Worker ) 1770*e82f7db8SAndroid Build Coastguard Worker (Reply 1771*e82f7db8SAndroid Build Coastguard Worker (string stringValue "UTF-8 representation of the string value.") 1772*e82f7db8SAndroid Build Coastguard Worker ) 1773*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1774*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_STRING) 1775*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 1776*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1777*e82f7db8SAndroid Build Coastguard Worker ) 1778*e82f7db8SAndroid Build Coastguard Worker ) 1779*e82f7db8SAndroid Build Coastguard Worker) 1780*e82f7db8SAndroid Build Coastguard Worker(CommandSet ThreadReference=11 1781*e82f7db8SAndroid Build Coastguard Worker (Command Name=1 1782*e82f7db8SAndroid Build Coastguard Worker "Returns the thread name. " 1783*e82f7db8SAndroid Build Coastguard Worker (Out 1784*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1785*e82f7db8SAndroid Build Coastguard Worker ) 1786*e82f7db8SAndroid Build Coastguard Worker (Reply 1787*e82f7db8SAndroid Build Coastguard Worker (string threadName "The thread name.") 1788*e82f7db8SAndroid Build Coastguard Worker ) 1789*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1790*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1791*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1792*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1793*e82f7db8SAndroid Build Coastguard Worker ) 1794*e82f7db8SAndroid Build Coastguard Worker ) 1795*e82f7db8SAndroid Build Coastguard Worker (Command Suspend=2 1796*e82f7db8SAndroid Build Coastguard Worker "Suspends the thread. " 1797*e82f7db8SAndroid Build Coastguard Worker "<p>" 1798*e82f7db8SAndroid Build Coastguard Worker "Unlike java.lang.Thread.suspend(), suspends of both " 1799*e82f7db8SAndroid Build Coastguard Worker "the virtual machine and individual threads are counted. Before " 1800*e82f7db8SAndroid Build Coastguard Worker "a thread will run again, it must be resumed the same number " 1801*e82f7db8SAndroid Build Coastguard Worker "of times it has been suspended. " 1802*e82f7db8SAndroid Build Coastguard Worker "<p>" 1803*e82f7db8SAndroid Build Coastguard Worker "Suspending single threads with command has the same " 1804*e82f7db8SAndroid Build Coastguard Worker "dangers java.lang.Thread.suspend(). If the suspended " 1805*e82f7db8SAndroid Build Coastguard Worker "thread holds a monitor needed by another running thread, " 1806*e82f7db8SAndroid Build Coastguard Worker "deadlock is possible in the target VM (at least until the " 1807*e82f7db8SAndroid Build Coastguard Worker "suspended thread is resumed again). " 1808*e82f7db8SAndroid Build Coastguard Worker "<p>" 1809*e82f7db8SAndroid Build Coastguard Worker "The suspended thread is guaranteed to remain suspended until " 1810*e82f7db8SAndroid Build Coastguard Worker "resumed through one of the JDI resume methods mentioned above; " 1811*e82f7db8SAndroid Build Coastguard Worker "the application in the target VM cannot resume the suspended thread " 1812*e82f7db8SAndroid Build Coastguard Worker "through {@link java.lang.Thread#resume}. " 1813*e82f7db8SAndroid Build Coastguard Worker "<p>" 1814*e82f7db8SAndroid Build Coastguard Worker "Note that this doesn't change the status of the thread (see the " 1815*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_ThreadReference_Status\">ThreadStatus</a> command.) " 1816*e82f7db8SAndroid Build Coastguard Worker "For example, if it was " 1817*e82f7db8SAndroid Build Coastguard Worker "Running, it will still appear running to other threads. " 1818*e82f7db8SAndroid Build Coastguard Worker (Out 1819*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1820*e82f7db8SAndroid Build Coastguard Worker ) 1821*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 1822*e82f7db8SAndroid Build Coastguard Worker ) 1823*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1824*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1825*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1826*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1827*e82f7db8SAndroid Build Coastguard Worker ) 1828*e82f7db8SAndroid Build Coastguard Worker ) 1829*e82f7db8SAndroid Build Coastguard Worker (Command Resume=3 1830*e82f7db8SAndroid Build Coastguard Worker "Resumes the execution of a given thread. If this thread was " 1831*e82f7db8SAndroid Build Coastguard Worker "not previously suspended by the front-end, " 1832*e82f7db8SAndroid Build Coastguard Worker "calling this command has no effect. " 1833*e82f7db8SAndroid Build Coastguard Worker "Otherwise, the count of pending suspends on this thread is " 1834*e82f7db8SAndroid Build Coastguard Worker "decremented. If it is decremented to 0, the thread will " 1835*e82f7db8SAndroid Build Coastguard Worker "continue to execute. " 1836*e82f7db8SAndroid Build Coastguard Worker (Out 1837*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1838*e82f7db8SAndroid Build Coastguard Worker ) 1839*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 1840*e82f7db8SAndroid Build Coastguard Worker ) 1841*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1842*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1843*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1844*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1845*e82f7db8SAndroid Build Coastguard Worker ) 1846*e82f7db8SAndroid Build Coastguard Worker ) 1847*e82f7db8SAndroid Build Coastguard Worker (Command Status=4 1848*e82f7db8SAndroid Build Coastguard Worker "Returns the current status of a thread. The thread status " 1849*e82f7db8SAndroid Build Coastguard Worker "reply indicates the thread status the last time it was running. " 1850*e82f7db8SAndroid Build Coastguard Worker "the suspend status provides information on the thread's " 1851*e82f7db8SAndroid Build Coastguard Worker "suspension, if any." 1852*e82f7db8SAndroid Build Coastguard Worker (Out 1853*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1854*e82f7db8SAndroid Build Coastguard Worker ) 1855*e82f7db8SAndroid Build Coastguard Worker (Reply 1856*e82f7db8SAndroid Build Coastguard Worker (int threadStatus "One of the thread status codes " 1857*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_ThreadStatus\">JDWP.ThreadStatus</a>") 1858*e82f7db8SAndroid Build Coastguard Worker (int suspendStatus "One of the suspend status codes " 1859*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_SuspendStatus\">JDWP.SuspendStatus</a>") 1860*e82f7db8SAndroid Build Coastguard Worker ) 1861*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1862*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1863*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1864*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1865*e82f7db8SAndroid Build Coastguard Worker ) 1866*e82f7db8SAndroid Build Coastguard Worker ) 1867*e82f7db8SAndroid Build Coastguard Worker (Command ThreadGroup=5 1868*e82f7db8SAndroid Build Coastguard Worker "Returns the thread group that contains a given thread. " 1869*e82f7db8SAndroid Build Coastguard Worker (Out 1870*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1871*e82f7db8SAndroid Build Coastguard Worker ) 1872*e82f7db8SAndroid Build Coastguard Worker (Reply 1873*e82f7db8SAndroid Build Coastguard Worker (threadGroupObject group "The thread group of this thread. ") 1874*e82f7db8SAndroid Build Coastguard Worker ) 1875*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1876*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1877*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1878*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1879*e82f7db8SAndroid Build Coastguard Worker ) 1880*e82f7db8SAndroid Build Coastguard Worker ) 1881*e82f7db8SAndroid Build Coastguard Worker (Command Frames=6 1882*e82f7db8SAndroid Build Coastguard Worker "Returns the current call stack of a suspended thread. " 1883*e82f7db8SAndroid Build Coastguard Worker "The sequence of frames starts with " 1884*e82f7db8SAndroid Build Coastguard Worker "the currently executing frame, followed by its caller, " 1885*e82f7db8SAndroid Build Coastguard Worker "and so on. The thread must be suspended, and the returned " 1886*e82f7db8SAndroid Build Coastguard Worker "frameID is valid only while the thread is suspended. " 1887*e82f7db8SAndroid Build Coastguard Worker (Out 1888*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1889*e82f7db8SAndroid Build Coastguard Worker (int startFrame "The index of the first frame to retrieve.") 1890*e82f7db8SAndroid Build Coastguard Worker (int length 1891*e82f7db8SAndroid Build Coastguard Worker "The count of frames to retrieve " 1892*e82f7db8SAndroid Build Coastguard Worker "(-1 means all remaining). ") 1893*e82f7db8SAndroid Build Coastguard Worker ) 1894*e82f7db8SAndroid Build Coastguard Worker (Reply 1895*e82f7db8SAndroid Build Coastguard Worker (Repeat frames "The number of frames retreived" 1896*e82f7db8SAndroid Build Coastguard Worker (Group Frame 1897*e82f7db8SAndroid Build Coastguard Worker (frame frameID "The ID of this frame. ") 1898*e82f7db8SAndroid Build Coastguard Worker (location location "The current location of this frame") 1899*e82f7db8SAndroid Build Coastguard Worker ) 1900*e82f7db8SAndroid Build Coastguard Worker ) 1901*e82f7db8SAndroid Build Coastguard Worker ) 1902*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1903*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1904*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1905*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1906*e82f7db8SAndroid Build Coastguard Worker ) 1907*e82f7db8SAndroid Build Coastguard Worker ) 1908*e82f7db8SAndroid Build Coastguard Worker (Command FrameCount=7 1909*e82f7db8SAndroid Build Coastguard Worker "Returns the count of frames on this thread's stack. " 1910*e82f7db8SAndroid Build Coastguard Worker "The thread must be suspended, and the returned " 1911*e82f7db8SAndroid Build Coastguard Worker "count is valid only while the thread is suspended. " 1912*e82f7db8SAndroid Build Coastguard Worker "Returns JDWP.Error.errorThreadNotSuspended if not suspended. " 1913*e82f7db8SAndroid Build Coastguard Worker (Out 1914*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1915*e82f7db8SAndroid Build Coastguard Worker ) 1916*e82f7db8SAndroid Build Coastguard Worker (Reply 1917*e82f7db8SAndroid Build Coastguard Worker (int frameCount "The count of frames on this thread's stack. ") 1918*e82f7db8SAndroid Build Coastguard Worker ) 1919*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1920*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1921*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1922*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1923*e82f7db8SAndroid Build Coastguard Worker ) 1924*e82f7db8SAndroid Build Coastguard Worker ) 1925*e82f7db8SAndroid Build Coastguard Worker (Command OwnedMonitors=8 1926*e82f7db8SAndroid Build Coastguard Worker "Returns the objects whose monitors have been entered by this thread. " 1927*e82f7db8SAndroid Build Coastguard Worker "The thread must be suspended, and the returned information is " 1928*e82f7db8SAndroid Build Coastguard Worker "relevant only while the thread is suspended. " 1929*e82f7db8SAndroid Build Coastguard Worker "Requires canGetOwnedMonitorInfo capability - see " 1930*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 1931*e82f7db8SAndroid Build Coastguard Worker (Out 1932*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1933*e82f7db8SAndroid Build Coastguard Worker ) 1934*e82f7db8SAndroid Build Coastguard Worker (Reply 1935*e82f7db8SAndroid Build Coastguard Worker (Repeat owned "The number of owned monitors" 1936*e82f7db8SAndroid Build Coastguard Worker (tagged-object monitor "An owned monitor") 1937*e82f7db8SAndroid Build Coastguard Worker ) 1938*e82f7db8SAndroid Build Coastguard Worker ) 1939*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1940*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1941*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1942*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 1943*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1944*e82f7db8SAndroid Build Coastguard Worker ) 1945*e82f7db8SAndroid Build Coastguard Worker ) 1946*e82f7db8SAndroid Build Coastguard Worker (Command CurrentContendedMonitor=9 1947*e82f7db8SAndroid Build Coastguard Worker "Returns the object, if any, for which this thread is waiting. The " 1948*e82f7db8SAndroid Build Coastguard Worker "thread may be waiting to enter a monitor, or it may be waiting, via " 1949*e82f7db8SAndroid Build Coastguard Worker "the java.lang.Object.wait method, for another thread to invoke the " 1950*e82f7db8SAndroid Build Coastguard Worker "notify method. " 1951*e82f7db8SAndroid Build Coastguard Worker "The thread must be suspended, and the returned information is " 1952*e82f7db8SAndroid Build Coastguard Worker "relevant only while the thread is suspended. " 1953*e82f7db8SAndroid Build Coastguard Worker "Requires canGetCurrentContendedMonitor capability - see " 1954*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 1955*e82f7db8SAndroid Build Coastguard Worker (Out 1956*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1957*e82f7db8SAndroid Build Coastguard Worker ) 1958*e82f7db8SAndroid Build Coastguard Worker (Reply 1959*e82f7db8SAndroid Build Coastguard Worker (tagged-object monitor "The contended monitor, or null if " 1960*e82f7db8SAndroid Build Coastguard Worker "there is no current contended monitor. ") 1961*e82f7db8SAndroid Build Coastguard Worker ) 1962*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1963*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1964*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1965*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 1966*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1967*e82f7db8SAndroid Build Coastguard Worker ) 1968*e82f7db8SAndroid Build Coastguard Worker ) 1969*e82f7db8SAndroid Build Coastguard Worker (Command Stop=10 1970*e82f7db8SAndroid Build Coastguard Worker "Stops the thread with an asynchronous exception, as if done by " 1971*e82f7db8SAndroid Build Coastguard Worker "java.lang.Thread.stop " 1972*e82f7db8SAndroid Build Coastguard Worker (Out 1973*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1974*e82f7db8SAndroid Build Coastguard Worker (object throwable "Asynchronous exception. This object must " 1975*e82f7db8SAndroid Build Coastguard Worker "be an instance of java.lang.Throwable or a subclass") 1976*e82f7db8SAndroid Build Coastguard Worker ) 1977*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 1978*e82f7db8SAndroid Build Coastguard Worker ) 1979*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1980*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1981*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "If thread is not a known ID or the asynchronous " 1982*e82f7db8SAndroid Build Coastguard Worker "exception has been garbage collected.") 1983*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1984*e82f7db8SAndroid Build Coastguard Worker ) 1985*e82f7db8SAndroid Build Coastguard Worker ) 1986*e82f7db8SAndroid Build Coastguard Worker (Command Interrupt=11 1987*e82f7db8SAndroid Build Coastguard Worker "Interrupt the thread, as if done by java.lang.Thread.interrupt " 1988*e82f7db8SAndroid Build Coastguard Worker (Out 1989*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 1990*e82f7db8SAndroid Build Coastguard Worker ) 1991*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 1992*e82f7db8SAndroid Build Coastguard Worker ) 1993*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 1994*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 1995*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 1996*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 1997*e82f7db8SAndroid Build Coastguard Worker ) 1998*e82f7db8SAndroid Build Coastguard Worker ) 1999*e82f7db8SAndroid Build Coastguard Worker (Command SuspendCount=12 2000*e82f7db8SAndroid Build Coastguard Worker "Get the suspend count for this thread. The suspend count is the " 2001*e82f7db8SAndroid Build Coastguard Worker "number of times the thread has been suspended through the " 2002*e82f7db8SAndroid Build Coastguard Worker "thread-level or VM-level suspend commands without a corresponding resume " 2003*e82f7db8SAndroid Build Coastguard Worker (Out 2004*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 2005*e82f7db8SAndroid Build Coastguard Worker ) 2006*e82f7db8SAndroid Build Coastguard Worker (Reply 2007*e82f7db8SAndroid Build Coastguard Worker (int suspendCount "The number of outstanding suspends of this thread. ") 2008*e82f7db8SAndroid Build Coastguard Worker ) 2009*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2010*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 2011*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 2012*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2013*e82f7db8SAndroid Build Coastguard Worker ) 2014*e82f7db8SAndroid Build Coastguard Worker ) 2015*e82f7db8SAndroid Build Coastguard Worker (Command OwnedMonitorsStackDepthInfo=13 2016*e82f7db8SAndroid Build Coastguard Worker "Returns monitor objects owned by the thread, along with stack depth at which " 2017*e82f7db8SAndroid Build Coastguard Worker "the monitor was acquired. Returns stack depth of -1 if " 2018*e82f7db8SAndroid Build Coastguard Worker "the implementation cannot determine the stack depth " 2019*e82f7db8SAndroid Build Coastguard Worker "(e.g., for monitors acquired by JNI MonitorEnter)." 2020*e82f7db8SAndroid Build Coastguard Worker "The thread must be suspended, and the returned information is " 2021*e82f7db8SAndroid Build Coastguard Worker "relevant only while the thread is suspended. " 2022*e82f7db8SAndroid Build Coastguard Worker "Requires canGetMonitorFrameInfo capability - see " 2023*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. " 2024*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. " 2025*e82f7db8SAndroid Build Coastguard Worker 2026*e82f7db8SAndroid Build Coastguard Worker (Out 2027*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 2028*e82f7db8SAndroid Build Coastguard Worker ) 2029*e82f7db8SAndroid Build Coastguard Worker (Reply 2030*e82f7db8SAndroid Build Coastguard Worker (Repeat owned "The number of owned monitors" 2031*e82f7db8SAndroid Build Coastguard Worker (Group monitor 2032*e82f7db8SAndroid Build Coastguard Worker (tagged-object monitor "An owned monitor") 2033*e82f7db8SAndroid Build Coastguard Worker (int stack_depth "Stack depth location where monitor was acquired") 2034*e82f7db8SAndroid Build Coastguard Worker ) 2035*e82f7db8SAndroid Build Coastguard Worker ) 2036*e82f7db8SAndroid Build Coastguard Worker ) 2037*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2038*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 2039*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 2040*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 2041*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2042*e82f7db8SAndroid Build Coastguard Worker ) 2043*e82f7db8SAndroid Build Coastguard Worker ) 2044*e82f7db8SAndroid Build Coastguard Worker (Command ForceEarlyReturn=14 2045*e82f7db8SAndroid Build Coastguard Worker "Force a method to return before it reaches a return " 2046*e82f7db8SAndroid Build Coastguard Worker "statement. " 2047*e82f7db8SAndroid Build Coastguard Worker "<p>" 2048*e82f7db8SAndroid Build Coastguard Worker "The method which will return early is referred to as the " 2049*e82f7db8SAndroid Build Coastguard Worker "called method. The called method is the current method (as " 2050*e82f7db8SAndroid Build Coastguard Worker "defined by the Frames section in " 2051*e82f7db8SAndroid Build Coastguard Worker "<cite>The Java™ Virtual Machine Specification</cite>) " 2052*e82f7db8SAndroid Build Coastguard Worker "for the specified thread at the time this command " 2053*e82f7db8SAndroid Build Coastguard Worker "is received. " 2054*e82f7db8SAndroid Build Coastguard Worker "<p>" 2055*e82f7db8SAndroid Build Coastguard Worker "The specified thread must be suspended. " 2056*e82f7db8SAndroid Build Coastguard Worker "The return occurs when execution of Java programming " 2057*e82f7db8SAndroid Build Coastguard Worker "language code is resumed on this thread. Between sending this " 2058*e82f7db8SAndroid Build Coastguard Worker "command and resumption of thread execution, the " 2059*e82f7db8SAndroid Build Coastguard Worker "state of the stack is undefined. " 2060*e82f7db8SAndroid Build Coastguard Worker "<p>" 2061*e82f7db8SAndroid Build Coastguard Worker "No further instructions are executed in the called " 2062*e82f7db8SAndroid Build Coastguard Worker "method. Specifically, finally blocks are not executed. Note: " 2063*e82f7db8SAndroid Build Coastguard Worker "this can cause inconsistent states in the application. " 2064*e82f7db8SAndroid Build Coastguard Worker "<p>" 2065*e82f7db8SAndroid Build Coastguard Worker "A lock acquired by calling the called method (if it is a " 2066*e82f7db8SAndroid Build Coastguard Worker "synchronized method) and locks acquired by entering " 2067*e82f7db8SAndroid Build Coastguard Worker "synchronized blocks within the called method are " 2068*e82f7db8SAndroid Build Coastguard Worker "released. Note: this does not apply to JNI locks or " 2069*e82f7db8SAndroid Build Coastguard Worker "java.util.concurrent.locks locks. " 2070*e82f7db8SAndroid Build Coastguard Worker "<p>" 2071*e82f7db8SAndroid Build Coastguard Worker "Events, such as MethodExit, are generated as they would be in " 2072*e82f7db8SAndroid Build Coastguard Worker "a normal return. " 2073*e82f7db8SAndroid Build Coastguard Worker "<p>" 2074*e82f7db8SAndroid Build Coastguard Worker "The called method must be a non-native Java programming " 2075*e82f7db8SAndroid Build Coastguard Worker "language method. Forcing return on a thread with only one " 2076*e82f7db8SAndroid Build Coastguard Worker "frame on the stack causes the thread to exit when resumed. " 2077*e82f7db8SAndroid Build Coastguard Worker "<p>" 2078*e82f7db8SAndroid Build Coastguard Worker "For void methods, the value must be a void value. " 2079*e82f7db8SAndroid Build Coastguard Worker "For methods that return primitive values, the value's type must " 2080*e82f7db8SAndroid Build Coastguard Worker "match the return type exactly. For object values, there must be a " 2081*e82f7db8SAndroid Build Coastguard Worker "widening reference conversion from the value's type to the " 2082*e82f7db8SAndroid Build Coastguard Worker "return type type and the return type must be loaded. " 2083*e82f7db8SAndroid Build Coastguard Worker "<p>" 2084*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.6. Requires canForceEarlyReturn capability - see " 2085*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 2086*e82f7db8SAndroid Build Coastguard Worker (Out 2087*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 2088*e82f7db8SAndroid Build Coastguard Worker (value value "The value to return. ") 2089*e82f7db8SAndroid Build Coastguard Worker ) 2090*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 2091*e82f7db8SAndroid Build Coastguard Worker ) 2092*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2093*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 2094*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "Thread or value is not a known ID.") 2095*e82f7db8SAndroid Build Coastguard Worker (Error THREAD_NOT_SUSPENDED) 2096*e82f7db8SAndroid Build Coastguard Worker (Error THREAD_NOT_ALIVE) 2097*e82f7db8SAndroid Build Coastguard Worker (Error OPAQUE_FRAME "Attempted to return early from " 2098*e82f7db8SAndroid Build Coastguard Worker "a frame corresponding to a native " 2099*e82f7db8SAndroid Build Coastguard Worker "method. Or the implementation is " 2100*e82f7db8SAndroid Build Coastguard Worker "unable to provide this functionality " 2101*e82f7db8SAndroid Build Coastguard Worker "on this frame.") 2102*e82f7db8SAndroid Build Coastguard Worker (Error NO_MORE_FRAMES) 2103*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 2104*e82f7db8SAndroid Build Coastguard Worker (Error TYPE_MISMATCH "Value is not an appropriate type for the " 2105*e82f7db8SAndroid Build Coastguard Worker "return value of the method.") 2106*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2107*e82f7db8SAndroid Build Coastguard Worker ) 2108*e82f7db8SAndroid Build Coastguard Worker ) 2109*e82f7db8SAndroid Build Coastguard Worker 2110*e82f7db8SAndroid Build Coastguard Worker) 2111*e82f7db8SAndroid Build Coastguard Worker(CommandSet ThreadGroupReference=12 2112*e82f7db8SAndroid Build Coastguard Worker (Command Name=1 2113*e82f7db8SAndroid Build Coastguard Worker "Returns the thread group name. " 2114*e82f7db8SAndroid Build Coastguard Worker (Out 2115*e82f7db8SAndroid Build Coastguard Worker (threadGroupObject group "The thread group object ID. ") 2116*e82f7db8SAndroid Build Coastguard Worker ) 2117*e82f7db8SAndroid Build Coastguard Worker (Reply 2118*e82f7db8SAndroid Build Coastguard Worker (string groupName "The thread group's name.") 2119*e82f7db8SAndroid Build Coastguard Worker ) 2120*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2121*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD_GROUP) 2122*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "group is not a known ID.") 2123*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2124*e82f7db8SAndroid Build Coastguard Worker ) 2125*e82f7db8SAndroid Build Coastguard Worker ) 2126*e82f7db8SAndroid Build Coastguard Worker (Command Parent=2 2127*e82f7db8SAndroid Build Coastguard Worker "Returns the thread group, if any, which contains a given thread group. " 2128*e82f7db8SAndroid Build Coastguard Worker (Out 2129*e82f7db8SAndroid Build Coastguard Worker (threadGroupObject group "The thread group object ID. ") 2130*e82f7db8SAndroid Build Coastguard Worker ) 2131*e82f7db8SAndroid Build Coastguard Worker (Reply 2132*e82f7db8SAndroid Build Coastguard Worker (threadGroupObject parentGroup "The parent thread group object, or " 2133*e82f7db8SAndroid Build Coastguard Worker "null if the given thread group " 2134*e82f7db8SAndroid Build Coastguard Worker "is a top-level thread group") 2135*e82f7db8SAndroid Build Coastguard Worker ) 2136*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2137*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD_GROUP) 2138*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "group is not a known ID.") 2139*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2140*e82f7db8SAndroid Build Coastguard Worker ) 2141*e82f7db8SAndroid Build Coastguard Worker ) 2142*e82f7db8SAndroid Build Coastguard Worker (Command Children=3 2143*e82f7db8SAndroid Build Coastguard Worker "Returns the live threads and active thread groups directly contained " 2144*e82f7db8SAndroid Build Coastguard Worker "in this thread group. Threads and thread groups in child " 2145*e82f7db8SAndroid Build Coastguard Worker "thread groups are not included. " 2146*e82f7db8SAndroid Build Coastguard Worker "A thread is alive if it has been started and has not yet been stopped. " 2147*e82f7db8SAndroid Build Coastguard Worker "See <a href=../../../api/java/lang/ThreadGroup.html>java.lang.ThreadGroup </a> 2148*e82f7db8SAndroid Build Coastguard Worker "for information about active ThreadGroups. 2149*e82f7db8SAndroid Build Coastguard Worker (Out 2150*e82f7db8SAndroid Build Coastguard Worker (threadGroupObject group "The thread group object ID. ") 2151*e82f7db8SAndroid Build Coastguard Worker ) 2152*e82f7db8SAndroid Build Coastguard Worker (Reply 2153*e82f7db8SAndroid Build Coastguard Worker (Repeat childThreads "The number of live child threads. " 2154*e82f7db8SAndroid Build Coastguard Worker (threadObject childThread "A direct child thread ID. ") 2155*e82f7db8SAndroid Build Coastguard Worker ) 2156*e82f7db8SAndroid Build Coastguard Worker (Repeat childGroups "The number of active child thread groups. " 2157*e82f7db8SAndroid Build Coastguard Worker (threadGroupObject childGroup "A direct child thread group ID. ") 2158*e82f7db8SAndroid Build Coastguard Worker ) 2159*e82f7db8SAndroid Build Coastguard Worker ) 2160*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2161*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD_GROUP) 2162*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "group is not a known ID.") 2163*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2164*e82f7db8SAndroid Build Coastguard Worker ) 2165*e82f7db8SAndroid Build Coastguard Worker ) 2166*e82f7db8SAndroid Build Coastguard Worker) 2167*e82f7db8SAndroid Build Coastguard Worker(CommandSet ArrayReference=13 2168*e82f7db8SAndroid Build Coastguard Worker (Command Length=1 2169*e82f7db8SAndroid Build Coastguard Worker "Returns the number of components in a given array. " 2170*e82f7db8SAndroid Build Coastguard Worker (Out 2171*e82f7db8SAndroid Build Coastguard Worker (arrayObject arrayObject "The array object ID. ") 2172*e82f7db8SAndroid Build Coastguard Worker ) 2173*e82f7db8SAndroid Build Coastguard Worker (Reply 2174*e82f7db8SAndroid Build Coastguard Worker (int arrayLength "The length of the array.") 2175*e82f7db8SAndroid Build Coastguard Worker ) 2176*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2177*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "arrayObject is not a known ID.") 2178*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_ARRAY) 2179*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2180*e82f7db8SAndroid Build Coastguard Worker ) 2181*e82f7db8SAndroid Build Coastguard Worker ) 2182*e82f7db8SAndroid Build Coastguard Worker (Command GetValues=2 2183*e82f7db8SAndroid Build Coastguard Worker "Returns a range of array components. The specified range must " 2184*e82f7db8SAndroid Build Coastguard Worker "be within the bounds of the array. " 2185*e82f7db8SAndroid Build Coastguard Worker (Out 2186*e82f7db8SAndroid Build Coastguard Worker (arrayObject arrayObject "The array object ID. ") 2187*e82f7db8SAndroid Build Coastguard Worker (int firstIndex "The first index to retrieve.") 2188*e82f7db8SAndroid Build Coastguard Worker (int length "The number of components to retrieve.") 2189*e82f7db8SAndroid Build Coastguard Worker ) 2190*e82f7db8SAndroid Build Coastguard Worker (Reply 2191*e82f7db8SAndroid Build Coastguard Worker (typed-sequence values "The retrieved values. If the values " 2192*e82f7db8SAndroid Build Coastguard Worker "are objects, they are tagged-values; " 2193*e82f7db8SAndroid Build Coastguard Worker "otherwise, they are untagged-values") 2194*e82f7db8SAndroid Build Coastguard Worker ) 2195*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2196*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_LENGTH "If index is beyond the end of this array.") 2197*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "arrayObject is not a known ID.") 2198*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_ARRAY) 2199*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2200*e82f7db8SAndroid Build Coastguard Worker ) 2201*e82f7db8SAndroid Build Coastguard Worker ) 2202*e82f7db8SAndroid Build Coastguard Worker (Command SetValues=3 2203*e82f7db8SAndroid Build Coastguard Worker "Sets a range of array components. The specified range must " 2204*e82f7db8SAndroid Build Coastguard Worker "be within the bounds of the array. " 2205*e82f7db8SAndroid Build Coastguard Worker "For primitive values, each value's type must match the " 2206*e82f7db8SAndroid Build Coastguard Worker "array component type exactly. For object values, there must be a " 2207*e82f7db8SAndroid Build Coastguard Worker "widening reference conversion from the value's type to the 2208*e82f7db8SAndroid Build Coastguard Worker "array component type and the array component type must be loaded. " 2209*e82f7db8SAndroid Build Coastguard Worker (Out 2210*e82f7db8SAndroid Build Coastguard Worker (arrayObject arrayObject "The array object ID. ") 2211*e82f7db8SAndroid Build Coastguard Worker (int firstIndex "The first index to set.") 2212*e82f7db8SAndroid Build Coastguard Worker (Repeat values "The number of values to set. " 2213*e82f7db8SAndroid Build Coastguard Worker (untagged-value value "A value to set. ") 2214*e82f7db8SAndroid Build Coastguard Worker ) 2215*e82f7db8SAndroid Build Coastguard Worker ) 2216*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 2217*e82f7db8SAndroid Build Coastguard Worker ) 2218*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2219*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_LENGTH "If index is beyond the end of this array.") 2220*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "arrayObject is not a known ID.") 2221*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_ARRAY) 2222*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2223*e82f7db8SAndroid Build Coastguard Worker ) 2224*e82f7db8SAndroid Build Coastguard Worker ) 2225*e82f7db8SAndroid Build Coastguard Worker) 2226*e82f7db8SAndroid Build Coastguard Worker(CommandSet ClassLoaderReference=14 2227*e82f7db8SAndroid Build Coastguard Worker (Command VisibleClasses=1 2228*e82f7db8SAndroid Build Coastguard Worker "Returns a list of all classes which this class loader has " 2229*e82f7db8SAndroid Build Coastguard Worker "been requested to load. This class loader is considered to be " 2230*e82f7db8SAndroid Build Coastguard Worker "an <i>initiating</i> class loader for each class in the returned " 2231*e82f7db8SAndroid Build Coastguard Worker "list. The list contains each " 2232*e82f7db8SAndroid Build Coastguard Worker "reference type defined by this loader and any types for which " 2233*e82f7db8SAndroid Build Coastguard Worker "loading was delegated by this class loader to another class loader. " 2234*e82f7db8SAndroid Build Coastguard Worker "<p>" 2235*e82f7db8SAndroid Build Coastguard Worker "The visible class list has useful properties with respect to " 2236*e82f7db8SAndroid Build Coastguard Worker "the type namespace. A particular type name will occur at most " 2237*e82f7db8SAndroid Build Coastguard Worker "once in the list. Each field or variable declared with that " 2238*e82f7db8SAndroid Build Coastguard Worker "type name in a class defined by " 2239*e82f7db8SAndroid Build Coastguard Worker "this class loader must be resolved to that single type. " 2240*e82f7db8SAndroid Build Coastguard Worker "<p>" 2241*e82f7db8SAndroid Build Coastguard Worker "No ordering of the returned list is guaranteed. " 2242*e82f7db8SAndroid Build Coastguard Worker (Out 2243*e82f7db8SAndroid Build Coastguard Worker (classLoaderObject classLoaderObject "The class loader object ID. ") 2244*e82f7db8SAndroid Build Coastguard Worker ) 2245*e82f7db8SAndroid Build Coastguard Worker (Reply 2246*e82f7db8SAndroid Build Coastguard Worker (Repeat classes "The number of visible classes. " 2247*e82f7db8SAndroid Build Coastguard Worker (Group ClassInfo 2248*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "<a href=\"#JDWP_TypeTag\">Kind</a> " 2249*e82f7db8SAndroid Build Coastguard Worker "of following reference type. ") 2250*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID 2251*e82f7db8SAndroid Build Coastguard Worker "A class visible to this class loader.") 2252*e82f7db8SAndroid Build Coastguard Worker ) 2253*e82f7db8SAndroid Build Coastguard Worker ) 2254*e82f7db8SAndroid Build Coastguard Worker ) 2255*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2256*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 2257*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS_LOADER) 2258*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2259*e82f7db8SAndroid Build Coastguard Worker ) 2260*e82f7db8SAndroid Build Coastguard Worker ) 2261*e82f7db8SAndroid Build Coastguard Worker) 2262*e82f7db8SAndroid Build Coastguard Worker(CommandSet EventRequest=15 2263*e82f7db8SAndroid Build Coastguard Worker (Command Set=1 2264*e82f7db8SAndroid Build Coastguard Worker "Set an event request. When the event described by this request " 2265*e82f7db8SAndroid Build Coastguard Worker "occurs, an <a href=\"#JDWP_Event\">event</a> is sent from the " 2266*e82f7db8SAndroid Build Coastguard Worker "target VM. If an event occurs that has not been requested then it is not sent " 2267*e82f7db8SAndroid Build Coastguard Worker "from the target VM. The two exceptions to this are the VM Start Event and " 2268*e82f7db8SAndroid Build Coastguard Worker "the VM Death Event which are automatically generated events - see " 2269*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_Event_Composite\">Composite Command</a> for further details." 2270*e82f7db8SAndroid Build Coastguard Worker (Out 2271*e82f7db8SAndroid Build Coastguard Worker (byte eventKind "Event kind to request. " 2272*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_EventKind\">JDWP.EventKind</a> " 2273*e82f7db8SAndroid Build Coastguard Worker "for a complete list of events that can be requested; " 2274*e82f7db8SAndroid Build Coastguard Worker "some events may require a capability in order to be requested. " 2275*e82f7db8SAndroid Build Coastguard Worker ) 2276*e82f7db8SAndroid Build Coastguard Worker (byte suspendPolicy 2277*e82f7db8SAndroid Build Coastguard Worker "What threads are suspended when this event occurs? " 2278*e82f7db8SAndroid Build Coastguard Worker "Note that the order of events and command replies " 2279*e82f7db8SAndroid Build Coastguard Worker "accurately reflects the order in which threads are " 2280*e82f7db8SAndroid Build Coastguard Worker "suspended and resumed. For example, if a " 2281*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_Resume\">VM-wide resume</a> " 2282*e82f7db8SAndroid Build Coastguard Worker "is processed before an event occurs which suspends the " 2283*e82f7db8SAndroid Build Coastguard Worker "VM, the reply to the resume command will be written to " 2284*e82f7db8SAndroid Build Coastguard Worker "the transport before the suspending event.") 2285*e82f7db8SAndroid Build Coastguard Worker (Repeat modifiers "Constraints used to control the number " 2286*e82f7db8SAndroid Build Coastguard Worker "of generated events." 2287*e82f7db8SAndroid Build Coastguard Worker "Modifiers specify additional tests that " 2288*e82f7db8SAndroid Build Coastguard Worker "an event must satisfy before it is placed " 2289*e82f7db8SAndroid Build Coastguard Worker "in the event queue. Events are filtered by " 2290*e82f7db8SAndroid Build Coastguard Worker "applying each modifier to an event in the " 2291*e82f7db8SAndroid Build Coastguard Worker "order they are specified in this collection " 2292*e82f7db8SAndroid Build Coastguard Worker "Only events that satisfy all modifiers " 2293*e82f7db8SAndroid Build Coastguard Worker "are reported. A value of 0 means there are no " 2294*e82f7db8SAndroid Build Coastguard Worker "modifiers in the request." 2295*e82f7db8SAndroid Build Coastguard Worker "<p>" 2296*e82f7db8SAndroid Build Coastguard Worker "Filtering can improve " 2297*e82f7db8SAndroid Build Coastguard Worker "debugger performance dramatically by 2298*e82f7db8SAndroid Build Coastguard Worker "reducing the " 2299*e82f7db8SAndroid Build Coastguard Worker "amount of event traffic sent from the " 2300*e82f7db8SAndroid Build Coastguard Worker "target VM to the debugger VM. " 2301*e82f7db8SAndroid Build Coastguard Worker (Select Modifier 2302*e82f7db8SAndroid Build Coastguard Worker (byte modKind "Modifier kind") 2303*e82f7db8SAndroid Build Coastguard Worker (Alt Count=1 2304*e82f7db8SAndroid Build Coastguard Worker "Limit the requested event to be reported at most once after a " 2305*e82f7db8SAndroid Build Coastguard Worker "given number of occurrences. The event is not reported " 2306*e82f7db8SAndroid Build Coastguard Worker "the first <code>count - 1</code> times this filter is reached. " 2307*e82f7db8SAndroid Build Coastguard Worker "To request a one-off event, call this method with a count of 1. " 2308*e82f7db8SAndroid Build Coastguard Worker "<p>" 2309*e82f7db8SAndroid Build Coastguard Worker "Once the count reaches 0, any subsequent filters in this request " 2310*e82f7db8SAndroid Build Coastguard Worker "are applied. If none of those filters cause the event to be " 2311*e82f7db8SAndroid Build Coastguard Worker "suppressed, the event is reported. Otherwise, the event is not " 2312*e82f7db8SAndroid Build Coastguard Worker "reported. In either case subsequent events are never reported for " 2313*e82f7db8SAndroid Build Coastguard Worker "this request. " 2314*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with any event kind." 2315*e82f7db8SAndroid Build Coastguard Worker 2316*e82f7db8SAndroid Build Coastguard Worker (int count "Count before event. One for one-off.") 2317*e82f7db8SAndroid Build Coastguard Worker ) 2318*e82f7db8SAndroid Build Coastguard Worker (Alt Conditional=2 "Conditional on expression" 2319*e82f7db8SAndroid Build Coastguard Worker (int exprID "For the future") 2320*e82f7db8SAndroid Build Coastguard Worker ) 2321*e82f7db8SAndroid Build Coastguard Worker (Alt ThreadOnly=3 2322*e82f7db8SAndroid Build Coastguard Worker "Restricts reported events to " 2323*e82f7db8SAndroid Build Coastguard Worker "those in the given thread. " 2324*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with any event kind " 2325*e82f7db8SAndroid Build Coastguard Worker "except for class unload. " 2326*e82f7db8SAndroid Build Coastguard Worker 2327*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Required thread") 2328*e82f7db8SAndroid Build Coastguard Worker ) 2329*e82f7db8SAndroid Build Coastguard Worker (Alt ClassOnly=4 2330*e82f7db8SAndroid Build Coastguard Worker "For class prepare events, restricts the events " 2331*e82f7db8SAndroid Build Coastguard Worker "generated by this request to be the " 2332*e82f7db8SAndroid Build Coastguard Worker "preparation of the given reference type and any subtypes. " 2333*e82f7db8SAndroid Build Coastguard Worker "For monitor wait and waited events, restricts the events " 2334*e82f7db8SAndroid Build Coastguard Worker "generated by this request to those whose monitor object " 2335*e82f7db8SAndroid Build Coastguard Worker "is of the given reference type or any of its subtypes. " 2336*e82f7db8SAndroid Build Coastguard Worker "For other events, restricts the events generated " 2337*e82f7db8SAndroid Build Coastguard Worker "by this request to those " 2338*e82f7db8SAndroid Build Coastguard Worker "whose location is in the given reference type or any of its subtypes. " 2339*e82f7db8SAndroid Build Coastguard Worker "An event will be generated for any location in a reference type that can " 2340*e82f7db8SAndroid Build Coastguard Worker "be safely cast to the given reference type. " 2341*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with any event kind except " 2342*e82f7db8SAndroid Build Coastguard Worker "class unload, thread start, and thread end. " 2343*e82f7db8SAndroid Build Coastguard Worker 2344*e82f7db8SAndroid Build Coastguard Worker (referenceType clazz "Required class") 2345*e82f7db8SAndroid Build Coastguard Worker ) 2346*e82f7db8SAndroid Build Coastguard Worker (Alt ClassMatch=5 2347*e82f7db8SAndroid Build Coastguard Worker "Restricts reported events to those for classes whose name " 2348*e82f7db8SAndroid Build Coastguard Worker "matches the given restricted regular expression. " 2349*e82f7db8SAndroid Build Coastguard Worker "For class prepare events, the prepared class name " 2350*e82f7db8SAndroid Build Coastguard Worker "is matched. For class unload events, the " 2351*e82f7db8SAndroid Build Coastguard Worker "unloaded class name is matched. For monitor wait " 2352*e82f7db8SAndroid Build Coastguard Worker "and waited events, the name of the class of the " 2353*e82f7db8SAndroid Build Coastguard Worker "monitor object is matched. For other events, " 2354*e82f7db8SAndroid Build Coastguard Worker "the class name of the event's location is matched. " 2355*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with any event kind except " 2356*e82f7db8SAndroid Build Coastguard Worker "thread start and thread end. " 2357*e82f7db8SAndroid Build Coastguard Worker 2358*e82f7db8SAndroid Build Coastguard Worker (string classPattern "Required class pattern. " 2359*e82f7db8SAndroid Build Coastguard Worker "Matches are limited to exact matches of the " 2360*e82f7db8SAndroid Build Coastguard Worker "given class pattern and matches of patterns that " 2361*e82f7db8SAndroid Build Coastguard Worker "begin or end with '*'; for example, " 2362*e82f7db8SAndroid Build Coastguard Worker "\"*.Foo\" or \"java.*\". " 2363*e82f7db8SAndroid Build Coastguard Worker ) 2364*e82f7db8SAndroid Build Coastguard Worker 2365*e82f7db8SAndroid Build Coastguard Worker ) 2366*e82f7db8SAndroid Build Coastguard Worker (Alt ClassExclude=6 2367*e82f7db8SAndroid Build Coastguard Worker "Restricts reported events to those for classes whose name " 2368*e82f7db8SAndroid Build Coastguard Worker "does not match the given restricted regular expression. " 2369*e82f7db8SAndroid Build Coastguard Worker "For class prepare events, the prepared class name " 2370*e82f7db8SAndroid Build Coastguard Worker "is matched. For class unload events, the " 2371*e82f7db8SAndroid Build Coastguard Worker "unloaded class name is matched. For monitor wait and " 2372*e82f7db8SAndroid Build Coastguard Worker "waited events, the name of the class of the monitor " 2373*e82f7db8SAndroid Build Coastguard Worker "object is matched. For other events, " 2374*e82f7db8SAndroid Build Coastguard Worker "the class name of the event's location is matched. " 2375*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with any event kind except " 2376*e82f7db8SAndroid Build Coastguard Worker "thread start and thread end. " 2377*e82f7db8SAndroid Build Coastguard Worker 2378*e82f7db8SAndroid Build Coastguard Worker (string classPattern "Disallowed class pattern. " 2379*e82f7db8SAndroid Build Coastguard Worker "Matches are limited to exact matches of the " 2380*e82f7db8SAndroid Build Coastguard Worker "given class pattern and matches of patterns that " 2381*e82f7db8SAndroid Build Coastguard Worker "begin or end with '*'; for example, " 2382*e82f7db8SAndroid Build Coastguard Worker "\"*.Foo\" or \"java.*\". " 2383*e82f7db8SAndroid Build Coastguard Worker ) 2384*e82f7db8SAndroid Build Coastguard Worker ) 2385*e82f7db8SAndroid Build Coastguard Worker (Alt LocationOnly=7 2386*e82f7db8SAndroid Build Coastguard Worker "Restricts reported events to those that occur at " 2387*e82f7db8SAndroid Build Coastguard Worker "the given location. " 2388*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with " 2389*e82f7db8SAndroid Build Coastguard Worker "breakpoint, field access, field modification, " 2390*e82f7db8SAndroid Build Coastguard Worker "step, and exception event kinds. " 2391*e82f7db8SAndroid Build Coastguard Worker 2392*e82f7db8SAndroid Build Coastguard Worker (location loc "Required location") 2393*e82f7db8SAndroid Build Coastguard Worker ) 2394*e82f7db8SAndroid Build Coastguard Worker (Alt ExceptionOnly=8 2395*e82f7db8SAndroid Build Coastguard Worker "Restricts reported exceptions by their class and " 2396*e82f7db8SAndroid Build Coastguard Worker "whether they are caught or uncaught. " 2397*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with " 2398*e82f7db8SAndroid Build Coastguard Worker "exception event kinds only. " 2399*e82f7db8SAndroid Build Coastguard Worker 2400*e82f7db8SAndroid Build Coastguard Worker (referenceType exceptionOrNull 2401*e82f7db8SAndroid Build Coastguard Worker "Exception to report. Null (0) means report " 2402*e82f7db8SAndroid Build Coastguard Worker "exceptions of all types. " 2403*e82f7db8SAndroid Build Coastguard Worker "A non-null type restricts the reported exception " 2404*e82f7db8SAndroid Build Coastguard Worker "events to exceptions of the given type or " 2405*e82f7db8SAndroid Build Coastguard Worker "any of its subtypes. " 2406*e82f7db8SAndroid Build Coastguard Worker ) 2407*e82f7db8SAndroid Build Coastguard Worker (boolean caught "Report caught exceptions") 2408*e82f7db8SAndroid Build Coastguard Worker (boolean uncaught "Report uncaught exceptions. " 2409*e82f7db8SAndroid Build Coastguard Worker "Note that it " 2410*e82f7db8SAndroid Build Coastguard Worker "is not always possible to determine whether an " 2411*e82f7db8SAndroid Build Coastguard Worker "exception is caught or uncaught at the time it is " 2412*e82f7db8SAndroid Build Coastguard Worker "thrown. See the exception event catch location under " 2413*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_Event_Composite\">composite events</a> " 2414*e82f7db8SAndroid Build Coastguard Worker "for more information. " 2415*e82f7db8SAndroid Build Coastguard Worker ) 2416*e82f7db8SAndroid Build Coastguard Worker 2417*e82f7db8SAndroid Build Coastguard Worker ) 2418*e82f7db8SAndroid Build Coastguard Worker (Alt FieldOnly=9 2419*e82f7db8SAndroid Build Coastguard Worker "Restricts reported events to those that occur for " 2420*e82f7db8SAndroid Build Coastguard Worker "a given field. " 2421*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with " 2422*e82f7db8SAndroid Build Coastguard Worker "field access and field modification event kinds only. " 2423*e82f7db8SAndroid Build Coastguard Worker 2424*e82f7db8SAndroid Build Coastguard Worker (referenceType declaring "Type in which field is declared.") 2425*e82f7db8SAndroid Build Coastguard Worker (field fieldID "Required field") 2426*e82f7db8SAndroid Build Coastguard Worker ) 2427*e82f7db8SAndroid Build Coastguard Worker (Alt Step=10 2428*e82f7db8SAndroid Build Coastguard Worker "Restricts reported step events " 2429*e82f7db8SAndroid Build Coastguard Worker "to those which satisfy " 2430*e82f7db8SAndroid Build Coastguard Worker "depth and size constraints. " 2431*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with " 2432*e82f7db8SAndroid Build Coastguard Worker "step event kinds only. " 2433*e82f7db8SAndroid Build Coastguard Worker 2434*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread in which to step") 2435*e82f7db8SAndroid Build Coastguard Worker (int size "size of each step. " 2436*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_StepSize\">JDWP.StepSize</a>") 2437*e82f7db8SAndroid Build Coastguard Worker (int depth "relative call stack limit. " 2438*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_StepDepth\">JDWP.StepDepth</a>") 2439*e82f7db8SAndroid Build Coastguard Worker ) 2440*e82f7db8SAndroid Build Coastguard Worker (Alt InstanceOnly=11 2441*e82f7db8SAndroid Build Coastguard Worker "Restricts reported events to those whose " 2442*e82f7db8SAndroid Build Coastguard Worker "active 'this' object is the given object. " 2443*e82f7db8SAndroid Build Coastguard Worker "Match value is the null object for static methods. " 2444*e82f7db8SAndroid Build Coastguard Worker "This modifier can be used with any event kind " 2445*e82f7db8SAndroid Build Coastguard Worker "except class prepare, class unload, thread start, " 2446*e82f7db8SAndroid Build Coastguard Worker "and thread end. Introduced in JDWP version 1.4." 2447*e82f7db8SAndroid Build Coastguard Worker 2448*e82f7db8SAndroid Build Coastguard Worker (object instance "Required 'this' object") 2449*e82f7db8SAndroid Build Coastguard Worker ) 2450*e82f7db8SAndroid Build Coastguard Worker (Alt SourceNameMatch=12 2451*e82f7db8SAndroid Build Coastguard Worker "Restricts reported class prepare events to those " 2452*e82f7db8SAndroid Build Coastguard Worker "for reference types which have a source name " 2453*e82f7db8SAndroid Build Coastguard Worker "which matches the given restricted regular expression. " 2454*e82f7db8SAndroid Build Coastguard Worker "The source names are determined by the reference type's " 2455*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_ReferenceType_SourceDebugExtension\"> " 2456*e82f7db8SAndroid Build Coastguard Worker "SourceDebugExtension</a>. " 2457*e82f7db8SAndroid Build Coastguard Worker "This modifier can only be used with class prepare " 2458*e82f7db8SAndroid Build Coastguard Worker "events. " 2459*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.6. Requires the canUseSourceNameFilters " 2460*e82f7db8SAndroid Build Coastguard Worker "capability - see " 2461*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 2462*e82f7db8SAndroid Build Coastguard Worker 2463*e82f7db8SAndroid Build Coastguard Worker (string sourceNamePattern "Required source name pattern. " 2464*e82f7db8SAndroid Build Coastguard Worker "Matches are limited to exact matches of the " 2465*e82f7db8SAndroid Build Coastguard Worker "given pattern and matches of patterns that " 2466*e82f7db8SAndroid Build Coastguard Worker "begin or end with '*'; for example, " 2467*e82f7db8SAndroid Build Coastguard Worker "\"*.Foo\" or \"java.*\". " 2468*e82f7db8SAndroid Build Coastguard Worker ) 2469*e82f7db8SAndroid Build Coastguard Worker ) 2470*e82f7db8SAndroid Build Coastguard Worker 2471*e82f7db8SAndroid Build Coastguard Worker ) 2472*e82f7db8SAndroid Build Coastguard Worker ) 2473*e82f7db8SAndroid Build Coastguard Worker ) 2474*e82f7db8SAndroid Build Coastguard Worker (Reply 2475*e82f7db8SAndroid Build Coastguard Worker (int requestID "ID of created request") 2476*e82f7db8SAndroid Build Coastguard Worker ) 2477*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2478*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 2479*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_CLASS) 2480*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_STRING) 2481*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 2482*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_COUNT) 2483*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FIELDID) 2484*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_METHODID) 2485*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_LOCATION) 2486*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_EVENT_TYPE) 2487*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 2488*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2489*e82f7db8SAndroid Build Coastguard Worker ) 2490*e82f7db8SAndroid Build Coastguard Worker ) 2491*e82f7db8SAndroid Build Coastguard Worker (Command Clear=2 2492*e82f7db8SAndroid Build Coastguard Worker "Clear an event request. See <a href=\"#JDWP_EventKind\">JDWP.EventKind</a> " 2493*e82f7db8SAndroid Build Coastguard Worker "for a complete list of events that can be cleared. Only the event request matching " 2494*e82f7db8SAndroid Build Coastguard Worker "the specified event kind and requestID is cleared. If there isn't a matching event " 2495*e82f7db8SAndroid Build Coastguard Worker "request the command is a no-op and does not result in an error. Automatically " 2496*e82f7db8SAndroid Build Coastguard Worker "generated events do not have a corresponding event request and may not be cleared " 2497*e82f7db8SAndroid Build Coastguard Worker "using this command." 2498*e82f7db8SAndroid Build Coastguard Worker (Out 2499*e82f7db8SAndroid Build Coastguard Worker (byte eventKind "Event kind to clear") 2500*e82f7db8SAndroid Build Coastguard Worker (int requestID "ID of request to clear") 2501*e82f7db8SAndroid Build Coastguard Worker ) 2502*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 2503*e82f7db8SAndroid Build Coastguard Worker ) 2504*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2505*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2506*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_EVENT_TYPE) 2507*e82f7db8SAndroid Build Coastguard Worker ) 2508*e82f7db8SAndroid Build Coastguard Worker ) 2509*e82f7db8SAndroid Build Coastguard Worker (Command ClearAllBreakpoints=3 2510*e82f7db8SAndroid Build Coastguard Worker "Removes all set breakpoints, a no-op if there are no breakpoints set." 2511*e82f7db8SAndroid Build Coastguard Worker (Out "none" 2512*e82f7db8SAndroid Build Coastguard Worker ) 2513*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 2514*e82f7db8SAndroid Build Coastguard Worker ) 2515*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2516*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2517*e82f7db8SAndroid Build Coastguard Worker ) 2518*e82f7db8SAndroid Build Coastguard Worker ) 2519*e82f7db8SAndroid Build Coastguard Worker) 2520*e82f7db8SAndroid Build Coastguard Worker(CommandSet StackFrame=16 2521*e82f7db8SAndroid Build Coastguard Worker (Command GetValues=1 2522*e82f7db8SAndroid Build Coastguard Worker "Returns the value of one or more local variables in a " 2523*e82f7db8SAndroid Build Coastguard Worker "given frame. Each variable must be visible at the frame's code index. " 2524*e82f7db8SAndroid Build Coastguard Worker "Even if local variable information is not available, values can " 2525*e82f7db8SAndroid Build Coastguard Worker "be retrieved if the front-end is able to " 2526*e82f7db8SAndroid Build Coastguard Worker "determine the correct local variable index. (Typically, this " 2527*e82f7db8SAndroid Build Coastguard Worker "index can be determined for method arguments from the method " 2528*e82f7db8SAndroid Build Coastguard Worker "signature without access to the local variable table information.) " 2529*e82f7db8SAndroid Build Coastguard Worker (Out 2530*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The frame's thread. ") 2531*e82f7db8SAndroid Build Coastguard Worker (frame frame "The frame ID. ") 2532*e82f7db8SAndroid Build Coastguard Worker (Repeat slots "The number of values to get. " 2533*e82f7db8SAndroid Build Coastguard Worker (Group SlotInfo 2534*e82f7db8SAndroid Build Coastguard Worker (int slot "The local variable's index in the frame. ") 2535*e82f7db8SAndroid Build Coastguard Worker (byte sigbyte "A <a href=\"#JDWP_Tag\">tag</a> " 2536*e82f7db8SAndroid Build Coastguard Worker "identifying the type of the variable ") 2537*e82f7db8SAndroid Build Coastguard Worker ) 2538*e82f7db8SAndroid Build Coastguard Worker ) 2539*e82f7db8SAndroid Build Coastguard Worker ) 2540*e82f7db8SAndroid Build Coastguard Worker (Reply 2541*e82f7db8SAndroid Build Coastguard Worker (Repeat values "The number of values retrieved, always equal to slots, " 2542*e82f7db8SAndroid Build Coastguard Worker "the number of values to get." 2543*e82f7db8SAndroid Build Coastguard Worker (value slotValue "The value of the local variable. ") 2544*e82f7db8SAndroid Build Coastguard Worker ) 2545*e82f7db8SAndroid Build Coastguard Worker ) 2546*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2547*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 2548*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 2549*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FRAMEID) 2550*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_SLOT) 2551*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2552*e82f7db8SAndroid Build Coastguard Worker ) 2553*e82f7db8SAndroid Build Coastguard Worker ) 2554*e82f7db8SAndroid Build Coastguard Worker (Command SetValues=2 2555*e82f7db8SAndroid Build Coastguard Worker "Sets the value of one or more local variables. " 2556*e82f7db8SAndroid Build Coastguard Worker "Each variable must be visible at the current frame code index. " 2557*e82f7db8SAndroid Build Coastguard Worker "For primitive values, the value's type must match the " 2558*e82f7db8SAndroid Build Coastguard Worker "variable's type exactly. For object values, there must be a " 2559*e82f7db8SAndroid Build Coastguard Worker "widening reference conversion from the value's type to the 2560*e82f7db8SAndroid Build Coastguard Worker "variable's type and the variable's type must be loaded. " 2561*e82f7db8SAndroid Build Coastguard Worker "<p>" 2562*e82f7db8SAndroid Build Coastguard Worker "Even if local variable information is not available, values can " 2563*e82f7db8SAndroid Build Coastguard Worker "be set, if the front-end is able to " 2564*e82f7db8SAndroid Build Coastguard Worker "determine the correct local variable index. (Typically, this 2565*e82f7db8SAndroid Build Coastguard Worker "index can be determined for method arguments from the method " 2566*e82f7db8SAndroid Build Coastguard Worker "signature without access to the local variable table information.) " 2567*e82f7db8SAndroid Build Coastguard Worker (Out 2568*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The frame's thread. ") 2569*e82f7db8SAndroid Build Coastguard Worker (frame frame "The frame ID. ") 2570*e82f7db8SAndroid Build Coastguard Worker (Repeat slotValues "The number of values to set. " 2571*e82f7db8SAndroid Build Coastguard Worker (Group SlotInfo 2572*e82f7db8SAndroid Build Coastguard Worker (int slot "The slot ID. ") 2573*e82f7db8SAndroid Build Coastguard Worker (value slotValue "The value to set. ") 2574*e82f7db8SAndroid Build Coastguard Worker ) 2575*e82f7db8SAndroid Build Coastguard Worker ) 2576*e82f7db8SAndroid Build Coastguard Worker ) 2577*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 2578*e82f7db8SAndroid Build Coastguard Worker ) 2579*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2580*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 2581*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 2582*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FRAMEID) 2583*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2584*e82f7db8SAndroid Build Coastguard Worker ) 2585*e82f7db8SAndroid Build Coastguard Worker ) 2586*e82f7db8SAndroid Build Coastguard Worker (Command ThisObject=3 2587*e82f7db8SAndroid Build Coastguard Worker "Returns the value of the 'this' reference for this frame. " 2588*e82f7db8SAndroid Build Coastguard Worker "If the frame's method is static or native, the reply " 2589*e82f7db8SAndroid Build Coastguard Worker "will contain the null object reference. " 2590*e82f7db8SAndroid Build Coastguard Worker (Out 2591*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The frame's thread. ") 2592*e82f7db8SAndroid Build Coastguard Worker (frame frame "The frame ID. ") 2593*e82f7db8SAndroid Build Coastguard Worker ) 2594*e82f7db8SAndroid Build Coastguard Worker (Reply 2595*e82f7db8SAndroid Build Coastguard Worker (tagged-object objectThis "The 'this' object for this frame. ") 2596*e82f7db8SAndroid Build Coastguard Worker ) 2597*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2598*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 2599*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 2600*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FRAMEID) 2601*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2602*e82f7db8SAndroid Build Coastguard Worker ) 2603*e82f7db8SAndroid Build Coastguard Worker ) 2604*e82f7db8SAndroid Build Coastguard Worker (Command PopFrames=4 2605*e82f7db8SAndroid Build Coastguard Worker "Pop the top-most stack frames of the thread stack, up to, and including 'frame'. " 2606*e82f7db8SAndroid Build Coastguard Worker "The thread must be suspended to perform this command. " 2607*e82f7db8SAndroid Build Coastguard Worker "The top-most stack frames are discarded and the stack frame previous to 'frame' " 2608*e82f7db8SAndroid Build Coastguard Worker "becomes the current frame. The operand stack is restored -- the argument values " 2609*e82f7db8SAndroid Build Coastguard Worker "are added back and if the invoke was not <code>invokestatic</code>, " 2610*e82f7db8SAndroid Build Coastguard Worker "<code>objectref</code> is added back as well. The Java virtual machine " 2611*e82f7db8SAndroid Build Coastguard Worker "program counter is restored to the opcode of the invoke instruction." 2612*e82f7db8SAndroid Build Coastguard Worker "<p>" 2613*e82f7db8SAndroid Build Coastguard Worker "Since JDWP version 1.4. Requires canPopFrames capability - see " 2614*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 2615*e82f7db8SAndroid Build Coastguard Worker (Out 2616*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "The thread object ID. ") 2617*e82f7db8SAndroid Build Coastguard Worker (frame frame "The frame ID. ") 2618*e82f7db8SAndroid Build Coastguard Worker ) 2619*e82f7db8SAndroid Build Coastguard Worker (Reply "none" 2620*e82f7db8SAndroid Build Coastguard Worker ) 2621*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2622*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_THREAD) 2623*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT "thread is not a known ID.") 2624*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FRAMEID) 2625*e82f7db8SAndroid Build Coastguard Worker (Error THREAD_NOT_SUSPENDED) 2626*e82f7db8SAndroid Build Coastguard Worker (Error NO_MORE_FRAMES) 2627*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_FRAMEID) 2628*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED) 2629*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2630*e82f7db8SAndroid Build Coastguard Worker ) 2631*e82f7db8SAndroid Build Coastguard Worker ) 2632*e82f7db8SAndroid Build Coastguard Worker) 2633*e82f7db8SAndroid Build Coastguard Worker(CommandSet ClassObjectReference=17 2634*e82f7db8SAndroid Build Coastguard Worker (Command ReflectedType = 1 2635*e82f7db8SAndroid Build Coastguard Worker "Returns the reference type reflected by this class object." 2636*e82f7db8SAndroid Build Coastguard Worker (Out 2637*e82f7db8SAndroid Build Coastguard Worker (classObject classObject "The class object. ") 2638*e82f7db8SAndroid Build Coastguard Worker ) 2639*e82f7db8SAndroid Build Coastguard Worker (Reply 2640*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "<a href=\"#JDWP_TypeTag\">Kind</a> " 2641*e82f7db8SAndroid Build Coastguard Worker "of following reference type. ") 2642*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID "reflected reference type") 2643*e82f7db8SAndroid Build Coastguard Worker ) 2644*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 2645*e82f7db8SAndroid Build Coastguard Worker (Error INVALID_OBJECT) 2646*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 2647*e82f7db8SAndroid Build Coastguard Worker ) 2648*e82f7db8SAndroid Build Coastguard Worker ) 2649*e82f7db8SAndroid Build Coastguard Worker) 2650*e82f7db8SAndroid Build Coastguard Worker(CommandSet Event=64 2651*e82f7db8SAndroid Build Coastguard Worker (Command Composite=100 2652*e82f7db8SAndroid Build Coastguard Worker "Several events may occur at a given time in the target VM. " 2653*e82f7db8SAndroid Build Coastguard Worker "For example, there may be more than one breakpoint request " 2654*e82f7db8SAndroid Build Coastguard Worker "for a given location " 2655*e82f7db8SAndroid Build Coastguard Worker "or you might single step to the same location as a " 2656*e82f7db8SAndroid Build Coastguard Worker "breakpoint request. These events are delivered " 2657*e82f7db8SAndroid Build Coastguard Worker "together as a composite event. For uniformity, a " 2658*e82f7db8SAndroid Build Coastguard Worker "composite event is always used " 2659*e82f7db8SAndroid Build Coastguard Worker "to deliver events, even if there is only one event to report. " 2660*e82f7db8SAndroid Build Coastguard Worker "<P>" 2661*e82f7db8SAndroid Build Coastguard Worker "The events that are grouped in a composite event are restricted in the " 2662*e82f7db8SAndroid Build Coastguard Worker "following ways: " 2663*e82f7db8SAndroid Build Coastguard Worker "<P>" 2664*e82f7db8SAndroid Build Coastguard Worker "<UL>" 2665*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other thread start events for the same thread:" 2666*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2667*e82f7db8SAndroid Build Coastguard Worker " <LI>Thread Start Event" 2668*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2669*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other thread death events for the same thread:" 2670*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2671*e82f7db8SAndroid Build Coastguard Worker " <LI>Thread Death Event" 2672*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2673*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other class prepare events for the same class:" 2674*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2675*e82f7db8SAndroid Build Coastguard Worker " <LI>Class Prepare Event" 2676*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2677*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other class unload events for the same class:" 2678*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2679*e82f7db8SAndroid Build Coastguard Worker " <LI>Class Unload Event" 2680*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2681*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other access watchpoint events for the same field access:" 2682*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2683*e82f7db8SAndroid Build Coastguard Worker " <LI>Access Watchpoint Event" 2684*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2685*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other modification watchpoint events for the same field " 2686*e82f7db8SAndroid Build Coastguard Worker "modification:" 2687*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2688*e82f7db8SAndroid Build Coastguard Worker " <LI>Modification Watchpoint Event" 2689*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2690*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other Monitor contended enter events for the same monitor object: " 2691*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2692*e82f7db8SAndroid Build Coastguard Worker " <LI>Monitor Contended Enter Event" 2693*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2694*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other Monitor contended entered events for the same monitor object: " 2695*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2696*e82f7db8SAndroid Build Coastguard Worker " <LI>Monitor Contended Entered Event" 2697*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2698*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other Monitor wait events for the same monitor object: " 2699*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2700*e82f7db8SAndroid Build Coastguard Worker " <LI>Monitor Wait Event" 2701*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2702*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other Monitor waited events for the same monitor object: " 2703*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2704*e82f7db8SAndroid Build Coastguard Worker " <LI>Monitor Waited Event" 2705*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2706*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other ExceptionEvents for the same exception occurrance:" 2707*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2708*e82f7db8SAndroid Build Coastguard Worker " <LI>ExceptionEvent" 2709*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2710*e82f7db8SAndroid Build Coastguard Worker "<LI>Only with other members of this group, at the same location " 2711*e82f7db8SAndroid Build Coastguard Worker "and in the same thread: " 2712*e82f7db8SAndroid Build Coastguard Worker " <UL>" 2713*e82f7db8SAndroid Build Coastguard Worker " <LI>Breakpoint Event" 2714*e82f7db8SAndroid Build Coastguard Worker " <LI>Step Event" 2715*e82f7db8SAndroid Build Coastguard Worker " <LI>Method Entry Event" 2716*e82f7db8SAndroid Build Coastguard Worker " <LI>Method Exit Event" 2717*e82f7db8SAndroid Build Coastguard Worker " </UL>" 2718*e82f7db8SAndroid Build Coastguard Worker "</UL>" 2719*e82f7db8SAndroid Build Coastguard Worker "<P>" 2720*e82f7db8SAndroid Build Coastguard Worker "The VM Start Event and VM Death Event are automatically generated events. " 2721*e82f7db8SAndroid Build Coastguard Worker "This means they do not need to be requested using the " 2722*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_EventRequest_Set\">EventRequest.Set</a> command. " 2723*e82f7db8SAndroid Build Coastguard Worker "The VM Start event signals the completion of VM initialization. The VM Death " 2724*e82f7db8SAndroid Build Coastguard Worker "event signals the termination of the VM." 2725*e82f7db8SAndroid Build Coastguard Worker "If there is a debugger connected at the time when an automatically generated " 2726*e82f7db8SAndroid Build Coastguard Worker "event occurs it is sent from the target VM. Automatically generated events may " 2727*e82f7db8SAndroid Build Coastguard Worker "also be requested using the EventRequest.Set command and thus multiple events " 2728*e82f7db8SAndroid Build Coastguard Worker "of the same event kind will be sent from the target VM when an event occurs." 2729*e82f7db8SAndroid Build Coastguard Worker "Automatically generated events are sent with the requestID field " 2730*e82f7db8SAndroid Build Coastguard Worker "in the Event Data set to 0. The value of the suspendPolicy field in the " 2731*e82f7db8SAndroid Build Coastguard Worker "Event Data depends on the event. For the automatically generated VM Start " 2732*e82f7db8SAndroid Build Coastguard Worker "Event the value of suspendPolicy is not defined and is therefore implementation " 2733*e82f7db8SAndroid Build Coastguard Worker "or configuration specific. In the Sun implementation, for example, the " 2734*e82f7db8SAndroid Build Coastguard Worker "suspendPolicy is specified as an option to the JDWP agent at launch-time." 2735*e82f7db8SAndroid Build Coastguard Worker "The automatically generated VM Death Event will have the suspendPolicy set to " 2736*e82f7db8SAndroid Build Coastguard Worker "NONE." 2737*e82f7db8SAndroid Build Coastguard Worker 2738*e82f7db8SAndroid Build Coastguard Worker (Event "Generated event" 2739*e82f7db8SAndroid Build Coastguard Worker (byte suspendPolicy 2740*e82f7db8SAndroid Build Coastguard Worker "Which threads where suspended by this composite event?") 2741*e82f7db8SAndroid Build Coastguard Worker (Repeat events "Events in set." 2742*e82f7db8SAndroid Build Coastguard Worker (Select Events 2743*e82f7db8SAndroid Build Coastguard Worker (byte eventKind "Event kind selector") 2744*e82f7db8SAndroid Build Coastguard Worker (Alt VMStart=JDWP.EventKind.VM_START 2745*e82f7db8SAndroid Build Coastguard Worker "Notification of initialization of a target VM. This event is " 2746*e82f7db8SAndroid Build Coastguard Worker "received before the main thread is started and before any " 2747*e82f7db8SAndroid Build Coastguard Worker "application code has been executed. Before this event occurs " 2748*e82f7db8SAndroid Build Coastguard Worker "a significant amount of system code has executed and a number " 2749*e82f7db8SAndroid Build Coastguard Worker "of system classes have been loaded. " 2750*e82f7db8SAndroid Build Coastguard Worker "This event is always generated by the target VM, even " 2751*e82f7db8SAndroid Build Coastguard Worker "if not explicitly requested." 2752*e82f7db8SAndroid Build Coastguard Worker 2753*e82f7db8SAndroid Build Coastguard Worker (int requestID 2754*e82f7db8SAndroid Build Coastguard Worker "Request that generated event (or 0 if this " 2755*e82f7db8SAndroid Build Coastguard Worker "event is automatically generated.") 2756*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Initial thread") 2757*e82f7db8SAndroid Build Coastguard Worker ) 2758*e82f7db8SAndroid Build Coastguard Worker (Alt SingleStep=JDWP.EventKind.SINGLE_STEP 2759*e82f7db8SAndroid Build Coastguard Worker "Notification of step completion in the target VM. The step event " 2760*e82f7db8SAndroid Build Coastguard Worker "is generated before the code at its location is executed. " 2761*e82f7db8SAndroid Build Coastguard Worker 2762*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2763*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Stepped thread") 2764*e82f7db8SAndroid Build Coastguard Worker (location location "Location stepped to") 2765*e82f7db8SAndroid Build Coastguard Worker ) 2766*e82f7db8SAndroid Build Coastguard Worker (Alt Breakpoint=JDWP.EventKind.BREAKPOINT 2767*e82f7db8SAndroid Build Coastguard Worker "Notification of a breakpoint in the target VM. The breakpoint event " 2768*e82f7db8SAndroid Build Coastguard Worker "is generated before the code at its location is executed. " 2769*e82f7db8SAndroid Build Coastguard Worker 2770*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2771*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread which hit breakpoint") 2772*e82f7db8SAndroid Build Coastguard Worker (location location "Location hit") 2773*e82f7db8SAndroid Build Coastguard Worker ) 2774*e82f7db8SAndroid Build Coastguard Worker (Alt MethodEntry=JDWP.EventKind.METHOD_ENTRY 2775*e82f7db8SAndroid Build Coastguard Worker "Notification of a method invocation in the target VM. This event " 2776*e82f7db8SAndroid Build Coastguard Worker "is generated before any code in the invoked method has executed. " 2777*e82f7db8SAndroid Build Coastguard Worker "Method entry events are generated for both native and non-native " 2778*e82f7db8SAndroid Build Coastguard Worker "methods. " 2779*e82f7db8SAndroid Build Coastguard Worker "<P>" 2780*e82f7db8SAndroid Build Coastguard Worker "In some VMs method entry events can occur for a particular thread " 2781*e82f7db8SAndroid Build Coastguard Worker "before its thread start event occurs if methods are called " 2782*e82f7db8SAndroid Build Coastguard Worker "as part of the thread's initialization. " 2783*e82f7db8SAndroid Build Coastguard Worker 2784*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2785*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread which entered method") 2786*e82f7db8SAndroid Build Coastguard Worker (location location "The initial executable location in the method.") 2787*e82f7db8SAndroid Build Coastguard Worker ) 2788*e82f7db8SAndroid Build Coastguard Worker (Alt MethodExit=JDWP.EventKind.METHOD_EXIT 2789*e82f7db8SAndroid Build Coastguard Worker "Notification of a method return in the target VM. This event " 2790*e82f7db8SAndroid Build Coastguard Worker "is generated after all code in the method has executed, but the " 2791*e82f7db8SAndroid Build Coastguard Worker "location of this event is the last executed location in the method. " 2792*e82f7db8SAndroid Build Coastguard Worker "Method exit events are generated for both native and non-native " 2793*e82f7db8SAndroid Build Coastguard Worker "methods. Method exit events are not generated if the method terminates " 2794*e82f7db8SAndroid Build Coastguard Worker "with a thrown exception. " 2795*e82f7db8SAndroid Build Coastguard Worker 2796*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2797*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread which exited method") 2798*e82f7db8SAndroid Build Coastguard Worker (location location "Location of exit") 2799*e82f7db8SAndroid Build Coastguard Worker ) 2800*e82f7db8SAndroid Build Coastguard Worker (Alt MethodExitWithReturnValue=JDWP.EventKind.METHOD_EXIT_WITH_RETURN_VALUE 2801*e82f7db8SAndroid Build Coastguard Worker "Notification of a method return in the target VM. This event " 2802*e82f7db8SAndroid Build Coastguard Worker "is generated after all code in the method has executed, but the " 2803*e82f7db8SAndroid Build Coastguard Worker "location of this event is the last executed location in the method. " 2804*e82f7db8SAndroid Build Coastguard Worker "Method exit events are generated for both native and non-native " 2805*e82f7db8SAndroid Build Coastguard Worker "methods. Method exit events are not generated if the method terminates " 2806*e82f7db8SAndroid Build Coastguard Worker "with a thrown exception. <p>Since JDWP version 1.6. " 2807*e82f7db8SAndroid Build Coastguard Worker 2808*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2809*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread which exited method") 2810*e82f7db8SAndroid Build Coastguard Worker (location location "Location of exit") 2811*e82f7db8SAndroid Build Coastguard Worker (value value "Value that will be returned by the method") 2812*e82f7db8SAndroid Build Coastguard Worker ) 2813*e82f7db8SAndroid Build Coastguard Worker (Alt MonitorContendedEnter=JDWP.EventKind.MONITOR_CONTENDED_ENTER 2814*e82f7db8SAndroid Build Coastguard Worker "Notification that a thread in the target VM is attempting " 2815*e82f7db8SAndroid Build Coastguard Worker "to enter a monitor that is already acquired by another thread. " 2816*e82f7db8SAndroid Build Coastguard Worker "Requires canRequestMonitorEvents capability - see " 2817*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. " 2818*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. " 2819*e82f7db8SAndroid Build Coastguard Worker 2820*e82f7db8SAndroid Build Coastguard Worker (int requestID 2821*e82f7db8SAndroid Build Coastguard Worker "Request that generated event") 2822*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread which is trying to enter the monitor") 2823*e82f7db8SAndroid Build Coastguard Worker (tagged-object object "Monitor object reference") 2824*e82f7db8SAndroid Build Coastguard Worker (location location "Location of contended monitor enter") 2825*e82f7db8SAndroid Build Coastguard Worker ) 2826*e82f7db8SAndroid Build Coastguard Worker (Alt MonitorContendedEntered=JDWP.EventKind.MONITOR_CONTENDED_ENTERED 2827*e82f7db8SAndroid Build Coastguard Worker "Notification of a thread in the target VM is entering a monitor " 2828*e82f7db8SAndroid Build Coastguard Worker "after waiting for it to be released by another thread. " 2829*e82f7db8SAndroid Build Coastguard Worker "Requires canRequestMonitorEvents capability - see " 2830*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. " 2831*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. " 2832*e82f7db8SAndroid Build Coastguard Worker 2833*e82f7db8SAndroid Build Coastguard Worker (int requestID 2834*e82f7db8SAndroid Build Coastguard Worker "Request that generated event") 2835*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread which entered monitor") 2836*e82f7db8SAndroid Build Coastguard Worker (tagged-object object "Monitor object reference") 2837*e82f7db8SAndroid Build Coastguard Worker (location location "Location of contended monitor enter") 2838*e82f7db8SAndroid Build Coastguard Worker ) 2839*e82f7db8SAndroid Build Coastguard Worker (Alt MonitorWait=JDWP.EventKind.MONITOR_WAIT 2840*e82f7db8SAndroid Build Coastguard Worker "Notification of a thread about to wait on a monitor object. " 2841*e82f7db8SAndroid Build Coastguard Worker "Requires canRequestMonitorEvents capability - see " 2842*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. " 2843*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. " 2844*e82f7db8SAndroid Build Coastguard Worker 2845*e82f7db8SAndroid Build Coastguard Worker (int requestID 2846*e82f7db8SAndroid Build Coastguard Worker "Request that generated event") 2847*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread which is about to wait") 2848*e82f7db8SAndroid Build Coastguard Worker (tagged-object object "Monitor object reference") 2849*e82f7db8SAndroid Build Coastguard Worker (location location "Location at which the wait will occur") 2850*e82f7db8SAndroid Build Coastguard Worker (long timeout "Thread wait time in milliseconds") 2851*e82f7db8SAndroid Build Coastguard Worker ) 2852*e82f7db8SAndroid Build Coastguard Worker (Alt MonitorWaited=JDWP.EventKind.MONITOR_WAITED 2853*e82f7db8SAndroid Build Coastguard Worker "Notification that a thread in the target VM has finished waiting on " 2854*e82f7db8SAndroid Build Coastguard Worker "Requires canRequestMonitorEvents capability - see " 2855*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. " 2856*e82f7db8SAndroid Build Coastguard Worker "a monitor object. " 2857*e82f7db8SAndroid Build Coastguard Worker "<p>Since JDWP version 1.6. " 2858*e82f7db8SAndroid Build Coastguard Worker 2859*e82f7db8SAndroid Build Coastguard Worker (int requestID 2860*e82f7db8SAndroid Build Coastguard Worker "Request that generated event") 2861*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread which waited") 2862*e82f7db8SAndroid Build Coastguard Worker (tagged-object object "Monitor object reference") 2863*e82f7db8SAndroid Build Coastguard Worker (location location "Location at which the wait occured") 2864*e82f7db8SAndroid Build Coastguard Worker (boolean timed_out "True if timed out") 2865*e82f7db8SAndroid Build Coastguard Worker ) 2866*e82f7db8SAndroid Build Coastguard Worker (Alt Exception=JDWP.EventKind.EXCEPTION 2867*e82f7db8SAndroid Build Coastguard Worker "Notification of an exception in the target VM. " 2868*e82f7db8SAndroid Build Coastguard Worker "If the exception is thrown from a non-native method, " 2869*e82f7db8SAndroid Build Coastguard Worker "the exception event is generated at the location where the " 2870*e82f7db8SAndroid Build Coastguard Worker "exception is thrown. " 2871*e82f7db8SAndroid Build Coastguard Worker "If the exception is thrown from a native method, the exception event " 2872*e82f7db8SAndroid Build Coastguard Worker "is generated at the first non-native location reached after the exception " 2873*e82f7db8SAndroid Build Coastguard Worker "is thrown. " 2874*e82f7db8SAndroid Build Coastguard Worker 2875*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2876*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Thread with exception") 2877*e82f7db8SAndroid Build Coastguard Worker (location location "Location of exception throw " 2878*e82f7db8SAndroid Build Coastguard Worker "(or first non-native location after throw if thrown from a native method)") 2879*e82f7db8SAndroid Build Coastguard Worker (tagged-object exception "Thrown exception") 2880*e82f7db8SAndroid Build Coastguard Worker (location catchLocation 2881*e82f7db8SAndroid Build Coastguard Worker "Location of catch, or 0 if not caught. An exception " 2882*e82f7db8SAndroid Build Coastguard Worker "is considered to be caught if, at the point of the throw, the " 2883*e82f7db8SAndroid Build Coastguard Worker "current location is dynamically enclosed in a try statement that " 2884*e82f7db8SAndroid Build Coastguard Worker "handles the exception. (See the JVM specification for details). " 2885*e82f7db8SAndroid Build Coastguard Worker "If there is such a try statement, the catch location is the " 2886*e82f7db8SAndroid Build Coastguard Worker "first location in the appropriate catch clause. " 2887*e82f7db8SAndroid Build Coastguard Worker "<p>" 2888*e82f7db8SAndroid Build Coastguard Worker "If there are native methods in the call stack at the time of the " 2889*e82f7db8SAndroid Build Coastguard Worker "exception, there are important restrictions to note about the " 2890*e82f7db8SAndroid Build Coastguard Worker "returned catch location. In such cases, " 2891*e82f7db8SAndroid Build Coastguard Worker "it is not possible to predict whether an exception will be handled " 2892*e82f7db8SAndroid Build Coastguard Worker "by some native method on the call stack. " 2893*e82f7db8SAndroid Build Coastguard Worker "Thus, it is possible that exceptions considered uncaught " 2894*e82f7db8SAndroid Build Coastguard Worker "here will, in fact, be handled by a native method and not cause " 2895*e82f7db8SAndroid Build Coastguard Worker "termination of the target VM. Furthermore, it cannot be assumed that the " 2896*e82f7db8SAndroid Build Coastguard Worker "catch location returned here will ever be reached by the throwing " 2897*e82f7db8SAndroid Build Coastguard Worker "thread. If there is " 2898*e82f7db8SAndroid Build Coastguard Worker "a native frame between the current location and the catch location, " 2899*e82f7db8SAndroid Build Coastguard Worker "the exception might be handled and cleared in that native method " 2900*e82f7db8SAndroid Build Coastguard Worker "instead. " 2901*e82f7db8SAndroid Build Coastguard Worker "<p>" 2902*e82f7db8SAndroid Build Coastguard Worker "Note that compilers can generate try-catch blocks in some cases " 2903*e82f7db8SAndroid Build Coastguard Worker "where they are not explicit in the source code; for example, " 2904*e82f7db8SAndroid Build Coastguard Worker "the code generated for <code>synchronized</code> and " 2905*e82f7db8SAndroid Build Coastguard Worker "<code>finally</code> blocks can contain implicit try-catch blocks. " 2906*e82f7db8SAndroid Build Coastguard Worker "If such an implicitly generated try-catch is " 2907*e82f7db8SAndroid Build Coastguard Worker "present on the call stack at the time of the throw, the exception " 2908*e82f7db8SAndroid Build Coastguard Worker "will be considered caught even though it appears to be uncaught from " 2909*e82f7db8SAndroid Build Coastguard Worker "examination of the source code. " 2910*e82f7db8SAndroid Build Coastguard Worker ) 2911*e82f7db8SAndroid Build Coastguard Worker ) 2912*e82f7db8SAndroid Build Coastguard Worker (Alt ThreadStart=JDWP.EventKind.THREAD_START 2913*e82f7db8SAndroid Build Coastguard Worker "Notification of a new running thread in the target VM. " 2914*e82f7db8SAndroid Build Coastguard Worker "The new thread can be the result of a call to " 2915*e82f7db8SAndroid Build Coastguard Worker "<code>java.lang.Thread.start</code> or the result of " 2916*e82f7db8SAndroid Build Coastguard Worker "attaching a new thread to the VM though JNI. The " 2917*e82f7db8SAndroid Build Coastguard Worker "notification is generated by the new thread some time before " 2918*e82f7db8SAndroid Build Coastguard Worker "its execution starts. " 2919*e82f7db8SAndroid Build Coastguard Worker "Because of this timing, it is possible to receive other events " 2920*e82f7db8SAndroid Build Coastguard Worker "for the thread before this event is received. (Notably, " 2921*e82f7db8SAndroid Build Coastguard Worker "Method Entry Events and Method Exit Events might occur " 2922*e82f7db8SAndroid Build Coastguard Worker "during thread initialization. " 2923*e82f7db8SAndroid Build Coastguard Worker "It is also possible for the " 2924*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_AllThreads\">VirtualMachine AllThreads</a> " 2925*e82f7db8SAndroid Build Coastguard Worker "command to return " 2926*e82f7db8SAndroid Build Coastguard Worker "a thread before its thread start event is received. " 2927*e82f7db8SAndroid Build Coastguard Worker "<p>" 2928*e82f7db8SAndroid Build Coastguard Worker "Note that this event gives no information " 2929*e82f7db8SAndroid Build Coastguard Worker "about the creation of the thread object which may have happened " 2930*e82f7db8SAndroid Build Coastguard Worker "much earlier, depending on the VM being debugged. " 2931*e82f7db8SAndroid Build Coastguard Worker 2932*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2933*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Started thread") 2934*e82f7db8SAndroid Build Coastguard Worker ) 2935*e82f7db8SAndroid Build Coastguard Worker (Alt ThreadDeath=JDWP.EventKind.THREAD_DEATH 2936*e82f7db8SAndroid Build Coastguard Worker "Notification of a completed thread in the target VM. The " 2937*e82f7db8SAndroid Build Coastguard Worker "notification is generated by the dying thread before it terminates. " 2938*e82f7db8SAndroid Build Coastguard Worker "Because of this timing, it is possible " 2939*e82f7db8SAndroid Build Coastguard Worker "for {@link VirtualMachine#allThreads} to return this thread " 2940*e82f7db8SAndroid Build Coastguard Worker "after this event is received. " 2941*e82f7db8SAndroid Build Coastguard Worker "<p>" 2942*e82f7db8SAndroid Build Coastguard Worker "Note that this event gives no information " 2943*e82f7db8SAndroid Build Coastguard Worker "about the lifetime of the thread object. It may or may not be collected " 2944*e82f7db8SAndroid Build Coastguard Worker "soon depending on what references exist in the target VM. " 2945*e82f7db8SAndroid Build Coastguard Worker 2946*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2947*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Ending thread") 2948*e82f7db8SAndroid Build Coastguard Worker ) 2949*e82f7db8SAndroid Build Coastguard Worker (Alt ClassPrepare=JDWP.EventKind.CLASS_PREPARE 2950*e82f7db8SAndroid Build Coastguard Worker "Notification of a class prepare in the target VM. See the JVM " 2951*e82f7db8SAndroid Build Coastguard Worker "specification for a definition of class preparation. Class prepare " 2952*e82f7db8SAndroid Build Coastguard Worker "events are not generated for primtiive classes (for example, " 2953*e82f7db8SAndroid Build Coastguard Worker "java.lang.Integer.TYPE). " 2954*e82f7db8SAndroid Build Coastguard Worker 2955*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2956*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Preparing thread. " 2957*e82f7db8SAndroid Build Coastguard Worker "In rare cases, this event may occur in a debugger system " 2958*e82f7db8SAndroid Build Coastguard Worker "thread within the target VM. Debugger threads take precautions " 2959*e82f7db8SAndroid Build Coastguard Worker "to prevent these events, but they cannot be avoided under some " 2960*e82f7db8SAndroid Build Coastguard Worker "conditions, especially for some subclasses of " 2961*e82f7db8SAndroid Build Coastguard Worker "java.lang.Error. " 2962*e82f7db8SAndroid Build Coastguard Worker "If the event was generated by a debugger system thread, the " 2963*e82f7db8SAndroid Build Coastguard Worker "value returned by this method is null, and if the requested " 2964*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_SuspendPolicy\">suspend policy</a> " 2965*e82f7db8SAndroid Build Coastguard Worker "for the event was EVENT_THREAD " 2966*e82f7db8SAndroid Build Coastguard Worker "all threads will be suspended instead, and the " 2967*e82f7db8SAndroid Build Coastguard Worker "composite event's suspend policy will reflect this change. " 2968*e82f7db8SAndroid Build Coastguard Worker "<p>" 2969*e82f7db8SAndroid Build Coastguard Worker "Note that the discussion above does not apply to system threads " 2970*e82f7db8SAndroid Build Coastguard Worker "created by the target VM during its normal (non-debug) operation. " 2971*e82f7db8SAndroid Build Coastguard Worker ) 2972*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "Kind of reference type. " 2973*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_TypeTag\">JDWP.TypeTag</a>") 2974*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID "Type being prepared") 2975*e82f7db8SAndroid Build Coastguard Worker (string signature "Type signature") 2976*e82f7db8SAndroid Build Coastguard Worker (int status "Status of type. " 2977*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_ClassStatus\">JDWP.ClassStatus</a>") 2978*e82f7db8SAndroid Build Coastguard Worker ) 2979*e82f7db8SAndroid Build Coastguard Worker (Alt ClassUnload=JDWP.EventKind.CLASS_UNLOAD 2980*e82f7db8SAndroid Build Coastguard Worker "Notification of a class unload in the target VM. " 2981*e82f7db8SAndroid Build Coastguard Worker "<p>" 2982*e82f7db8SAndroid Build Coastguard Worker "There are severe constraints on the debugger back-end during " 2983*e82f7db8SAndroid Build Coastguard Worker "garbage collection, so unload information is greatly limited. " 2984*e82f7db8SAndroid Build Coastguard Worker 2985*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2986*e82f7db8SAndroid Build Coastguard Worker (string signature "Type signature") 2987*e82f7db8SAndroid Build Coastguard Worker ) 2988*e82f7db8SAndroid Build Coastguard Worker (Alt FieldAccess=JDWP.EventKind.FIELD_ACCESS 2989*e82f7db8SAndroid Build Coastguard Worker "Notification of a field access in the target VM. " 2990*e82f7db8SAndroid Build Coastguard Worker "Field modifications " 2991*e82f7db8SAndroid Build Coastguard Worker "are not considered field accesses. " 2992*e82f7db8SAndroid Build Coastguard Worker "Requires canWatchFieldAccess capability - see " 2993*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 2994*e82f7db8SAndroid Build Coastguard Worker 2995*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 2996*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Accessing thread") 2997*e82f7db8SAndroid Build Coastguard Worker (location location "Location of access") 2998*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "Kind of reference type. " 2999*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_TypeTag\">JDWP.TypeTag</a>") 3000*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID "Type of field") 3001*e82f7db8SAndroid Build Coastguard Worker (field fieldID "Field being accessed") 3002*e82f7db8SAndroid Build Coastguard Worker (tagged-object object 3003*e82f7db8SAndroid Build Coastguard Worker "Object being accessed (null=0 for statics") 3004*e82f7db8SAndroid Build Coastguard Worker ) 3005*e82f7db8SAndroid Build Coastguard Worker (Alt FieldModification=JDWP.EventKind.FIELD_MODIFICATION 3006*e82f7db8SAndroid Build Coastguard Worker "Notification of a field modification in the target VM. " 3007*e82f7db8SAndroid Build Coastguard Worker "Requires canWatchFieldModification capability - see " 3008*e82f7db8SAndroid Build Coastguard Worker "<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>." 3009*e82f7db8SAndroid Build Coastguard Worker 3010*e82f7db8SAndroid Build Coastguard Worker (int requestID "Request that generated event") 3011*e82f7db8SAndroid Build Coastguard Worker (threadObject thread "Modifying thread") 3012*e82f7db8SAndroid Build Coastguard Worker (location location "Location of modify") 3013*e82f7db8SAndroid Build Coastguard Worker (byte refTypeTag "Kind of reference type. " 3014*e82f7db8SAndroid Build Coastguard Worker "See <a href=\"#JDWP_TypeTag\">JDWP.TypeTag</a>") 3015*e82f7db8SAndroid Build Coastguard Worker (referenceTypeID typeID "Type of field") 3016*e82f7db8SAndroid Build Coastguard Worker (field fieldID "Field being modified") 3017*e82f7db8SAndroid Build Coastguard Worker (tagged-object object 3018*e82f7db8SAndroid Build Coastguard Worker "Object being modified (null=0 for statics") 3019*e82f7db8SAndroid Build Coastguard Worker (value valueToBe "Value to be assigned") 3020*e82f7db8SAndroid Build Coastguard Worker ) 3021*e82f7db8SAndroid Build Coastguard Worker (Alt VMDeath=JDWP.EventKind.VM_DEATH 3022*e82f7db8SAndroid Build Coastguard Worker (int requestID 3023*e82f7db8SAndroid Build Coastguard Worker "Request that generated event") 3024*e82f7db8SAndroid Build Coastguard Worker ) 3025*e82f7db8SAndroid Build Coastguard Worker ) 3026*e82f7db8SAndroid Build Coastguard Worker ) 3027*e82f7db8SAndroid Build Coastguard Worker ) 3028*e82f7db8SAndroid Build Coastguard Worker ) 3029*e82f7db8SAndroid Build Coastguard Worker) 3030*e82f7db8SAndroid Build Coastguard Worker(CommandSet DDM=-57 3031*e82f7db8SAndroid Build Coastguard Worker "The extension commands for ddms. Note that this is equivalent to the uint8_t value '199'." 3032*e82f7db8SAndroid Build Coastguard Worker (Command Chunk = 1 3033*e82f7db8SAndroid Build Coastguard Worker "Returns the output of processing a DDMS chunk with any registered handlers. Note: When an error occurs or no data is returned no error code will be set and the reply will be empty. This is for backwards compatibility." 3034*e82f7db8SAndroid Build Coastguard Worker (Out 3035*e82f7db8SAndroid Build Coastguard Worker (int ddms_type "The ddms type of the data that follows") 3036*e82f7db8SAndroid Build Coastguard Worker (Repeat ddms_data_length 3037*e82f7db8SAndroid Build Coastguard Worker (byte ddms_data "DDMS data to be processed by the handler registered for the given input_type.") 3038*e82f7db8SAndroid Build Coastguard Worker ) 3039*e82f7db8SAndroid Build Coastguard Worker ) 3040*e82f7db8SAndroid Build Coastguard Worker (Reply 3041*e82f7db8SAndroid Build Coastguard Worker (int ddms_type "The ddms type of the data that follows") 3042*e82f7db8SAndroid Build Coastguard Worker (Repeat ddms_data_length 3043*e82f7db8SAndroid Build Coastguard Worker (byte ddms_data "DDMS data returned from the handler") 3044*e82f7db8SAndroid Build Coastguard Worker ) 3045*e82f7db8SAndroid Build Coastguard Worker ) 3046*e82f7db8SAndroid Build Coastguard Worker (ErrorSet 3047*e82f7db8SAndroid Build Coastguard Worker (Error NOT_IMPLEMENTED "DDMS is not supported or set up.") 3048*e82f7db8SAndroid Build Coastguard Worker (Error VM_DEAD) 3049*e82f7db8SAndroid Build Coastguard Worker ) 3050*e82f7db8SAndroid Build Coastguard Worker ) 3051*e82f7db8SAndroid Build Coastguard Worker) 3052*e82f7db8SAndroid Build Coastguard Worker(ConstantSet Error 3053*e82f7db8SAndroid Build Coastguard Worker (Constant NONE =0 "No error has occurred.") 3054*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_THREAD =10 "Passed thread is null, is not a valid thread or has exited.") 3055*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_THREAD_GROUP =11 "Thread group invalid.") 3056*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_PRIORITY =12 "Invalid priority.") 3057*e82f7db8SAndroid Build Coastguard Worker (Constant THREAD_NOT_SUSPENDED =13 "If the specified thread has not been " 3058*e82f7db8SAndroid Build Coastguard Worker "suspended by an event.") 3059*e82f7db8SAndroid Build Coastguard Worker (Constant THREAD_SUSPENDED =14 "Thread already suspended.") 3060*e82f7db8SAndroid Build Coastguard Worker (Constant THREAD_NOT_ALIVE =15 "Thread has not been started or is now dead.") 3061*e82f7db8SAndroid Build Coastguard Worker 3062*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_OBJECT =20 "If this reference type has been unloaded " 3063*e82f7db8SAndroid Build Coastguard Worker "and garbage collected.") 3064*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_CLASS =21 "Invalid class.") 3065*e82f7db8SAndroid Build Coastguard Worker (Constant CLASS_NOT_PREPARED =22 "Class has been loaded but not yet prepared.") 3066*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_METHODID =23 "Invalid method.") 3067*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_LOCATION =24 "Invalid location.") 3068*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_FIELDID =25 "Invalid field.") 3069*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_FRAMEID =30 "Invalid jframeID.") 3070*e82f7db8SAndroid Build Coastguard Worker (Constant NO_MORE_FRAMES =31 "There are no more Java or JNI frames on the " 3071*e82f7db8SAndroid Build Coastguard Worker "call stack.") 3072*e82f7db8SAndroid Build Coastguard Worker (Constant OPAQUE_FRAME =32 "Information about the frame is not available.") 3073*e82f7db8SAndroid Build Coastguard Worker (Constant NOT_CURRENT_FRAME =33 "Operation can only be performed on current frame.") 3074*e82f7db8SAndroid Build Coastguard Worker (Constant TYPE_MISMATCH =34 "The variable is not an appropriate type for " 3075*e82f7db8SAndroid Build Coastguard Worker "the function used.") 3076*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_SLOT =35 "Invalid slot.") 3077*e82f7db8SAndroid Build Coastguard Worker (Constant DUPLICATE =40 "Item already set.") 3078*e82f7db8SAndroid Build Coastguard Worker (Constant NOT_FOUND =41 "Desired element not found.") 3079*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_MONITOR =50 "Invalid monitor.") 3080*e82f7db8SAndroid Build Coastguard Worker (Constant NOT_MONITOR_OWNER =51 "This thread doesn't own the monitor.") 3081*e82f7db8SAndroid Build Coastguard Worker (Constant INTERRUPT =52 "The call has been interrupted before completion.") 3082*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_CLASS_FORMAT =60 "The virtual machine attempted to read a class " 3083*e82f7db8SAndroid Build Coastguard Worker "file and determined that the file is malformed " 3084*e82f7db8SAndroid Build Coastguard Worker "or otherwise cannot be interpreted as a class file.") 3085*e82f7db8SAndroid Build Coastguard Worker (Constant CIRCULAR_CLASS_DEFINITION 3086*e82f7db8SAndroid Build Coastguard Worker =61 "A circularity has been detected while " 3087*e82f7db8SAndroid Build Coastguard Worker "initializing a class.") 3088*e82f7db8SAndroid Build Coastguard Worker (Constant FAILS_VERIFICATION =62 "The verifier detected that a class file, " 3089*e82f7db8SAndroid Build Coastguard Worker "though well formed, contained some sort of " 3090*e82f7db8SAndroid Build Coastguard Worker "internal inconsistency or security problem.") 3091*e82f7db8SAndroid Build Coastguard Worker (Constant ADD_METHOD_NOT_IMPLEMENTED 3092*e82f7db8SAndroid Build Coastguard Worker =63 "Adding methods has not been implemented.") 3093*e82f7db8SAndroid Build Coastguard Worker (Constant SCHEMA_CHANGE_NOT_IMPLEMENTED 3094*e82f7db8SAndroid Build Coastguard Worker =64 "Schema change has not been implemented.") 3095*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_TYPESTATE =65 "The state of the thread has been modified, " 3096*e82f7db8SAndroid Build Coastguard Worker "and is now inconsistent.") 3097*e82f7db8SAndroid Build Coastguard Worker (Constant HIERARCHY_CHANGE_NOT_IMPLEMENTED 3098*e82f7db8SAndroid Build Coastguard Worker =66 "A direct superclass is different for the new class " 3099*e82f7db8SAndroid Build Coastguard Worker "version, or the set of directly implemented " 3100*e82f7db8SAndroid Build Coastguard Worker "interfaces is different " 3101*e82f7db8SAndroid Build Coastguard Worker "and canUnrestrictedlyRedefineClasses is false.") 3102*e82f7db8SAndroid Build Coastguard Worker (Constant DELETE_METHOD_NOT_IMPLEMENTED 3103*e82f7db8SAndroid Build Coastguard Worker =67 "The new class version does not declare a method " 3104*e82f7db8SAndroid Build Coastguard Worker "declared in the old class version " 3105*e82f7db8SAndroid Build Coastguard Worker "and canUnrestrictedlyRedefineClasses is false.") 3106*e82f7db8SAndroid Build Coastguard Worker (Constant UNSUPPORTED_VERSION =68 "A class file has a version number not supported " 3107*e82f7db8SAndroid Build Coastguard Worker "by this VM.") 3108*e82f7db8SAndroid Build Coastguard Worker (Constant NAMES_DONT_MATCH =69 "The class name defined in the new class file is " 3109*e82f7db8SAndroid Build Coastguard Worker "different from the name in the old class object.") 3110*e82f7db8SAndroid Build Coastguard Worker (Constant CLASS_MODIFIERS_CHANGE_NOT_IMPLEMENTED 3111*e82f7db8SAndroid Build Coastguard Worker =70 "The new class version has different modifiers and " 3112*e82f7db8SAndroid Build Coastguard Worker "and canUnrestrictedlyRedefineClasses is false.") 3113*e82f7db8SAndroid Build Coastguard Worker (Constant METHOD_MODIFIERS_CHANGE_NOT_IMPLEMENTED 3114*e82f7db8SAndroid Build Coastguard Worker =71 "A method in the new class version has " 3115*e82f7db8SAndroid Build Coastguard Worker "different modifiers " 3116*e82f7db8SAndroid Build Coastguard Worker "than its counterpart in the old class version and " 3117*e82f7db8SAndroid Build Coastguard Worker "and canUnrestrictedlyRedefineClasses is false.") 3118*e82f7db8SAndroid Build Coastguard Worker (Constant NOT_IMPLEMENTED =99 "The functionality is not implemented in " 3119*e82f7db8SAndroid Build Coastguard Worker "this virtual machine.") 3120*e82f7db8SAndroid Build Coastguard Worker (Constant NULL_POINTER =100 "Invalid pointer.") 3121*e82f7db8SAndroid Build Coastguard Worker (Constant ABSENT_INFORMATION =101 "Desired information is not available.") 3122*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_EVENT_TYPE =102 "The specified event type id is not recognized.") 3123*e82f7db8SAndroid Build Coastguard Worker (Constant ILLEGAL_ARGUMENT =103 "Illegal argument.") 3124*e82f7db8SAndroid Build Coastguard Worker (Constant OUT_OF_MEMORY =110 "The function needed to allocate memory and " 3125*e82f7db8SAndroid Build Coastguard Worker "no more memory was available for allocation.") 3126*e82f7db8SAndroid Build Coastguard Worker (Constant ACCESS_DENIED =111 "Debugging has not been enabled in this " 3127*e82f7db8SAndroid Build Coastguard Worker "virtual machine. JVMTI cannot be used.") 3128*e82f7db8SAndroid Build Coastguard Worker (Constant VM_DEAD =112 "The virtual machine is not running.") 3129*e82f7db8SAndroid Build Coastguard Worker (Constant INTERNAL =113 "An unexpected internal error has occurred.") 3130*e82f7db8SAndroid Build Coastguard Worker (Constant UNATTACHED_THREAD =115 "The thread being used to call this function " 3131*e82f7db8SAndroid Build Coastguard Worker "is not attached to the virtual machine. " 3132*e82f7db8SAndroid Build Coastguard Worker "Calls must be made from attached threads.") 3133*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_TAG =500 "object type id or class tag.") 3134*e82f7db8SAndroid Build Coastguard Worker (Constant ALREADY_INVOKING =502 "Previous invoke not complete.") 3135*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_INDEX =503 "Index is invalid.") 3136*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_LENGTH =504 "The length is invalid.") 3137*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_STRING =506 "The string is invalid.") 3138*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_CLASS_LOADER =507 "The class loader is invalid.") 3139*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_ARRAY =508 "The array is invalid.") 3140*e82f7db8SAndroid Build Coastguard Worker (Constant TRANSPORT_LOAD =509 "Unable to load the transport.") 3141*e82f7db8SAndroid Build Coastguard Worker (Constant TRANSPORT_INIT =510 "Unable to initialize the transport.") 3142*e82f7db8SAndroid Build Coastguard Worker (Constant NATIVE_METHOD =511 ) 3143*e82f7db8SAndroid Build Coastguard Worker (Constant INVALID_COUNT =512 "The count is invalid.") 3144*e82f7db8SAndroid Build Coastguard Worker) 3145*e82f7db8SAndroid Build Coastguard Worker(ConstantSet EventKind 3146*e82f7db8SAndroid Build Coastguard Worker (Constant SINGLE_STEP =1 ) 3147*e82f7db8SAndroid Build Coastguard Worker (Constant BREAKPOINT =2 ) 3148*e82f7db8SAndroid Build Coastguard Worker (Constant FRAME_POP =3 ) 3149*e82f7db8SAndroid Build Coastguard Worker (Constant EXCEPTION =4 ) 3150*e82f7db8SAndroid Build Coastguard Worker (Constant USER_DEFINED =5 ) 3151*e82f7db8SAndroid Build Coastguard Worker (Constant THREAD_START =6 ) 3152*e82f7db8SAndroid Build Coastguard Worker (Constant THREAD_DEATH =7 ) 3153*e82f7db8SAndroid Build Coastguard Worker (Constant THREAD_END =7 "obsolete - was used in jvmdi") 3154*e82f7db8SAndroid Build Coastguard Worker (Constant CLASS_PREPARE =8 ) 3155*e82f7db8SAndroid Build Coastguard Worker (Constant CLASS_UNLOAD =9 ) 3156*e82f7db8SAndroid Build Coastguard Worker (Constant CLASS_LOAD =10 ) 3157*e82f7db8SAndroid Build Coastguard Worker (Constant FIELD_ACCESS =20 ) 3158*e82f7db8SAndroid Build Coastguard Worker (Constant FIELD_MODIFICATION =21 ) 3159*e82f7db8SAndroid Build Coastguard Worker (Constant EXCEPTION_CATCH =30 ) 3160*e82f7db8SAndroid Build Coastguard Worker (Constant METHOD_ENTRY =40 ) 3161*e82f7db8SAndroid Build Coastguard Worker (Constant METHOD_EXIT =41 ) 3162*e82f7db8SAndroid Build Coastguard Worker (Constant METHOD_EXIT_WITH_RETURN_VALUE =42 ) 3163*e82f7db8SAndroid Build Coastguard Worker (Constant MONITOR_CONTENDED_ENTER =43 ) 3164*e82f7db8SAndroid Build Coastguard Worker (Constant MONITOR_CONTENDED_ENTERED =44 ) 3165*e82f7db8SAndroid Build Coastguard Worker (Constant MONITOR_WAIT =45 ) 3166*e82f7db8SAndroid Build Coastguard Worker (Constant MONITOR_WAITED =46 ) 3167*e82f7db8SAndroid Build Coastguard Worker (Constant VM_START =90 ) 3168*e82f7db8SAndroid Build Coastguard Worker (Constant VM_INIT =90 "obsolete - was used in jvmdi") 3169*e82f7db8SAndroid Build Coastguard Worker (Constant VM_DEATH =99 ) 3170*e82f7db8SAndroid Build Coastguard Worker (Constant VM_DISCONNECTED =100 "Never sent across JDWP") 3171*e82f7db8SAndroid Build Coastguard Worker) 3172*e82f7db8SAndroid Build Coastguard Worker 3173*e82f7db8SAndroid Build Coastguard Worker(ConstantSet ThreadStatus 3174*e82f7db8SAndroid Build Coastguard Worker (Constant ZOMBIE =0 ) 3175*e82f7db8SAndroid Build Coastguard Worker (Constant RUNNING =1 ) 3176*e82f7db8SAndroid Build Coastguard Worker (Constant SLEEPING =2 ) 3177*e82f7db8SAndroid Build Coastguard Worker (Constant MONITOR =3 ) 3178*e82f7db8SAndroid Build Coastguard Worker (Constant WAIT =4 ) 3179*e82f7db8SAndroid Build Coastguard Worker) 3180*e82f7db8SAndroid Build Coastguard Worker 3181*e82f7db8SAndroid Build Coastguard Worker(ConstantSet SuspendStatus 3182*e82f7db8SAndroid Build Coastguard Worker (Constant SUSPEND_STATUS_SUSPENDED = 0x1 ) 3183*e82f7db8SAndroid Build Coastguard Worker) 3184*e82f7db8SAndroid Build Coastguard Worker(ConstantSet ClassStatus 3185*e82f7db8SAndroid Build Coastguard Worker (Constant VERIFIED =1 ) 3186*e82f7db8SAndroid Build Coastguard Worker (Constant PREPARED =2 ) 3187*e82f7db8SAndroid Build Coastguard Worker (Constant INITIALIZED =4 ) 3188*e82f7db8SAndroid Build Coastguard Worker (Constant ERROR =8 ) 3189*e82f7db8SAndroid Build Coastguard Worker) 3190*e82f7db8SAndroid Build Coastguard Worker(ConstantSet TypeTag 3191*e82f7db8SAndroid Build Coastguard Worker (Constant CLASS=1 "ReferenceType is a class. ") 3192*e82f7db8SAndroid Build Coastguard Worker (Constant INTERFACE=2 "ReferenceType is an interface. ") 3193*e82f7db8SAndroid Build Coastguard Worker (Constant ARRAY=3 "ReferenceType is an array. ") 3194*e82f7db8SAndroid Build Coastguard Worker) 3195*e82f7db8SAndroid Build Coastguard Worker(ConstantSet Tag 3196*e82f7db8SAndroid Build Coastguard Worker (Constant ARRAY = '[' "'[' - an array object (objectID size). ") 3197*e82f7db8SAndroid Build Coastguard Worker (Constant BYTE = 'B' "'B' - a byte value (1 byte).") 3198*e82f7db8SAndroid Build Coastguard Worker (Constant CHAR = 'C' "'C' - a character value (2 bytes).") 3199*e82f7db8SAndroid Build Coastguard Worker (Constant OBJECT = 'L' "'L' - an object (objectID size).") 3200*e82f7db8SAndroid Build Coastguard Worker (Constant FLOAT = 'F' "'F' - a float value (4 bytes).") 3201*e82f7db8SAndroid Build Coastguard Worker (Constant DOUBLE = 'D' "'D' - a double value (8 bytes).") 3202*e82f7db8SAndroid Build Coastguard Worker (Constant INT = 'I' "'I' - an int value (4 bytes).") 3203*e82f7db8SAndroid Build Coastguard Worker (Constant LONG = 'J' "'J' - a long value (8 bytes).") 3204*e82f7db8SAndroid Build Coastguard Worker (Constant SHORT = 'S' "'S' - a short value (2 bytes).") 3205*e82f7db8SAndroid Build Coastguard Worker (Constant VOID = 'V' "'V' - a void value (no bytes).") 3206*e82f7db8SAndroid Build Coastguard Worker (Constant BOOLEAN = 'Z' "'Z' - a boolean value (1 byte).") 3207*e82f7db8SAndroid Build Coastguard Worker (Constant STRING = 's' "'s' - a String object (objectID size). ") 3208*e82f7db8SAndroid Build Coastguard Worker (Constant THREAD = 't' "'t' - a Thread object (objectID size). ") 3209*e82f7db8SAndroid Build Coastguard Worker (Constant THREAD_GROUP = 'g' 3210*e82f7db8SAndroid Build Coastguard Worker "'g' - a ThreadGroup object (objectID size). ") 3211*e82f7db8SAndroid Build Coastguard Worker (Constant CLASS_LOADER = 'l' 3212*e82f7db8SAndroid Build Coastguard Worker "'l' - a ClassLoader object (objectID size). ") 3213*e82f7db8SAndroid Build Coastguard Worker (Constant CLASS_OBJECT = 'c' 3214*e82f7db8SAndroid Build Coastguard Worker "'c' - a class object object (objectID size). ") 3215*e82f7db8SAndroid Build Coastguard Worker) 3216*e82f7db8SAndroid Build Coastguard Worker 3217*e82f7db8SAndroid Build Coastguard Worker(ConstantSet StepDepth 3218*e82f7db8SAndroid Build Coastguard Worker (Constant INTO = 0 3219*e82f7db8SAndroid Build Coastguard Worker "Step into any method calls that occur before the end of the step. ") 3220*e82f7db8SAndroid Build Coastguard Worker (Constant OVER = 1 3221*e82f7db8SAndroid Build Coastguard Worker "Step over any method calls that occur before the end of the step. ") 3222*e82f7db8SAndroid Build Coastguard Worker (Constant OUT = 2 3223*e82f7db8SAndroid Build Coastguard Worker "Step out of the current method. ") 3224*e82f7db8SAndroid Build Coastguard Worker) 3225*e82f7db8SAndroid Build Coastguard Worker 3226*e82f7db8SAndroid Build Coastguard Worker(ConstantSet StepSize 3227*e82f7db8SAndroid Build Coastguard Worker (Constant MIN = 0 3228*e82f7db8SAndroid Build Coastguard Worker "Step by the minimum possible amount (often a bytecode instruction). ") 3229*e82f7db8SAndroid Build Coastguard Worker (Constant LINE = 1 3230*e82f7db8SAndroid Build Coastguard Worker "Step to the next source line unless there is no line number information in which case a MIN step is done instead.") 3231*e82f7db8SAndroid Build Coastguard Worker) 3232*e82f7db8SAndroid Build Coastguard Worker 3233*e82f7db8SAndroid Build Coastguard Worker(ConstantSet SuspendPolicy 3234*e82f7db8SAndroid Build Coastguard Worker (Constant NONE = 0 3235*e82f7db8SAndroid Build Coastguard Worker "Suspend no threads when this event is encountered. ") 3236*e82f7db8SAndroid Build Coastguard Worker (Constant EVENT_THREAD = 1 3237*e82f7db8SAndroid Build Coastguard Worker "Suspend the event thread when this event is encountered. ") 3238*e82f7db8SAndroid Build Coastguard Worker (Constant ALL = 2 3239*e82f7db8SAndroid Build Coastguard Worker "Suspend all threads when this event is encountered. ") 3240*e82f7db8SAndroid Build Coastguard Worker) 3241*e82f7db8SAndroid Build Coastguard Worker 3242*e82f7db8SAndroid Build Coastguard Worker(ConstantSet InvokeOptions 3243*e82f7db8SAndroid Build Coastguard Worker "The invoke options are a combination of zero or more of the following bit flags:" 3244*e82f7db8SAndroid Build Coastguard Worker (Constant INVOKE_SINGLE_THREADED = 0x01 3245*e82f7db8SAndroid Build Coastguard Worker "otherwise, all threads started. ") 3246*e82f7db8SAndroid Build Coastguard Worker (Constant INVOKE_NONVIRTUAL = 0x02 3247*e82f7db8SAndroid Build Coastguard Worker "otherwise, normal virtual invoke (instance methods only)") 3248*e82f7db8SAndroid Build Coastguard Worker) 3249