diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidModuleException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidModuleException.java index 5351594c952..422a7cbfce8 100644 --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidModuleException.java +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidModuleException.java @@ -28,7 +28,6 @@ package com.sun.jdi; /** * Thrown to indicate that the requested module is invalid * or became invalid after the module was unloaded. - *

* * @since 9 */ diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java index 8f9b4da9980..2c80497d3f1 100644 --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java @@ -40,17 +40,20 @@ package com.sun.jdi; * permission allows, and discusses the risks of granting code the * permission. * - * + *
* + * * - * - * - * + * + * + * * + * * + * * - * + * * @@ -59,6 +62,7 @@ package com.sun.jdi; * misbehave. * * + * * *
Table shows permission target name, what the * permission allows, and associated risks
Permission Target NameWhat the Permission AllowsRisks of Allowing this PermissionPermission Target NameWhat the Permission AllowsRisks of Allowing this Permission
virtualMachineManagervirtualMachineManagerAbility to inspect and modify the JDI objects in the * {@code VirtualMachineManager} *
* diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Type.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Type.java index 50ad02747e8..0eb7eae3e0e 100644 --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Type.java +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Type.java @@ -43,79 +43,86 @@ package com.sun.jdi; * {@link ArrayType#componentType()} * *

- * The following table illustrates which subinterfaces of Type + * The following tables illustrate which subinterfaces of Type * are used to mirror types in the target VM -- - * - * - * - * - * - * - * + *
Maps each type declared in target to a mirrored - * instance of a subinterface of PrimitiveType or ReferenceType"
Subinterfaces of {@link PrimitiveType}
Type declared in target asIs mirrored as an instance of
+ * + * * - * - * + * + * + * + * * - * - * + * + * * - * - * + * + * * - * - * + * + * * - * - * + * + * * - * - * + * + * * - * - * + * + * * - * - * + * + * * - * - * - * - * - * - * - * - * + * + * * - * - * - * + * + * + * + *
Subinterfaces of {@link PrimitiveType}
boolean {@link BooleanType}Type declared in target asIs mirrored as an instance of
byte{@link ByteType}boolean {@link BooleanType}
char{@link CharType}byte{@link ByteType}
double{@link DoubleType}char{@link CharType}
float{@link FloatType}double{@link DoubleType}
int{@link IntegerType}float{@link FloatType}
long{@link LongType}int{@link IntegerType}
short{@link ShortType}long{@link LongType}
void{@link VoidType}
Subinterfaces of {@link ReferenceType}
Type declared in target asFor exampleIs mirrored as an instance ofshort{@link ShortType}
a classDate{@link ClassType}void{@link VoidType}
+ * + * + * + * * - * - * - * + * + * + * + * + * * - * - * - * + * + * + * * - * - * - * + * + * + * + * + * + * + * + * + * + * * - * - * - * + * * - * - * - * + * + * *
Subinterfaces of {@link ReferenceType}
an interfaceRunnable{@link InterfaceType}Type declared in target asFor exampleIs mirrored as an instance of
an array {@link ArrayType}a classDate{@link ClassType}
an arrayint[]{@link ArrayType} whose + * an interfaceRunnable{@link InterfaceType}
an array(any){@link ArrayType}
int[]{@link ArrayType} whose * {@link ArrayType#componentType() componentType()} is * {@link IntegerType}
an arrayDate[]{@link ArrayType} whose + * + * Date[]{@link ArrayType} whose * {@link ArrayType#componentType() componentType()} is * {@link ClassType}
an arrayRunnable[]{@link ArrayType} whose + * + * Runnable[]{@link ArrayType} whose * {@link ArrayType#componentType() componentType()} is * {@link InterfaceType}
* * @see PrimitiveType Subinterface PrimitiveType diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Value.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Value.java index 99568fe60bc..42afbc2bfdf 100644 --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Value.java +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Value.java @@ -33,7 +33,7 @@ import com.sun.jdi.event.ModificationWatchpointEvent; * value hierarchy encompassing primitive values and object values. *

* Some examples of where values may be accessed: - *

+ *
layout
* *
{@link ObjectReference#getValue(Field) * ObjectReference.getValue(Field)} @@ -52,117 +52,130 @@ import com.sun.jdi.event.ModificationWatchpointEvent; * - returned with an event *
*

- * The following table illustrates which subinterfaces of Value + * The following tables illustrate which subinterfaces of Value * are used to mirror values in the target VM -- - * - * - * - * - * - * - * - * - * + *
Maps each kind of value to a mirrored - * instance of a subinterface of Value
Subinterfaces of {@link PrimitiveValue}
Kind of valueFor example -
expression in target
Is mirrored as an
instance of
{@link Type} of value
{@link #type() Value.type()}
+ * + * * - * - * - * - * + * + * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * + * + *
Subinterfaces of {@link PrimitiveValue}
a boolean {@code true} {@link BooleanValue} {@link BooleanType}Kind of valueFor example -
expression in target
Is mirrored as an
instance of
{@link Type} of value
{@link #type() Value.type()}
a byte {@code (byte)4} {@link ByteValue} {@link ByteType}a boolean{@code true}{@link BooleanValue}{@link BooleanType}
a char {@code 'a'} {@link CharValue} {@link CharType}a byte{@code (byte)4}{@link ByteValue}{@link ByteType}
a double {@code 3.1415926} {@link DoubleValue} {@link DoubleType}a char{@code 'a'}{@link CharValue}{@link CharType}
a float {@code 2.5f} {@link FloatValue} {@link FloatType}a double{@code 3.1415926}{@link DoubleValue}{@link DoubleType}
an int {@code 22} {@link IntegerValue} {@link IntegerType}a float{@code 2.5f}{@link FloatValue}{@link FloatType}
a long {@code 1024L} {@link LongValue} {@link LongType}an int{@code 22}{@link IntegerValue}{@link IntegerType}
a short {@code (short)12} {@link ShortValue} {@link ShortType}a long{@code 1024L}{@link LongValue}{@link LongType}
a void {@link VoidValue} {@link VoidType}
Subinterfaces of {@link ObjectReference}
Kind of valueFor example -
expression in target
Is mirrored as an
instance of
{@link Type} of value
{@link #type() Value.type()}
a short{@code (short)12}{@link ShortValue}{@link ShortType}
a class instance {@code this} {@link ObjectReference} {@link ClassType}a void{@link VoidValue}{@link VoidType}
+ * + * + * + * * - * - * - * - * + * + * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * * - * - * - * - * - * - * - * - * - * - * - * + * + * + * + * * - * - * - * - * + * + * + * + * + * + * + * + * + * + * + *
Subinterfaces of {@link ObjectReference}
an array {@code new int[5]} {@link ArrayReference} {@link ArrayType}Kind of valueFor example -
expression in target
Is mirrored as an
instance of
{@link Type} of value
{@link #type() Value.type()}
a string {@code "hello"} {@link StringReference} {@link ClassType}a class instance{@code this}{@link ObjectReference}{@link ClassType}
a thread {@code Thread.currentThread()} {@link ThreadReference} {@link ClassType}an array{@code new int[5]}{@link ArrayReference}{@link ArrayType}
a thread group {@code Thread.currentThread()}
  {@code .getThreadGroup()}
{@link ThreadGroupReference} {@link ClassType}a string{@code "hello"}{@link StringReference}{@link ClassType}
a {@code java.lang.Class}
instance
{@code this.getClass()} {@link ClassObjectReference} {@link ClassType}a thread{@code Thread.currentThread()}{@link ThreadReference}{@link ClassType}
a class loader {@code this.getClass()}
  {@code .getClassLoader()}
{@link ClassLoaderReference} {@link ClassType}
Other
Kind of valueFor example -
expression in target
Is mirrored as{@link Type} of valuea thread group{@code Thread.currentThread()}
  {@code .getThreadGroup()}
{@link ThreadGroupReference}{@link ClassType}
null {@code null} {@code null} n/aa {@code java.lang.Class}
instance
{@code this.getClass()}{@link ClassObjectReference}{@link ClassType}
a class loader{@code this.getClass()}
  {@code .getClassLoader()}
{@link ClassLoaderReference}{@link ClassType}
+ * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * *
Other values
Kind of valueFor example -
expression in target
Is mirrored as{@link Type} of value
null{@code null}{@code null}n/a
* * @author Robert Field diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java index ae3c5ffd016..2431f6c02ed 100644 --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java @@ -59,13 +59,16 @@ import com.sun.jdi.event.VMStartEvent; * Some {@link Connector} implementations may require slightly * different handling than presented below. * - * + *
* + * * - * - * + * + * + * + * * - * + * * * * * - * + * * * * - * + * * * * - * + * *
Four scenarios for connecting a debugger to a virtual machine"
ScenarioDescriptionScenarioDescription
Debugger launches target VM (simplest, most-common scenario)Debugger launches target VM (simplest, most-common scenario)Debugger calls the {@link LaunchingConnector#launch(java.util.Map)} * method of the default connector, obtained with {@link #defaultConnector}. The @@ -86,7 +89,7 @@ import com.sun.jdi.event.VMStartEvent; *
Debugger attaches to previously-running VMDebugger attaches to previously-running VM *
    *
  • @@ -113,7 +116,7 @@ import com.sun.jdi.event.VMStartEvent; *
Target VM attaches to previously-running debuggerTarget VM attaches to previously-running debugger *
    *
  • @@ -146,7 +149,7 @@ import com.sun.jdi.event.VMStartEvent; *
Target VM launches debugger (sometimes called "Just-In-Time" debugging)Target VM launches debugger (sometimes called "Just-In-Time" debugging) *
    *
  • diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/doc-files/signature.html b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/doc-files/signature.html index 75bb46c1c32..8c7d4f95398 100644 --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/doc-files/signature.html +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/doc-files/signature.html @@ -1,34 +1,42 @@ - + JDI Type Signatures + +
    - - + + + +
    JDI Type Signatures
    Type Signature -Java Type -
    Zboolean -
    Bbyte -
    Cchar -
    Sshort -
    Iint -
    Jlong -
    Ffloat -
    Ddouble -
    L fully-qualified-class +
    JDI Type Signatures
    Type Signature +Java Type +
    Zboolean +
    Bbyte +
    Cchar +
    Sshort +
    Iint +
    Jlong +
    Ffloat +
    Ddouble +
    L fully-qualified-class ; fully-qualified-class -
    [ type +
    [ type type[] -
    +
    ( arg-types ) ret-type method type (including constructors) +

    For example, the Java method: