# HG changeset patch
# User duke
# Date 1499290975 -7200
# Node ID 4261be231c018d9ea67a7b8f3eb5573d8bb89d24
# Parent d1320b34c90fbe048ba8b51c7392363489947065# Parent f207a3d741da36735e827dd0b02138735488e857
Merge
diff -r f207a3d741da -r 4261be231c01 jdk/.hgtags
--- a/jdk/.hgtags Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/.hgtags Wed Jul 05 23:42:55 2017 +0200
@@ -428,3 +428,5 @@
0ff9ad7d067cd4fa14450cf208bf019175a0aaba jdk-9+172
7c54889c0ec649ee04643e5cace434623d0dc667 jdk-10+11
a5506b425f1bf91530d8417b57360e5d89328c0c jdk-9+173
+42f18c931bd4fae5c206ccf6d8e591e4c4e69d31 jdk-9+174
+5f504872a75b71f2fb19299f0d1e3395cf32eaa0 jdk-10+12
diff -r f207a3d741da -r 4261be231c01 jdk/make/copy/Copy-java.desktop.gmk
--- a/jdk/make/copy/Copy-java.desktop.gmk Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/make/copy/Copy-java.desktop.gmk Wed Jul 05 23:42:55 2017 +0200
@@ -77,6 +77,13 @@
endif
TARGETS += $(FREETYPE_TARGET_LIB)
+
+ $(eval $(call SetupCopyFiles, COPY_FREETYPE_LICENSE, \
+ FILES := $(FREETYPE_LICENSE), \
+ DEST := $(LEGAL_DST_DIR), \
+ ))
+
+ TARGETS += $(COPY_FREETYPE_LICENSE)
endif
################################################################################
diff -r f207a3d741da -r 4261be231c01 jdk/make/src/classes/build/tools/docs/docs-module-groups.properties
--- a/jdk/make/src/classes/build/tools/docs/docs-module-groups.properties Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/make/src/classes/build/tools/docs/docs-module-groups.properties Wed Jul 05 23:42:55 2017 +0200
@@ -10,7 +10,9 @@
java.transaction \
java.xml.bind \
java.xml.ws \
-java.xml.ws.annotation
+java.xml.ws.annotation \
+jdk.xml.bind \
+jdk.xml.ws
aggregator_modules=\
java.se \
diff -r f207a3d741da -r 4261be231c01 jdk/make/src/classes/build/tools/taglet/ExtLink.java
--- a/jdk/make/src/classes/build/tools/taglet/ExtLink.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/make/src/classes/build/tools/taglet/ExtLink.java Wed Jul 05 23:42:55 2017 +0200
@@ -58,7 +58,7 @@
static final String URL = "https://www.oracle.com/pls/topic/lookup?ctx=javase9&id=";
- static final Pattern TAG_PATTERN = Pattern.compile("(\\s*)(? The stream binds to this bit set when the terminal stream operation
* commences (specifically, the spliterator for the stream is
- * late-binding). If the
+ * late-binding). If the
* bit set is modified during that operation then the result is undefined.
*
* @return a stream of integers representing set indices
diff -r f207a3d741da -r 4261be231c01 jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentHashMap.java
diff -r f207a3d741da -r 4261be231c01 jdk/src/java.base/share/classes/module-info.java
--- a/jdk/src/java.base/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/java.base/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -26,6 +26,51 @@
/**
* Defines the foundational APIs of the Java SE Platform.
*
+ * The Java AWT Native Interface (JAWT) comprises a small set of native
-(eg C language-based) APIs that provide a standard supported way
-for interaction between Java API windows and surfaces, and
-platform native API windows and surfaces.
-Non-Java libraries may then render to a Java owned window.
-
-Note: in this document the terms "Java AWT Native Interface",
-"AWT Native Interface" and "JAWT" are interchangeable and
-refer to this same specification.
-
-The fundamental obstacle to native rendering without JAWT is that
-is that the rendering code cannot identify where to draw.
-The native code needs access to information about a Java
-drawing surface (such as a handle to the underlying native ID of a
-Canvas), but cannot get it.
-JAWT should be supported in all headful implementations
-where technically possible although this is not enforced by the JCK.
-There is a platform-specific and a platform
-independent portion to the API, to account for the differing
-data structures and requirements of each platform.
-This document specifies the platform independent portions and
-also documents the platform dependent portions for the Oracle JDK
-supported desktop operating environments.
-For AWT the term platform is less tied to the underlying operating
-system than it is to the desktop windowing environment.
-
-Reasons for using the AWT Native Interface include
-
-Drawbacks include
-
-An example illustrating how easy it is to use the AWT Native Interface
-is presented and discussed later in this document. JAWT usage depends on JNI The definition of Java Standard Edition includes JNI, the Java
-Native Interface. Many Java developers will never need to use it,
-but the interface is the only standard supported way for a Java
-language program to interact directly with
-application code that has been compiled to the native machine
-instructions for the host processor architecture.
-JNI is used where ever there is a need for mixed languages.
-These are by no means limited to cases like AWT. For example, you
-could use JNI to integrate with native code that communicates with
-a peripheral device, such as a scanner, connected to a system via a
-USB port. So JNI is general enough to be used to access almost any
-sort of native library.
-The rest of this document assumes a familiarity with how
-to use JNI.
-
- How to use JAWT In this section we describe the most common usage of the AWT
-Native Interface — overriding the paint method to
-direct drawing operations to a native rendering library which then
-queries the Java VM to determine the information it needs in order
-to render. Note, however, that any native code may use the AWT
-Native Interface to learn about a target drawing surface, not just
-code in a paint method. The first step in hooking up a native rendering library to a
-Java Canvas is to define a new class that extends
-Canvas and overrides the paint method. The Java
-system routes all drawing operations for a Canvas object
-through the paint method, as it does for all other GUI
-objects. Canvas is a good candidate for the rendering surface as
-it does not have any content as a Button would. The new paint method, to be implemented in the native
-rendering library, must be declared as public native void
-, and the native library itself is loaded at runtime by including a
-call to System.loadLibrary( "myRenderingLib")in
-the static block of the class. The myRenderingLib
-name is used for the native shared library; for Linux or the Solaris
-operating environment, the actual name for the library file on disk
-is libmyRenderingLib.so . Here is a simple example of such a class: Note that this class has a main method that can be used
-to run this code as an application for testing purposes. The next step is to run the javah tool on the
-MyCanvas class file above to generate a C/C++ header file
-that describes the interface to the native paint method
-that Java expects to be used. javah is a standard tool
-included with the JDK. NB: javac -h outputdir may also be used. The final step and the most interesting one is to
-write the native rendering method, with an interface that conforms
-to the header file that javah generated, and build it as a
-standard shared library (called myRenderingLib in the
-above example) by linking it, against the appropriate JDK provided
-$JDK_HOME/lib/$JAWT_LIB library for the target platform.
-Where JAWT_LIB has the base name "jawt" and follows platform
-shared object naming rules. i.e.:
-
+ *
+ *
+ * @provides java.nio.file.spi.FileSystemProvider
+ *
+ * @uses java.lang.System.LoggerFinder
+ * @uses java.net.ContentHandlerFactory
+ * @uses java.net.spi.URLStreamHandlerProvider
+ * @uses java.nio.channels.spi.AsynchronousChannelProvider
+ * @uses java.nio.channels.spi.SelectorProvider
+ * @uses java.nio.charset.spi.CharsetProvider
+ * @uses java.nio.file.spi.FileSystemProvider
+ * @uses java.nio.file.spi.FileTypeDetector
+ * @uses java.security.Provider
+ * @uses java.text.spi.BreakIteratorProvider
+ * @uses java.text.spi.CollatorProvider
+ * @uses java.text.spi.DateFormatProvider
+ * @uses java.text.spi.DateFormatSymbolsProvider
+ * @uses java.text.spi.DecimalFormatSymbolsProvider
+ * @uses java.text.spi.NumberFormatProvider
+ * @uses java.time.chrono.AbstractChronology
+ * @uses java.time.chrono.Chronology
+ * @uses java.time.zone.ZoneRulesProvider
+ * @uses java.util.spi.CalendarDataProvider
+ * @uses java.util.spi.CalendarNameProvider
+ * @uses java.util.spi.CurrencyNameProvider
+ * @uses java.util.spi.LocaleNameProvider
+ * @uses java.util.spi.ResourceBundleControlProvider
+ * @uses java.util.spi.ResourceBundleProvider
+ * @uses java.util.spi.TimeZoneNameProvider
+ * @uses java.util.spi.ToolProvider
+ * @uses javax.security.auth.spi.LoginModule
+ *
* @moduleGraph
* @since 9
*/
diff -r f207a3d741da -r 4261be231c01 jdk/src/java.base/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java
diff -r f207a3d741da -r 4261be231c01 jdk/src/java.base/share/native/libjava/jni_util.c
--- a/jdk/src/java.base/share/native/libjava/jni_util.c Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/java.base/share/native/libjava/jni_util.c Wed Jul 05 23:42:55 2017 +0200
@@ -29,6 +29,7 @@
#include "jvm.h"
#include "jni.h"
#include "jni_util.h"
+#include "java_lang_String.h"
/* Due to a bug in the win32 C runtime library strings
* such as "z:" need to be appended with a "." so we
@@ -442,16 +443,18 @@
return obj;
}
-/* Optimized for char set ISO_8559_1 */
+/* Optimized for charset ISO_8559_1 */
static jstring
-newString8859_1(JNIEnv *env, const char *str)
+newSizedString8859_1(JNIEnv *env, const char *str, const int len)
{
- int len = (int)strlen(str);
jchar buf[512];
jchar *str1;
jstring result;
int i;
+ if ((*env)->EnsureLocalCapacity(env, 1) < 0)
+ return NULL;
+
if (len > 512) {
str1 = (jchar *)malloc(len * sizeof(jchar));
if (str1 == 0) {
@@ -469,6 +472,13 @@
return result;
}
+static jstring
+newString8859_1(JNIEnv *env, const char *str)
+{
+ int len = (int)strlen(str);
+ return newSizedString8859_1(env, str, len);
+}
+
static const char*
getString8859_1Chars(JNIEnv *env, jstring jstr)
{
@@ -501,7 +511,7 @@
}
-/* Optimized for char set ISO646-US (us-ascii) */
+/* Optimized for charset ISO646-US (us-ascii) */
static jstring
newString646_US(JNIEnv *env, const char *str)
{
@@ -573,7 +583,7 @@
0x02Dc,0x2122,0x0161,0x203A,0x0153,0xFFFD,0x017E,0x0178
};
-/* Optimized for char set Cp1252 */
+/* Optimized for charset Cp1252 */
static jstring
newStringCp1252(JNIEnv *env, const char *str)
{
@@ -582,6 +592,10 @@
jchar *str1;
jstring result;
int i;
+
+ if ((*env)->EnsureLocalCapacity(env, 1) < 0)
+ return NULL;
+
if (len > 512) {
str1 = (jchar *)malloc(len * sizeof(jchar));
if (str1 == 0) {
@@ -625,9 +639,13 @@
for (i=0; iUL.getRef
+ * (that is, the value returned by the URL.getRef
* method for the URL being displayed). By default, this
* method only knows how to locate a reference in an
* HTMLDocument. The implementation calls the
diff -r f207a3d741da -r 4261be231c01 jdk/src/java.desktop/share/classes/javax/swing/JTabbedPane.java
--- a/jdk/src/java.desktop/share/classes/javax/swing/JTabbedPane.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/java.desktop/share/classes/javax/swing/JTabbedPane.java Wed Jul 05 23:42:55 2017 +0200
@@ -1900,7 +1900,7 @@
* Returns the accessible name of this object, or {@code null} if
* there is no accessible name.
*
- * @return the accessible name of this object, nor {@code null}.
+ * @return the accessible name of this object, or {@code null}.
* @since 1.6
*/
public String getAccessibleName() {
diff -r f207a3d741da -r 4261be231c01 jdk/src/java.desktop/share/classes/module-info.java
--- a/jdk/src/java.desktop/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/java.desktop/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -27,6 +27,24 @@
* Defines the AWT and Swing user interface toolkits, plus APIs for
* accessibility, audio, imaging, printing, and JavaBeans.
*
+ * @uses java.awt.im.spi.InputMethodDescriptor
+ * @uses javax.accessibility.AccessibilityProvider
+ * @uses javax.imageio.spi.ImageInputStreamSpi
+ * @uses javax.imageio.spi.ImageOutputStreamSpi
+ * @uses javax.imageio.spi.ImageReaderSpi
+ * @uses javax.imageio.spi.ImageTranscoderSpi
+ * @uses javax.imageio.spi.ImageWriterSpi
+ * @uses javax.print.PrintServiceLookup
+ * @uses javax.print.StreamPrintServiceFactory
+ * @uses javax.sound.midi.spi.MidiDeviceProvider
+ * @uses javax.sound.midi.spi.MidiFileReader
+ * @uses javax.sound.midi.spi.MidiFileWriter
+ * @uses javax.sound.midi.spi.SoundbankReader
+ * @uses javax.sound.sampled.spi.AudioFileReader
+ * @uses javax.sound.sampled.spi.AudioFileWriter
+ * @uses javax.sound.sampled.spi.FormatConversionProvider
+ * @uses javax.sound.sampled.spi.MixerProvider
+ *
* @moduleGraph
* @since 9
*/
diff -r f207a3d741da -r 4261be231c01 jdk/src/java.desktop/share/classes/sun/print/RasterPrinterJob.java
--- a/jdk/src/java.desktop/share/classes/sun/print/RasterPrinterJob.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/java.desktop/share/classes/sun/print/RasterPrinterJob.java Wed Jul 05 23:42:55 2017 +0200
@@ -886,6 +886,14 @@
}
}
+ protected PageFormat getPageFormatFromAttributes() {
+ if (attributes == null || attributes.isEmpty()) {
+ return null;
+ }
+ return attributeToPageFormat(getPrintService(), this.attributes);
+ }
+
+
/**
* Presents the user a dialog for changing properties of the
* print job interactively.
diff -r f207a3d741da -r 4261be231c01 jdk/src/java.desktop/share/specs/AWT_Native_Interface.html
--- a/jdk/src/java.desktop/share/specs/AWT_Native_Interface.html Wed Jul 05 23:42:41 2017 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,776 +0,0 @@
-
-
-
-
-
-The Java AWT Native Interface Specification and Guide
-Introduction
-
-
-
-
-The header file "jawt.h"
-in the Appendix fully specifies the APIs provided by JAWT.
-
-import java.awt.*;
-import java.awt.event.*;
-
-public class MyCanvas extends Canvas {
- static {
- System.loadLibrary("myRenderingLib");
- }
- public native void paint(Graphics g);
-
- public static void main(String[] args) {
- Frame f = new Frame();
- f.setBounds(0, 0, 500, 110);
- f.add(new MyCanvas());
- f.addWindowListener( new WindowAdapter() {
- public void windowClosing(WindowEvent ev) {
- System.exit(0);
- }
- } );
- f.show();
- }
-}
-
-
-
-
-
-This code will call back to the Java virtual machine to
-get the drawing surface information it needs to access the
-MyCanvas peer. Once this information is available, the
-code can draw directly to MyCanvas using standard drawing
-routines supplied by the underlying operating system.
Here is sample source code for a native paint method -designed for use in a X11-based drawing environment (Linux -or Solaris) and a Java VM where the AWT Native Interface is present:
--#include "MyCanvas.h" -#include "jawt_md.h" - -/* - * Class: MyCanvas - * Method: paint - * Signature: (Ljava/awt/Graphics;)V - */ -JNIEXPORT void JNICALL Java_MyCanvas_paint -(JNIEnv* env, jobject canvas, jobject graphics) -{ - JAWT awt; - JAWT_DrawingSurface* ds; - JAWT_DrawingSurfaceInfo* dsi; - JAWT_X11DrawingSurfaceInfo* dsi_x11; - jboolean result; - jint lock; - GC gc; - - short i; - char *testString = "^^^ rendered from native code ^^^"; - - /* Get the AWT */ - awt.version = JAWT_VERSION_9; - if (JAWT_GetAWT(env, &awt) == JNI_FALSE) { - printf("AWT Not found\n"); - return; - } - - /* Get the drawing surface */ - ds = awt.GetDrawingSurface(env, canvas); - if (ds == NULL) { - printf("NULL drawing surface\n"); - return; - } - - /* Lock the drawing surface */ - lock = ds->Lock(ds); - if((lock & JAWT_LOCK_ERROR) != 0) { - printf("Error locking surface\n"); - awt.FreeDrawingSurface(ds); - return; - } - - /* Get the drawing surface info */ - dsi = ds->GetDrawingSurfaceInfo(ds); - if (dsi == NULL) { - printf("Error getting surface info\n"); - ds->Unlock(ds); - awt.FreeDrawingSurface(ds); - return; - } - - /* Get the platform-specific drawing info */ - dsi_x11 = (JAWT_X11DrawingSurfaceInfo*)dsi->platformInfo; - - - /* Now paint */ - gc = XCreateGC(dsi_x11->display, dsi_x11->drawable, 0, 0); - XSetBackground(dsi_x11->display, gc, 0); - for (i=0; i<36;i++) - { - XSetForeground(dsi_x11->display, gc, 10*i); - XFillRectangle(dsi_x11->display, dsi_x11->drawable, gc, - 10*i, 5, 90, 90); - } - XSetForeground(dsi_x11->display, gc, 155); - XDrawImageString(dsi_x11->display, dsi_x11->drawable, gc, - 100, 110, testString, strlen(testString)); - XFreeGC(dsi_x11->display, gc); - - - /* Free the drawing surface info */ - ds->FreeDrawingSurfaceInfo(dsi); - - /* Unlock the drawing surface */ - ds->Unlock(ds); - - /* Free the drawing surface */ - awt.FreeDrawingSurface(ds); -} --
The key data structure here is JAWT , which is defined -in jawt.h (included by jawt_md.h) ; it provides -access to all the information the native code needs to get the job -done. The first part of the native method is boilerplate: it -populates the JAWT structure, gets a -JAWT_DrawingSurface structure, locks the surface (only one -drawing engine at a time, please!), then gets a -JAWT_DrawingSurfaceInfo structure that contains a pointer -(in the platformInfo field) to the necessary -platform-specific drawing information. It also includes the -bounding rectangle of the drawing surface and the current clipping -region.
-The structure of the information pointed to by -platformInfo is defined in a machine-dependent header file -called jawt_md.h. For X11 drawing, it includes -information about the X11 display and X11 drawable associated with -MyCanvas. After the drawing operations are completed, -there is more boilerplate code as JAWT_DrawingSurfaceInfo -is freed and JAWT_DrawingSurface is unlocked and -freed.
-The corresponding code for the GDI API on the Microsoft Windows platform would -be structured similarly, but would include the version of -jawt_md.h for Microsoft Windows and the structure located -in the platformInfo field of drawing surface info would be -cast as a JAWT_Win32DrawingSurfaceInfo* . And, of course, -the actual drawing operations would need to be changed to those -appropriate for the Microsoft Windows platform. -The same also for MacOS. -
-Summary
-The ability to draw directly into a Java Canvas from a -native code library is extremely useful for developers planning to -migrate a legacy software system to Java, especially one that -includes a high-performance rendering engine. It makes it much -easier to migrate in stages, leaving performance-sensitive -rendering code alone, while other less-sensitive portions of code -are converted to Java. The result can be a modern Java-centric -application, providing the benefit of portability and development -efficiency, but one that does not sacrifice an investment in -performance of a key piece of native code.
-References
-The definitive reference to the Java Native Interface is The -Java Native Interface: Programmer's Guide and Specification by -Sheng Liang. This book was published in June -1999 by Addison-Wesley. The ISBN is 0-201-32577-2.
-Appendix
-Header Files for jawt.h and jawt_md.h
- -jawt.h
--#ifndef _JAVASOFT_JAWT_H_ -#define _JAVASOFT_JAWT_H_ - -#include "jni.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * AWT native interface. - * - * The AWT native interface allows a native C or C++ application a means - * by which to access native structures in AWT. This is to facilitate moving - * legacy C and C++ applications to Java and to target the needs of the - * developers who need to do their own native rendering to canvases - * for performance or other reasons. - * - * Conversely it also provides mechanisms for an application which already - * has a native window to provide that to AWT for AWT rendering. - * - * Since every platform may be different in its native data structures - * and APIs for windowing systems the application must necessarily - * provided per-platform source and compile and deliver per-platform - * native code to use this API. - * - * These interfaces are not part of the Java SE specification and - * a VM is not required to implement this API. However it is strongly - * recommended that all implementations which support headful AWT - * also support these interfaces. - * - */ - -/* - * AWT Native Drawing Surface (JAWT_DrawingSurface). - * - * For each platform, there is a native drawing surface structure. This - * platform-specific structure can be found in jawt_md.h. It is recommended - * that additional platforms follow the same model. It is also recommended - * that VMs on all platforms support the existing structures in jawt_md.h. - * - ******************* - * EXAMPLE OF USAGE: - ******************* - * - * On Microsoft Windows, a programmer wishes to access the HWND of a canvas - * to perform native rendering into it. The programmer has declared the - * paint() method for their canvas subclass to be native: - * - * - * MyCanvas.java: - * - * import java.awt.*; - * - * public class MyCanvas extends Canvas { - * - * static { - * System.loadLibrary("mylib"); - * } - * - * public native void paint(Graphics g); - * } - * - * - * myfile.c: - * - * #include "jawt_md.h" - * #include <assert.h> - * - * JNIEXPORT void JNICALL - * Java_MyCanvas_paint(JNIEnv* env, jobject canvas, jobject graphics) - * { - * JAWT awt; - * JAWT_DrawingSurface* ds; - * JAWT_DrawingSurfaceInfo* dsi; - * JAWT_Win32DrawingSurfaceInfo* dsi_win; - * jboolean result; - * jint lock; - * - * // Get the AWT. Request version 9 to access features in that release. - * awt.version = JAWT_VERSION_9; - * result = JAWT_GetAWT(env, &awt); - * assert(result != JNI_FALSE); - * - * // Get the drawing surface - * ds = awt.GetDrawingSurface(env, canvas); - * assert(ds != NULL); - * - * // Lock the drawing surface - * lock = ds->Lock(ds); - * assert((lock & JAWT_LOCK_ERROR) == 0); - * - * // Get the drawing surface info - * dsi = ds->GetDrawingSurfaceInfo(ds); - * - * // Get the platform-specific drawing info - * dsi_win = (JAWT_Win32DrawingSurfaceInfo*)dsi->platformInfo; - * - * ////////////////////////////// - * // !!! DO PAINTING HERE !!! // - * ////////////////////////////// - * - * // Free the drawing surface info - * ds->FreeDrawingSurfaceInfo(dsi); - * - * // Unlock the drawing surface - * ds->Unlock(ds); - * - * // Free the drawing surface - * awt.FreeDrawingSurface(ds); - * } - * - */ - -/* - * JAWT_Rectangle - * Structure for a native rectangle. - */ -typedef struct jawt_Rectangle { - jint x; - jint y; - jint width; - jint height; -} JAWT_Rectangle; - -struct jawt_DrawingSurface; - -/* - * JAWT_DrawingSurfaceInfo - * Structure for containing the underlying drawing information of a component. - */ -typedef struct jawt_DrawingSurfaceInfo { - /* - * Pointer to the platform-specific information. This can be safely - * cast to a JAWT_Win32DrawingSurfaceInfo on Microsoft Windows or a - * JAWT_X11DrawingSurfaceInfo on Linux and Solaris. On MacOS this is a - * pointer to a NSObject that conforms to the JAWT_SurfaceLayers protocol. - * See jawt_md.h for details. - */ - void* platformInfo; - /* Cached pointer to the underlying drawing surface */ - struct jawt_DrawingSurface* ds; - /* Bounding rectangle of the drawing surface */ - JAWT_Rectangle bounds; - /* Number of rectangles in the clip */ - jint clipSize; - /* Clip rectangle array */ - JAWT_Rectangle* clip; -} JAWT_DrawingSurfaceInfo; - -#define JAWT_LOCK_ERROR 0x00000001 -#define JAWT_LOCK_CLIP_CHANGED 0x00000002 -#define JAWT_LOCK_BOUNDS_CHANGED 0x00000004 -#define JAWT_LOCK_SURFACE_CHANGED 0x00000008 - -/* - * JAWT_DrawingSurface - * Structure for containing the underlying drawing information of a component. - * All operations on a JAWT_DrawingSurface MUST be performed from the same - * thread as the call to GetDrawingSurface. - */ -typedef struct jawt_DrawingSurface { - /* Cached reference to the Java environment of the calling thread. - * If Lock(), Unlock(), GetDrawingSurfaceInfo() or - * FreeDrawingSurfaceInfo() are called from a different thread, - * this data member should be set before calling those functions. - */ - JNIEnv* env; - /* Cached reference to the target object */ - jobject target; - /* - * Lock the surface of the target component for native rendering. - * When finished drawing, the surface must be unlocked with - * Unlock(). This function returns a bitmask with one or more of the - * following values: - * - * JAWT_LOCK_ERROR - When an error has occurred and the surface could not - * be locked. - * - * JAWT_LOCK_CLIP_CHANGED - When the clip region has changed. - * - * JAWT_LOCK_BOUNDS_CHANGED - When the bounds of the surface have changed. - * - * JAWT_LOCK_SURFACE_CHANGED - When the surface itself has changed - */ - jint (JNICALL *Lock) - (struct jawt_DrawingSurface* ds); - /* - * Get the drawing surface info. - * The value returned may be cached, but the values may change if - * additional calls to Lock() or Unlock() are made. - * Lock() must be called before this can return a valid value. - * Returns NULL if an error has occurred. - * When finished with the returned value, FreeDrawingSurfaceInfo must be - * called. - */ - JAWT_DrawingSurfaceInfo* (JNICALL *GetDrawingSurfaceInfo) - (struct jawt_DrawingSurface* ds); - /* - * Free the drawing surface info. - */ - void (JNICALL *FreeDrawingSurfaceInfo) - (JAWT_DrawingSurfaceInfo* dsi); - /* - * Unlock the drawing surface of the target component for native rendering. - */ - void (JNICALL *Unlock) - (struct jawt_DrawingSurface* ds); -} JAWT_DrawingSurface; - -/* - * JAWT - * Structure for containing native AWT functions. - */ -typedef struct jawt { - /* - * Version of this structure. This must always be set before - * calling JAWT_GetAWT(). It affects the functions returned. - * Must be one of the known pre-defined versions. - */ - jint version; - /* - * Return a drawing surface from a target jobject. This value - * may be cached. - * Returns NULL if an error has occurred. - * Target must be a java.awt.Component (should be a Canvas - * or Window for native rendering). - * FreeDrawingSurface() must be called when finished with the - * returned JAWT_DrawingSurface. - */ - JAWT_DrawingSurface* (JNICALL *GetDrawingSurface) - (JNIEnv* env, jobject target); - /* - * Free the drawing surface allocated in GetDrawingSurface. - */ - void (JNICALL *FreeDrawingSurface) - (JAWT_DrawingSurface* ds); - /* - * Since 1.4 - * Locks the entire AWT for synchronization purposes - */ - void (JNICALL *Lock)(JNIEnv* env); - /* - * Since 1.4 - * Unlocks the entire AWT for synchronization purposes - */ - void (JNICALL *Unlock)(JNIEnv* env); - /* - * Since 1.4 - * Returns a reference to a java.awt.Component from a native - * platform handle. On Windows, this corresponds to an HWND; - * on Solaris and Linux, this is a Drawable. For other platforms, - * see the appropriate machine-dependent header file for a description. - * The reference returned by this function is a local - * reference that is only valid in this environment. - * This function returns a NULL reference if no component could be - * found with matching platform information. - */ - jobject (JNICALL *GetComponent)(JNIEnv* env, void* platformInfo); - - /** - * Since 9 - * Creates a java.awt.Frame placed in a native container. Container is - * referenced by the native platform handle. For example on Windows this - * corresponds to an HWND. For other platforms, see the appropriate - * machine-dependent header file for a description. The reference returned - * by this function is a local reference that is only valid in this - * environment. This function returns a NULL reference if no frame could be - * created with matching platform information. - */ - jobject (JNICALL *CreateEmbeddedFrame) (JNIEnv *env, void* platformInfo); - - /** - * Since 9 - * Moves and resizes the embedded frame. The new location of the top-left - * corner is specified by x and y parameters relative to the native parent - * component. The new size is specified by width and height. - * - * The embedded frame should be created by CreateEmbeddedFrame() method, or - * this function will not have any effect. - * - * java.awt.Component.setLocation() and java.awt.Component.setBounds() for - * EmbeddedFrame really don't move it within the native parent. These - * methods always locate the embedded frame at (0, 0) for backward - * compatibility. To allow moving embedded frames this method was - * introduced, and it works just the same way as setLocation() and - * setBounds() for usual, non-embedded components. - * - * Using usual get/setLocation() and get/setBounds() together with this new - * method is not recommended. - */ - void (JNICALL *SetBounds) (JNIEnv *env, jobject embeddedFrame, - jint x, jint y, jint w, jint h); - /** - * Since 9 - * Synthesize a native message to activate or deactivate an EmbeddedFrame - * window depending on the value of parameter doActivate, if "true" - * activates the window; otherwise, deactivates the window. - * - * The embedded frame should be created by CreateEmbeddedFrame() method, or - * this function will not have any effect. - */ - void (JNICALL *SynthesizeWindowActivation) (JNIEnv *env, - jobject embeddedFrame, jboolean doActivate); -} JAWT; - -/* - * Get the AWT native structure. This function returns JNI_FALSE if - * an error occurs. - */ -_JNI_IMPORT_OR_EXPORT_ -jboolean JNICALL JAWT_GetAWT(JNIEnv* env, JAWT* awt); - -/* - * Specify one of these constants as the JAWT.version - * Specifying an earlier version will limit the available functions to - * those provided in that earlier version of JAWT. - * See the "Since" note on each API. Methods with no "Since" - * may be presumed to be present in JAWT_VERSION_1_3. - */ -#define JAWT_VERSION_1_3 0x00010003 -#define JAWT_VERSION_1_4 0x00010004 -#define JAWT_VERSION_1_7 0x00010007 -#define JAWT_VERSION_9 0x00090000 - - -#ifdef __cplusplus -} /* extern "C" */ -#endif - -#endif /* !_JAVASOFT_JAWT_H_ */ - --
jawt_md.h (Linux/Solaris/X11 operating environment version)
--#ifndef _JAVASOFT_JAWT_MD_H_ -#define _JAVASOFT_JAWT_MD_H_ - -#include <X11/Xlib.h> -#include <X11/Xutil.h> -#include <X11/Intrinsic.h> -#include "jawt.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * X11-specific declarations for AWT native interface. - * See notes in jawt.h for an example of use. - */ -typedef struct jawt_X11DrawingSurfaceInfo { - Drawable drawable; - Display* display; - VisualID visualID; - Colormap colormapID; - int depth; -} JAWT_X11DrawingSurfaceInfo; - -#ifdef __cplusplus -} -#endif - -#endif /* !_JAVASOFT_JAWT_MD_H_ */ --
jawt_md.h (Microsoft Windows version)
--#ifndef _JAVASOFT_JAWT_MD_H_ -#define _JAVASOFT_JAWT_MD_H_ - -#include <windows.h> -#include "jawt.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Microsoft Windows specific declarations for AWT native interface. - * See notes in jawt.h for an example of use. - */ -typedef struct jawt_Win32DrawingSurfaceInfo { - /* Native window, DDB, or DIB handle */ - union { - HWND hwnd; - HBITMAP hbitmap; - void* pbits; - }; - /* - * This HDC should always be used instead of the HDC returned from - * BeginPaint() or any calls to GetDC(). - */ - HDC hdc; - HPALETTE hpalette; -} JAWT_Win32DrawingSurfaceInfo; - -#ifdef __cplusplus -} -#endif - -#endif /* !_JAVASOFT_JAWT_MD_H_ */ --
jawt_md.h (MacOS version)
--#ifndef _JAVASOFT_JAWT_MD_H_ -#define _JAVASOFT_JAWT_MD_H_ - -#include "jawt.h" - -#ifdef __OBJC__ -#import- - - diff -r f207a3d741da -r 4261be231c01 jdk/src/java.management.rmi/share/classes/module-info.java --- a/jdk/src/java.management.rmi/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/java.management.rmi/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200 @@ -24,27 +24,27 @@ */ /** - * Defines the RMI Connector for the Java Management Extensions (JMX) Remote API. - *-#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * MacOS specific declarations for AWT native interface. - * See notes in jawt.h for an example of use. - */ - -/* - * When calling JAWT_GetAWT with a JAWT version less than 1.7, you must pass this - * flag or you will not be able to get a valid drawing surface and JAWT_GetAWT will - * return false. This is to maintain compatibility with applications that used the - * interface with Java 6 which had multiple rendering models. This flag is not necessary - * when JAWT version 1.7 or greater is used as this is the only supported rendering mode. - * - * Example: - * JAWT awt; - * awt.version = JAWT_VERSION_1_4 | JAWT_MACOSX_USE_CALAYER; - * jboolean success = JAWT_GetAWT(env, &awt); - */ -#define JAWT_MACOSX_USE_CALAYER 0x80000000 - -/* - * When the native Cocoa toolkit is in use, the pointer stored in - * JAWT_DrawingSurfaceInfo->platformInfo points to a NSObject that conforms to the - * JAWT_SurfaceLayers protocol. Setting the layer property of this object will cause the - * specified layer to be overlaid on the Components rectangle. If the window the - * Component belongs to has a CALayer attached to it, this layer will be accessible via - * the windowLayer property. - */ -#ifdef __OBJC__ -@protocol JAWT_SurfaceLayers -@property (readwrite, retain) CALayer *layer; -@property (readonly) CALayer *windowLayer; -@end -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* !_JAVASOFT_JAWT_MD_H_ */ -
- * The {@linkplain javax.management.remote.rmi RMI connector} is a connector - * for the JMX Remote API that uses RMI to transmit client requests to a remote - * MBean server. + * Defines the {@linkplain javax.management.remote.rmi RMI connector} + * for the Java Management Extensions (JMX) Remote API. + * + *
The JDK implementation of this module includes + * the {@index rmiregistry rmiregistry tool} tool to start a remote + * object registry, and the {@index rmid rmid tool} tool to start + * the activation system daemon. + * + *
+ *
The JDK implementation of this module includes a language-independent + * command-line script shell, {@index jrunscript jrunscript tool}, + * that supports executing JavaScript and other languages if its corresponding + * script engine is installed. + * + *
+ *
This module provides the equivalent of command-line access to + * jar via the {@link java.util.spi.ToolProvider ToolProvider} SPI. + * Instances of the tool can be obtained by calling + * {@link java.util.spi.ToolProvider#findFirst ToolProvider.findFirst} + * or the {@link java.util.ServiceLoader service loader} with the name + * {@code "jar"}. + * + *
May throw an unspecified error if initialization of the - * {@link com.sun.jdi.VirtualMachineManager} fails or if - * the virtual machine manager is unable to locate or create - * any {@link com.sun.jdi.connect.Connector Connectors}. + * {@link VirtualMachineManager} fails or if the virtual machine manager + * is unable to locate or create any {@link Connector Connectors}. * * @throws java.lang.SecurityException if a security manager has been * installed and it denies {@link JDIPermission} @@ -50,6 +52,6 @@ * permissions required by the implementation. */ static public synchronized VirtualMachineManager virtualMachineManager() { - return com.sun.tools.jdi.VirtualMachineManagerImpl.virtualMachineManager(); + return VirtualMachineManagerImpl.virtualMachineManager(); } } diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotLoadedException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotLoadedException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotLoadedException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -67,9 +67,10 @@ * @author Gordon Hirsch * @since 1.3 */ -public class ClassNotLoadedException extends Exception -{ +public class ClassNotLoadedException extends Exception { + private static final long serialVersionUID = -6242978768444298722L; + private String className; public ClassNotLoadedException(String className) { diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotPreparedException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotPreparedException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotPreparedException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,14 +33,14 @@ * @since 1.3 */ public class ClassNotPreparedException extends RuntimeException { + private static final long serialVersionUID = -6120698967144079642L; - public ClassNotPreparedException() - { + + public ClassNotPreparedException() { super(); } - public ClassNotPreparedException(String s) - { + public ClassNotPreparedException(String s) { super(s); } } diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassType.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassType.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassType.java Wed Jul 05 23:42:55 2017 +0200 @@ -42,6 +42,7 @@ * @since 1.3 */ public interface ClassType extends ReferenceType { + /** * Gets the superclass of this class. * diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/IncompatibleThreadStateException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IncompatibleThreadStateException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IncompatibleThreadStateException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,6 +33,7 @@ * @since 1.3 */ public class IncompatibleThreadStateException extends Exception { + private static final long serialVersionUID = 6199174323414551389L; public IncompatibleThreadStateException() { diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/InconsistentDebugInfoException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InconsistentDebugInfoException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InconsistentDebugInfoException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -35,7 +35,9 @@ * @since 1.3 */ public class InconsistentDebugInfoException extends RuntimeException { + private static final long serialVersionUID = 7964236415376861808L; + public InconsistentDebugInfoException() { super(); } diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/InterfaceType.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InterfaceType.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InterfaceType.java Wed Jul 05 23:42:55 2017 +0200 @@ -44,6 +44,7 @@ * @since 1.3 */ public interface InterfaceType extends ReferenceType { + /** * Gets the interfaces directly extended by this interface. * The returned list contains only those interfaces this @@ -187,11 +188,12 @@ * @since 1.8 */ default Value invokeMethod(ThreadReference thread, Method method, - List extends Value> arguments, int options) + List extends Value> arguments, int options) throws InvalidTypeException, - ClassNotLoadedException, - IncompatibleThreadStateException, - InvocationException { + ClassNotLoadedException, + IncompatibleThreadStateException, + InvocationException + { throw new UnsupportedOperationException(); } } diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/InternalException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InternalException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InternalException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,18 +33,20 @@ * @since 1.3 */ public class InternalException extends RuntimeException { - private static final long serialVersionUID = -9171606393104480607L; - private int errorCode; + + private static final long serialVersionUID = -9171606393104480607L; + + private int errorCode; - public InternalException() { - super(); - this.errorCode = 0; - } + public InternalException() { + super(); + this.errorCode = 0; + } - public InternalException(String s) { - super(s); - this.errorCode = 0; - } + public InternalException(String s) { + super(s); + this.errorCode = 0; + } public InternalException(int errorCode) { super(); diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidCodeIndexException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidCodeIndexException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidCodeIndexException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -36,7 +36,9 @@ */ @Deprecated public class InvalidCodeIndexException extends RuntimeException { + private static final long serialVersionUID = 7416010225133747805L; + public InvalidCodeIndexException() { super(); } diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidLineNumberException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidLineNumberException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidLineNumberException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -36,7 +36,9 @@ */ @Deprecated public class InvalidLineNumberException extends RuntimeException { + private static final long serialVersionUID = 4048709912372692875L; + public InvalidLineNumberException() { super(); } diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidModuleException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidModuleException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidModuleException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,6 +33,7 @@ * @since 9 */ public class InvalidModuleException extends RuntimeException { + private static final long serialVersionUID = 7907359387320658039L; /** diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidStackFrameException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidStackFrameException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidStackFrameException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,7 +33,9 @@ * @since 1.3 */ public class InvalidStackFrameException extends RuntimeException { + private static final long serialVersionUID = -1919378296505827922L; + public InvalidStackFrameException() { super(); } diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidTypeException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidTypeException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidTypeException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,6 +33,7 @@ * @since 1.3 */ public class InvalidTypeException extends Exception { + private static final long serialVersionUID = 2256667231949650806L; public InvalidTypeException() { diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvocationException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvocationException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvocationException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,7 +33,9 @@ * @since 1.3 */ public class InvocationException extends Exception { + private static final long serialVersionUID = 6066780907971918568L; + ObjectReference exception; public InvocationException(ObjectReference exception) { diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java Wed Jul 05 23:42:55 2017 +0200 @@ -70,7 +70,7 @@ * @author Tim Bell * @since 1.5 * - * @see com.sun.jdi.Bootstrap + * @see Bootstrap * @see java.security.BasicPermission * @see java.security.Permission * @see java.security.Permissions @@ -80,7 +80,9 @@ */ public final class JDIPermission extends java.security.BasicPermission { + private static final long serialVersionUID = -6988461416938786271L; + /** * The {@code JDIPermission} class represents access rights to the * {@code VirtualMachineManager} diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/Locatable.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Locatable.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Locatable.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -34,6 +34,7 @@ * @since 1.3 */ public interface Locatable { + /** * Returns the {@link Location} of this mirror, if there is * executable code associated with it. Note that both Java™ diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/Location.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Location.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Location.java Wed Jul 05 23:42:55 2017 +0200 @@ -25,7 +25,9 @@ package com.sun.jdi; -import java.util.List; +import com.sun.jdi.event.BreakpointEvent; +import com.sun.jdi.event.ExceptionEvent; +import com.sun.jdi.request.EventRequestManager; /** * A point within the executing code of the target VM. @@ -75,10 +77,10 @@ * returned as the default. To determine the available strata * use {@link ReferenceType#availableStrata()}. * - * @see com.sun.jdi.request.EventRequestManager + * @see EventRequestManager * @see StackFrame - * @see com.sun.jdi.event.BreakpointEvent - * @see com.sun.jdi.event.ExceptionEvent + * @see BreakpointEvent + * @see ExceptionEvent * @see Locatable * * @author Robert Field @@ -128,7 +130,6 @@ */ String sourceName() throws AbsentInformationException; - /** * Gets an identifing name for the source corresponding to * this location. Interpretation of this string is the @@ -154,8 +155,7 @@ * * @since 1.4 */ - String sourceName(String stratum) - throws AbsentInformationException; + String sourceName(String stratum) throws AbsentInformationException; /** * Gets the path to the source corresponding to this @@ -173,7 +173,6 @@ */ String sourcePath() throws AbsentInformationException; - /** * Gets the path to the source corresponding to this * location. Interpretation of this string is the @@ -206,8 +205,7 @@ * * @since 1.4 */ - String sourcePath(String stratum) - throws AbsentInformationException; + String sourcePath(String stratum) throws AbsentInformationException; /** * Gets the line number of this Location. diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/Mirror.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Mirror.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Mirror.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -25,6 +25,8 @@ package com.sun.jdi; +import com.sun.jdi.request.BreakpointRequest; + /** * A proxy used by a debugger to examine or manipulate some entity * in another virtual machine. Mirror is the root of the @@ -33,10 +35,9 @@ * (for example, {@link IntegerValue}), types (for example, * {@link ReferenceType}), dynamic application state (for example, * {@link StackFrame}), and even debugger-specific constructs (for example, - * {@link com.sun.jdi.request.BreakpointRequest}). - * The {@link VirtualMachine} itself is also - * considered a mirror, representing the composite state of the - * target VM. + * {@link BreakpointRequest}). + * The {@link VirtualMachine} itself is also considered a mirror, + * representing the composite state of the target VM. *
* There is no guarantee that a particular entity in the target VM will map
* to a single instance of Mirror. Implementors are free to decide
@@ -44,9 +45,9 @@
* of this interface should always use equals
to compare
* two mirrors for equality.
*
- * Any method on a {@link com.sun.jdi.Mirror} that takes a Mirror
as an
+ * Any method on a {@link Mirror} that takes a Mirror
as an
* parameter directly or indirectly (e.g., as a element in a List
) will
- * throw {@link com.sun.jdi.VMMismatchException} if the mirrors are from different
+ * throw {@link VMMismatchException} if the mirrors are from different
* virtual machines.
*
* @see VirtualMachine
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/ModuleReference.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ModuleReference.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ModuleReference.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,24 +25,24 @@
package com.sun.jdi;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.VMDisconnectEvent;
/**
* A module in the target VM.
*
- * Any method on {@code ModuleReference} which directly or - * indirectly takes {@code ModuleReference} as a parameter may throw - * {@link com.sun.jdi.VMDisconnectedException} if the target VM is - * disconnected and the {@link com.sun.jdi.event.VMDisconnectEvent} has been or is - * available to be read from the {@link com.sun.jdi.event.EventQueue}. + * Any method on {@code ModuleReference} which directly or indirectly takes + * {@code ModuleReference} as a parameter may throw {@link VMDisconnectedException} + * if the target VM is disconnected and the {@link VMDisconnectEvent} has been or is + * available to be read from the {@link EventQueue}. *
- * Any method on {@code ModuleReference} which directly or - * indirectly takes {@code ModuleReference} as a parameter may throw - * {@link com.sun.jdi.VMOutOfMemoryException} if the target VM has run out of memory. + * Any method on {@code ModuleReference} which directly or indirectly takes + * {@code ModuleReference} as a parameter may throw {@link VMOutOfMemoryException} + * if the target VM has run out of memory. *
* Any method on {@code ModuleReference} or which directly or indirectly takes - * {@code ModuleReference} as a parameter may throw - * {@link com.sun.jdi.InvalidModuleException} if the mirrored module - * has been unloaded. + * {@code ModuleReference} as a parameter may throw {@link InvalidModuleException} + * if the mirrored module has been unloaded. * * Not all target virtual machines support this class. * Use {@link VirtualMachine#canGetModuleInfo()} diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/NativeMethodException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/NativeMethodException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/NativeMethodException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -35,6 +35,7 @@ public class NativeMethodException extends RuntimeException { private static final long serialVersionUID = 3924951669039469992L; + public NativeMethodException() { super(); } diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectCollectedException.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectCollectedException.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectCollectedException.java Wed Jul 05 23:42:55 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,7 +33,9 @@ * @since 1.3 */ public class ObjectCollectedException extends RuntimeException { + private static final long serialVersionUID = -1928428056197269588L; + public ObjectCollectedException() { super(); } diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectReference.java --- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectReference.java Wed Jul 05 23:42:41 2017 +0200 +++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectReference.java Wed Jul 05 23:42:55 2017 +0200 @@ -28,26 +28,29 @@ import java.util.List; import java.util.Map; +import com.sun.jdi.event.EventQueue; +import com.sun.jdi.event.VMDisconnectEvent; + /** * An object that currently exists in the target VM. An ObjectReference * mirrors only the object itself and is not specific to any * {@link Field} or {@link LocalVariable} to which it is currently - * assigned. An ObjectReference can - * have 0 or more references from field(s) and/or variable(s). + * assigned. An ObjectReference can have 0 or more references from + * field(s) and/or variable(s). *
- * Any method on ObjectReference
which directly or
- * indirectly takes ObjectReference
as an parameter may throw
- * {@link com.sun.jdi.VMDisconnectedException} if the target VM is
- * disconnected and the {@link com.sun.jdi.event.VMDisconnectEvent} has been or is
- * available to be read from the {@link com.sun.jdi.event.EventQueue}.
+ * Any method on ObjectReference
which directly or indirectly
+ * takes ObjectReference
as a parameter may throw
+ * {@link VMDisconnectedException} if the target VM is disconnected and the
+ * {@link VMDisconnectEvent} has been or is available to be read from the
+ * {@link EventQueue}.
*
- * Any method on ObjectReference
which directly or
- * indirectly takes ObjectReference
as an parameter may throw
- * {@link com.sun.jdi.VMOutOfMemoryException} if the target VM has run out of memory.
+ * Any method on ObjectReference
which directly or indirectly
+ * takes ObjectReference
as a parameter may throw
+ * {@link VMOutOfMemoryException} if the target VM has run out of memory.
*
- * Any method on
* Any method on
* Any method on
* Any method on
* Any method on
* Any method on
* Instances of this interface are created by instances of
- * {@link com.sun.jdi.connect.Connector}. For example,
- * an {@link com.sun.jdi.connect.AttachingConnector AttachingConnector}
+ * {@link Connector}. For example,
+ * an {@link AttachingConnector AttachingConnector}
* attaches to a target VM and returns its virtual machine mirror.
* A Connector will typically create a VirtualMachine by invoking
* the VirtualMachineManager's {@link
- * com.sun.jdi.VirtualMachineManager#createVirtualMachine(Connection)}
+ * VirtualMachineManager#createVirtualMachine(Connection)}
* createVirtualMachine(Connection) method.
*
* Note that a target VM launched by a launching connector is not
- * guaranteed to be stable until after the {@link com.sun.jdi.event.VMStartEvent} has been
+ * guaranteed to be stable until after the {@link VMStartEvent} has been
* received.
*
* Any method on
* Any method on
* Connections can be made using one of several different
- * {@link com.sun.jdi.connect.Connector} objects. Each connector encapsulates
+ * {@link Connector} objects. Each connector encapsulates
* a different way of connecting the debugger with a target VM.
*
* The VirtualMachineManager supports many different scenarios for
* connecting a debugger to a virtual machine. Four examples
* are presented in the table below. The
* examples use the command line syntax in Sun's implementation.
- * Some {@link com.sun.jdi.connect.Connector} implementations may require slightly
+ * Some {@link Connector} implementations may require slightly
* different handling than presented below.
*
* Connectors are created at start-up time. That is, they
* are created the first time that {@link
- * com.sun.jdi.Bootstrap#virtualMachineManager()} is invoked.
+ * Bootstrap#virtualMachineManager()} is invoked.
* The list of all Connectors created at start-up time can be
* obtained from the VirtualMachineManager by invoking the
* {@link #allConnectors allConnectors} method.
@@ -189,23 +194,23 @@
* Connectors are created at start-up time if they are
* installed on the platform. In addition, Connectors are created
* automatically by the VirtualMachineManager to encapsulate any
- * {@link com.sun.jdi.connect.spi.TransportService} implementations
+ * {@link TransportService} implementations
* that are installed on the platform. These two mechanisms for
* creating Connectors are described here.
*
* A Connector is installed on the platform if it is installed
* in a jar file that is visible to the defining class loader of
- * the {@link com.sun.jdi.connect.Connector} type,
+ * the {@link Connector} type,
* and that jar file contains a provider configuration file named
- * {@code com.sun.jdi.connect.Connector} in the resource directory
+ * {@code Connector} in the resource directory
* {@code META-INF/services}, and the provider configuration file
* lists the full-qualified class name of the Connector
* implementation. A Connector is a class that implements the
- * {@link com.sun.jdi.connect.Connector Connector} interface. More
+ * {@link Connector Connector} interface. More
* appropriately the class implements one of the specific Connector
- * types, namely {@link com.sun.jdi.connect.AttachingConnector
- * AttachingConnector}, {@link com.sun.jdi.connect.ListeningConnector
- * ListeningConnector}, or {@link com.sun.jdi.connect.LaunchingConnector
+ * types, namely {@link AttachingConnector
+ * AttachingConnector}, {@link ListeningConnector
+ * ListeningConnector}, or {@link LaunchingConnector
* LaunchingConnector}. The format of the provider configuration file
* is one fully-qualified class name per line. Space and tab characters
* surrounding each class, as well as blank lines are ignored. The
@@ -221,40 +226,37 @@
*
* In addition to Connectors installed on the platform the
* VirtualMachineManager will also create Connectors to encapsulate
- * any {@link com.sun.jdi.connect.spi.TransportService} implementations
+ * any {@link TransportService} implementations
* that are installed on the platform. A TransportService is
* installed on the platform if it installed in a jar file that is
* visible to the defining class loader for the
- * {@link com.sun.jdi.connect.spi.TransportService} type, and that jar
+ * {@link TransportService} type, and that jar
* file contains a provider configuration file named
- * {@code com.sun.jdi.connect.spi.TransportService} in the resource
+ * {@code TransportService} in the resource
* directory {@code META-INF/services}, and the provider
* configuration file lists the full-qualified class name of the
* TransportService implementation. A TransportService is a concrete
- * sub-class of {@link com.sun.jdi.connect.spi.TransportService
+ * sub-class of {@link TransportService
* TransportService}. The format of the provider configuration file
* is the same as the provider configuration file for Connectors
* except that each class listed must be the fully-qualified class
* name of a class that implements the TransportService interface.
*
* For each TransportService installed on the platform, the
- * VirtualMachineManager creates a corresponding
- * {@link com.sun.jdi.connect.AttachingConnector} and
- * {@link com.sun.jdi.connect.ListeningConnector}. These
- * Connectors are created to encapsulate a {@link
- * com.sun.jdi.connect.Transport Transport} that in turn
- * encapsulates the TransportService.
+ * VirtualMachineManager creates a corresponding {@link AttachingConnector} and
+ * {@link ListeningConnector}. These Connectors are created to encapsulate a
+ * {@link Transport Transport} that in turn encapsulates the TransportService.
* The AttachingConnector will be named based on the name of the
* transport service concatenated with the string {@code Attach}.
* For example, if the transport service {@link
- * com.sun.jdi.connect.spi.TransportService#name() name()} method
+ * TransportService#name() name()} method
* returns {@code telepathic} then the AttachingConnector will
* be named {@code telepathicAttach}. Similiarly the ListeningConnector
* will be named with the string {@code Listen} tagged onto the
* name of the transport service. The {@link
- * com.sun.jdi.connect.Connector#description() description()} method
+ * Connector#description() description()} method
* of both the AttachingConnector, and the ListeningConnector, will
- * delegate to the {@link com.sun.jdi.connect.spi.TransportService#description()
+ * delegate to the {@link TransportService#description()
* description()} method of the underlying transport service. Both
* the AttachingConnector and the ListeningConnector will have two
* Connector {@link com.sun.jdi.connect.Connector.Argument Arguments}.
@@ -268,7 +270,7 @@
* timeout or accept timeout.
*
* Initialization of the virtual machine manager will fail, that is
- * {@link com.sun.jdi.Bootstrap#virtualMachineManager()} will throw an
+ * {@link Bootstrap#virtualMachineManager()} will throw an
* error if the virtual machine manager is unable to create any
* connectors.
*
@@ -282,45 +284,44 @@
* be used as the launching connector when selection of a
* connector with specific characteristics is unnecessary.
*
- * @return the default {@link com.sun.jdi.connect.LaunchingConnector}
+ * @return the default {@link LaunchingConnector}
*/
LaunchingConnector defaultConnector();
/**
- * Returns the list of known {@link com.sun.jdi.connect.LaunchingConnector} objects.
+ * Returns the list of known {@link LaunchingConnector} objects.
* Any of the returned objects can be used to launch a new target
* VM and immediately create a {@link VirtualMachine} mirror for it.
*
- * Note that a target VM launched by a launching connector is not
- * guaranteed to be stable until after the {@link com.sun.jdi.event.VMStartEvent} has been
- * received.
- * @return a list of {@link com.sun.jdi.connect.LaunchingConnector} objects.
+ * Note that a target VM launched by a launching connector is not guaranteed
+ * to be stable until after the {@link VMStartEvent} has been received.
+ * @return a list of {@link LaunchingConnector} objects.
*/
List Creates a virtual machine mirror for a target VM
- * for which a {@link com.sun.jdi.connect.spi.Connection Connection}
+ * for which a {@link Connection Connection}
* already exists. A Connection is created when a {@link
- * com.sun.jdi.connect.Connector Connector} establishes
+ * Connector Connector} establishes
* a connection and successfully handshakes with a target VM.
* A Connector can then use this method to create a virtual machine
* mirror to represent the composite state of the target VM.
@@ -374,9 +375,9 @@
* The {@code process} argument specifies the
* {@link java.lang.Process} object for the taget VM. It may be
* specified as {@code null}. If the target VM is launched
- * by a {@link com.sun.jdi.connect.LaunchingConnector
+ * by a {@link LaunchingConnector
* LaunchingConnector} the {@code process} argument should be
- * specified, otherwise calling {@link com.sun.jdi.VirtualMachine#process()}
+ * specified, otherwise calling {@link VirtualMachine#process()}
* on the created virtual machine will return {@code null}.
*
* This method exists so that Connectors may create
@@ -400,8 +401,8 @@
* @throws IllegalStateException
* if the connection is not open
*
- * @see com.sun.jdi.connect.spi.Connection#isOpen()
- * @see com.sun.jdi.VirtualMachine#process()
+ * @see Connection#isOpen()
+ * @see VirtualMachine#process()
*
* @since 1.5
*/
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/AttachingConnector.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/AttachingConnector.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/AttachingConnector.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,9 +25,10 @@
package com.sun.jdi.connect;
-import com.sun.jdi.VirtualMachine;
+import java.io.IOException;
import java.util.Map;
-import java.io.IOException;
+
+import com.sun.jdi.VirtualMachine;
/**
* A connector which attaches to a previously running target VM.
@@ -36,6 +37,7 @@
* @since 1.3
*/
public interface AttachingConnector extends Connector {
+
/**
* Attaches to a running application and returns a
* mirror of its VM.
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Connector.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Connector.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Connector.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,9 +25,9 @@
package com.sun.jdi.connect;
-import java.util.Map;
+import java.io.Serializable;
import java.util.List;
-import java.io.Serializable;
+import java.util.Map;
/**
* A method of connection between a debugger and a target VM.
@@ -46,6 +46,7 @@
* @since 1.3
*/
public interface Connector {
+
/**
* Returns a short identifier for the connector. Connector implementors
* should follow similar naming conventions as are used with packages
@@ -82,7 +83,7 @@
* @return the map associating argument names with argument
* information and default value.
*/
- Map A target VM launched by a launching connector is not
- * guaranteed to be stable until after the {@link com.sun.jdi.event.VMStartEvent} has been
+ * guaranteed to be stable until after the {@link VMStartEvent} has been
* received.
*
* Important note: If a target VM is launched through this
* funcctions, its output and error streams must be read as it
* executes. These streams are available through the
* {@link java.lang.Process Process} object returned by
- * {@link com.sun.jdi.VirtualMachine#process}. If the streams are not periodically
+ * {@link VirtualMachine#process}. If the streams are not periodically
* read, the target VM will stop executing when the buffers for these
* streams are filled.
*
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/ListeningConnector.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/ListeningConnector.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/ListeningConnector.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,8 +25,9 @@
package com.sun.jdi.connect;
+import java.io.IOException;
import java.util.Map;
-import java.io.IOException;
+
import com.sun.jdi.VirtualMachine;
/**
@@ -36,6 +37,7 @@
* @since 1.3
*/
public interface ListeningConnector extends Connector {
+
/**
* Indicates whether this listening connector supports multiple
* connections for a single argument map. If so, a call to
@@ -96,7 +98,6 @@
void stopListening(Map A Transport represents the transport mechanism used by a
- * {@link com.sun.jdi.connect.Connector Connector} to establish a
- * connection with a target VM. It consists of a name which is obtained
- * by invoking the {@link #name} method. Furthermore, a Transport
- * encapsulates a {@link com.sun.jdi.connect.spi.TransportService
- * TransportService} which is the underlying service used
- * to establish connections and exchange Java Debug Wire Protocol
- * (JDWP) packets with a target VM.
+ * {@link Connector Connector} to establish a connection with a
+ * target VM. It consists of a name which is obtained by invoking
+ * the {@link #name} method. Furthermore, a Transport encapsulates a
+ * {@link TransportService TransportService} which is the underlying
+ * service used to establish connections and exchange
+ * Java Debug Wire Protocol (JDWP) packets with a target VM.
*
* @author Gordon Hirsch
* @since 1.3
*/
public interface Transport {
+
/**
* Returns a short identifier for the transport.
*
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/TransportTimeoutException.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/TransportTimeoutException.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/TransportTimeoutException.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,8 @@
package com.sun.jdi.connect;
+import com.sun.jdi.connect.spi.TransportService;
+
/**
* This exception may be thrown as a result of a timeout
* when attaching to a target VM, or waiting to accept a
@@ -39,23 +41,23 @@
* exception may be thrown if the connector supports a
* timeout connector argument when accepting.
*
- * In addition, for developers creating {@link
- * com.sun.jdi.connect.spi.TransportService TransportService}
- * implementations this exception is thrown when
- * {@link com.sun.jdi.connect.spi.TransportService#attach attach}
- * times out when establishing a connection to a target VM,
- * or {@link com.sun.jdi.connect.spi.TransportService#accept
- * accept} times out while waiting for a target VM to connect. In addition, for developers creating {@link TransportService
+ * TransportService} implementations this exception is thrown when
+ * {@link TransportService#attach attach} times out when establishing a
+ * connection to a target VM, or {@link TransportService#accept accept}
+ * times out while waiting for a target VM to connect. A Connection represents a bi-directional communication channel
* between a debugger and a target VM. A Connection is created when
- * {@link com.sun.jdi.connect.spi.TransportService TransportService}
- * establishes a connection and successfully handshakes with a target
- * VM. A TransportService implementation provides a reliable
- * JDWP packet transportation service and consequently a Connection
- * provides a reliable flow of JDWP packets between the debugger
- * and the target VM. A Connection is stream oriented, that is, the
- * JDWP packets written to a connection are read by the target VM
- * in the order in which they were written. Similiarly packets written
+ * {@link TransportService TransportService} establishes a connection
+ * and successfully handshakes with a target VM. A TransportService
+ * implementation provides a reliable JDWP packet transportation service
+ * and consequently a Connection provides a reliable flow of JDWP packets
+ * between the debugger and the target VM. A Connection is stream oriented,
+ * that is, the JDWP packets written to a connection are read by the target VM
+ * in the order in which they were written. Similarly packets written
* to a Connection by the target VM are read by the debugger in the
* order in which they were written.
*
@@ -55,7 +54,6 @@
*
* @since 1.5
*/
-
public abstract class Connection {
/**
@@ -82,7 +80,7 @@
* thrown. The first byte of the packet is stored in element
* {@code 0} of the byte array, the second in element {@code 1},
* and so on. The bytes in the byte array are laid out as per the
- *
+ *
* JDWP specification. That is, all fields in the packet
* are in big endian order as per the JDWP specification.
*
@@ -119,7 +117,7 @@
*
* The byte array provided to this method should be laid out
* as per the
+ * href="{@docRoot}/../specs/jdwp/jdwp-spec.html">
* JDWP specification. That is, all fields in the packet
* are in big endian order. The first byte, that is element
* {@code pkt[0]}, is the first byte of the {@code length} field.
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/TransportService.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/TransportService.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/TransportService.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,8 @@
package com.sun.jdi.connect.spi;
import java.io.IOException;
+
+import com.sun.jdi.connect.Transport;
import com.sun.jdi.connect.TransportTimeoutException;
/**
@@ -35,15 +37,15 @@
* A transport service is a concrete subclass of this class
* that has a zero-argument constructor and implements the abstract
* methods specified below. It is the underlying service
- * used by a {@link com.sun.jdi.connect.Transport} for
- * connections between a debugger and a target VM.
+ * used by a {@link Transport} for connections between a debugger
+ * and a target VM.
*
* A transport service is used to establish a connection
* between a debugger and a target VM, and to transport Java
* Debug Wire Protocol (JDWP) packets over an underlying
* communication protocol. In essence a transport service
* implementation binds JDWP (as specified in the
- *
+ *
* JDWP specification) to an underlying communication
* protocol. A transport service implementation provides
* a reliable JDWP packet transportation service. JDWP
@@ -76,7 +78,6 @@
*
* @since 1.5
*/
-
public abstract class TransportService {
/**
@@ -108,7 +109,6 @@
*/
public abstract boolean supportsMultipleConnections();
-
/**
* Tell whether or not this transport service supports a timeout
* when attaching to a target VM.
@@ -144,7 +144,6 @@
* @see #accept(TransportService.ListenKey,long,long)
*/
public abstract boolean supportsHandshakeTimeout();
-
}
/**
@@ -166,7 +165,7 @@
* is followed by a handshake to ensure that the connection is
* to a target VM. The handshake involves the exchange
* of a string JDWP-Handshake as specified in the
+ * href="{@docRoot}/../specs/jdwp/jdwp-spec.html">
* Java Debug Wire Protocol specification.
*
* @param address
@@ -315,7 +314,7 @@
* connection is indeed to a target VM. The handshake involves
* the exchange of a string JDWP-Handshake as specified
* in the
+ * href="{@docRoot}/../specs/jdwp/jdwp-spec.html">
* Java Debug Wire Protocol specification.
*
* @param listenKey
@@ -373,5 +372,4 @@
*/
public abstract Connection accept(ListenKey listenKey, long acceptTimeout,
long handshakeTimeout) throws IOException;
-
}
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/AccessWatchpointEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/AccessWatchpointEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/AccessWatchpointEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,7 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.VirtualMachine;
/**
* Notification of a field access in the target VM. Field modifications
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/BreakpointEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/BreakpointEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/BreakpointEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,24 +25,20 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
-
-import java.util.List;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.request.BreakpointRequest;
/**
* Notification of a breakpoint in the target VM.
- * The breakpoint event
- * is generated before the code at its location is executed.
- * When a location
- * is reached which satisfies a currently enabled
- * {@link com.sun.jdi.request.BreakpointRequest breakpoint request},
- * an {@link EventSet event set}
- * containing an instance of this class will be added
- * to the VM's event queue.
+ *
+ * The breakpoint event is generated before the code at its location
+ * is executed. When a location is reached which satisfies a currently enabled
+ * {@link BreakpointRequest breakpoint request}, an {@link EventSet event set}
+ * containing an instance of this class will be added to the VM's event queue.
*
* @see EventQueue
* @see VirtualMachine
- * @see com.sun.jdi.request.BreakpointRequest
+ * @see BreakpointRequest
*
* @author Robert Field
* @since 1.3
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassPrepareEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassPrepareEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassPrepareEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,12 +25,15 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.request.EventRequest;
/**
* Notification of a class prepare in the target VM. See the JVM
* specification for a definition of class preparation. Class prepare
- * events are not generated for primtiive classes (for example,
+ * events are not generated for primitive classes (for example,
* java.lang.Integer.TYPE).
*
* @see EventQueue
@@ -40,6 +43,7 @@
* @since 1.3
*/
public interface ClassPrepareEvent extends Event {
+
/**
* Returns the thread in which this event has occurred.
*
@@ -51,7 +55,7 @@
* If the event was generated by a debugger system thread, the
* value returned by this method is null, and if the requested
* suspend policy for the event was
- * {@link com.sun.jdi.request.EventRequest#SUSPEND_EVENT_THREAD},
+ * {@link EventRequest#SUSPEND_EVENT_THREAD},
* all threads will be suspended instead, and the
* {@link EventSet#suspendPolicy} will reflect this change.
*
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassUnloadEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassUnloadEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassUnloadEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,7 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.VirtualMachine;
/**
* Notification of a class unload in the target VM.
@@ -40,6 +40,7 @@
* @since 1.3
*/
public interface ClassUnloadEvent extends Event {
+
/**
* Returns the name of the class that has been unloaded.
*/
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/Event.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/Event.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/Event.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,8 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.Mirror;
+import com.sun.jdi.VirtualMachine;
import com.sun.jdi.request.EventRequest;
/**
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventIterator.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventIterator.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventIterator.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,8 +25,6 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
-
import java.util.Iterator;
/**
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventQueue.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventQueue.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventQueue.java Wed Jul 05 23:42:55 2017 +0200
@@ -25,28 +25,29 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.Mirror;
+import com.sun.jdi.VMDisconnectedException;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.request.EventRequest;
/**
* Manager of incoming debugger events for a target VM.
* Events are always grouped in {@link EventSet}s.
* EventSets generated by the debugger back end can be read
* here. There is one instance of EventQueue assigned to a particular
- * {@link com.sun.jdi.VirtualMachine VirtualMachine}.
+ * {@link VirtualMachine VirtualMachine}.
*
* Some events cause the suspension of the target VM - event requests
* ({@link com.sun.jdi.request}) with a
- * {@link com.sun.jdi.request.EventRequest#suspendPolicy() suspend policy}
- * of {@link com.sun.jdi.request.EventRequest#SUSPEND_ALL SUSPEND_ALL}
- * or {@link com.sun.jdi.request.EventRequest#SUSPEND_EVENT_THREAD
- * SUSPEND_EVENT_THREAD} and sometimes
- * {@link VMStartEvent}.
+ * {@link EventRequest#suspendPolicy() suspend policy}
+ * of {@link EventRequest#SUSPEND_ALL SUSPEND_ALL}
+ * or {@link EventRequest#SUSPEND_EVENT_THREAD
+ * SUSPEND_EVENT_THREAD} and sometimes {@link VMStartEvent}.
* If these suspensions are not resumed the target VM will hang.
* Thus, it is always good policy to
- * {@link #remove() remove()} every EventSet from the
- * event queue until an EventSet containing a
- * {@link VMDisconnectEvent} is read.
- * Unless {@link com.sun.jdi.VirtualMachine#resume() resume} is
+ * {@link #remove() remove()} every EventSet from the event queue until
+ * an EventSet containing a {@link VMDisconnectEvent} is read.
+ * Unless {@link VirtualMachine#resume() resume} is
* being handled in another way, each EventSet should invoke
* {@link EventSet#resume()}.
*
@@ -56,18 +57,16 @@
* @author Robert Field
* @since 1.3
*/
-
public interface EventQueue extends Mirror {
/**
* Waits forever for the next available event.
*
* @return the next {@link EventSet}.
- * @throws InterruptedException if any thread has interrupted
- * this thread.
- * @throws com.sun.jdi.VMDisconnectedException if the connection
- * to the target VM is no longer available. Note this will always
- * be preceded by a {@link com.sun.jdi.event.VMDisconnectEvent}.
+ * @throws InterruptedException if any thread has interrupted this thread.
+ * @throws VMDisconnectedException if the connection
+ * to the target VM is no longer available. Note this will always
+ * be preceded by a {@link VMDisconnectEvent}.
*/
EventSet remove() throws InterruptedException;
@@ -78,9 +77,9 @@
* @return the next {@link EventSet}, or null if there is a timeout.
* @throws InterruptedException if any thread has interrupted
* this thread.
- * @throws com.sun.jdi.VMDisconnectedException if the connection
- * to the target VM is no longer available. Note this will always
- * be preceded by a {@link com.sun.jdi.event.VMDisconnectEvent}.
+ * @throws VMDisconnectedException if the connection
+ * to the target VM is no longer available. Note this will always
+ * be preceded by a {@link VMDisconnectEvent}.
* @throws IllegalArgumentException if the timeout argument
* contains an illegal value.
*/
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventSet.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventSet.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventSet.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,15 +25,19 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import java.util.Set;
-import java.util.Set;
+import com.sun.jdi.Location;
+import com.sun.jdi.Mirror;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.request.BreakpointRequest;
+import com.sun.jdi.request.EventRequest;
/**
* Several {@link Event} objects may be created at a given time by
* the target {@link VirtualMachine}. For example, there may be
- * more than one {@link com.sun.jdi.request.BreakpointRequest}
- * for a given {@link Location}
+ * more than one {@link BreakpointRequest} for a given {@link Location}
* or you might single step to the same location as a
* BreakpointRequest. These {@link Event} objects are delivered
* together as an EventSet. For uniformity, an EventSet is always used
@@ -125,18 +129,15 @@
* @author Robert Field
* @since 1.3
*/
-
public interface EventSet extends Mirror, Set
* In rare cases, the suspend policy may differ from the requested
* value if a {@link ClassPrepareEvent} has occurred in a
@@ -144,9 +145,9 @@
* for details.
*
* @return the suspendPolicy which is either
- * {@link com.sun.jdi.request.EventRequest#SUSPEND_ALL SUSPEND_ALL},
- * {@link com.sun.jdi.request.EventRequest#SUSPEND_EVENT_THREAD SUSPEND_EVENT_THREAD} or
- * {@link com.sun.jdi.request.EventRequest#SUSPEND_NONE SUSPEND_NONE}.
+ * {@link EventRequest#SUSPEND_ALL SUSPEND_ALL},
+ * {@link EventRequest#SUSPEND_EVENT_THREAD SUSPEND_EVENT_THREAD} or
+ * {@link EventRequest#SUSPEND_NONE SUSPEND_NONE}.
*/
int suspendPolicy();
@@ -157,13 +158,11 @@
/**
* Resumes threads suspended by this event set. If the {@link #suspendPolicy}
- * is {@link com.sun.jdi.request.EventRequest#SUSPEND_ALL}, a call
- * to this method is equivalent to
- * {@link com.sun.jdi.VirtualMachine#resume}. If the
- * suspend policy is
- * {@link com.sun.jdi.request.EventRequest#SUSPEND_EVENT_THREAD},
+ * is {@link EventRequest#SUSPEND_ALL}, a call to this method is equivalent to
+ * {@link VirtualMachine#resume}. If the suspend policy is
+ * {@link EventRequest#SUSPEND_EVENT_THREAD},
* a call to this method is equivalent to
- * {@link com.sun.jdi.ThreadReference#resume} for the event thread.
+ * {@link ThreadReference#resume} for the event thread.
* Otherwise, a call to this method is a no-op.
*/
void resume();
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ExceptionEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ExceptionEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ExceptionEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,12 +25,14 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.Location;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.request.ExceptionRequest;
/**
* Notification of an exception in the target VM. When an exception
* is thrown which satisfies a currently enabled
- * {@link com.sun.jdi.request.ExceptionRequest exception request},
+ * {@link ExceptionRequest exception request},
* an {@link EventSet event set}
* containing an instance of this class will be added
* to the VM's event queue.
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/LocatableEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/LocatableEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/LocatableEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,10 +25,8 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
-
-import java.util.List;
-
+import com.sun.jdi.Locatable;
+import com.sun.jdi.ThreadReference;
/**
* Abstract superinterface of events which have both location
* and thread.
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodEntryEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodEntryEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodEntryEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,7 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.Method;
/**
* Notification of a method invocation in the target VM. This event
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodExitEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodExitEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodExitEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,10 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.Method;
+import com.sun.jdi.ObjectCollectedException;
+import com.sun.jdi.Value;
+import com.sun.jdi.VirtualMachine;
/**
* Notification of a method return in the target VM. This event
@@ -68,6 +71,5 @@
*
* @since 1.6
*/
-
public Value returnValue();
}
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ModificationWatchpointEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ModificationWatchpointEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ModificationWatchpointEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,9 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.Value;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.request.ModificationWatchpointRequest;
/**
* Notification of a field modification in the
@@ -33,7 +35,7 @@
*
* @see EventQueue
* @see VirtualMachine
- * @see com.sun.jdi.request.ModificationWatchpointRequest
+ * @see ModificationWatchpointRequest
*
* @author Robert Field
* @since 1.3
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnterEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnterEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnterEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,8 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ThreadReference;
/**
*
@@ -54,5 +55,5 @@
*
* @return an {@link ObjectReference} for the monitor.
*/
- public ObjectReference monitor();
+ public ObjectReference monitor();
}
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnteredEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnteredEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnteredEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,8 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ThreadReference;
/**
*
@@ -53,6 +54,5 @@
*
* @return an {@link ObjectReference} for the monitor.
*/
- public ObjectReference monitor();
-
+ public ObjectReference monitor();
}
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,8 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ThreadReference;
/**
* Notification that a thread in the target VM is about to
@@ -52,12 +53,12 @@
*
* @return an {@link ObjectReference} for the monitor.
*/
- public ObjectReference monitor();
+ public ObjectReference monitor();
/**
* Returns the number of millisecond the thread will wait.
*
* @return a {@code jlong} containing monitor wait time in milliseconds.
*/
- public long timeout();
+ public long timeout();
}
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitedEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitedEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitedEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,8 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ThreadReference;
/**
* Notification that a thread in the target VM has finished
@@ -52,14 +53,12 @@
*
* @return an {@link ObjectReference} for the monitor.
*/
- public ObjectReference monitor();
+ public ObjectReference monitor();
/**
* Returns whether the wait has timed out or been interrupted.
*
* @return {@code true} if the wait is timed out.
*/
- public boolean timedout();
-
-
+ public boolean timedout();
}
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/StepEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/StepEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/StepEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,22 +25,20 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.request.StepRequest;
/**
* Notification of step completion in the target VM.
- * The step event
- * is generated immediately before the code at its location is executed;
- * thus, if the step is entering a new method (as might occur with
- * {@link com.sun.jdi.request.StepRequest#STEP_INTO StepRequest.STEP_INTO})
+ * The step event is generated immediately before the code at its location
+ * is executed. Thus, if the step is entering a new method (as might occur
+ * with {@link StepRequest#STEP_INTO StepRequest.STEP_INTO})
* the location of the event is the first instruction of the method.
* When a step leaves a method, the location of the event will be the
* first instruction after the call in the calling method; note that
* this location may not be at a line boundary, even if
- * {@link com.sun.jdi.request.StepRequest#STEP_LINE StepRequest.STEP_LINE}
- * was used.
+ * {@link StepRequest#STEP_LINE StepRequest.STEP_LINE} was used.
*
- * @see com.sun.jdi.request.StepRequest
+ * @see StepRequest
* @see EventQueue
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadDeathEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadDeathEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadDeathEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,8 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
/**
* Notification of a completed thread in the target VM. The
@@ -46,6 +47,7 @@
* @since 1.3
*/
public interface ThreadDeathEvent extends Event {
+
/**
* Returns the thread which is terminating.
*
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadStartEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadStartEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadStartEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,8 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
/**
* Notification of a new running thread in the target VM.
@@ -53,6 +54,7 @@
* @since 1.3
*/
public interface ThreadStartEvent extends Event {
+
/**
* Returns the thread which has started.
*
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDeathEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDeathEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDeathEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,43 +25,41 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.request.EventRequest;
+import com.sun.jdi.request.EventRequestManager;
+import com.sun.jdi.request.VMDeathRequest;
/**
* Notification of target VM termination.
* This event occurs if the target VM terminates before the
* VM disconnects ({@link VMDisconnectEvent}).
- * Thus, this event will NOT occur if
- * external forces terminate the connection (e.g. a crash)
- * or if the connection is intentionally terminated with
- * {@link com.sun.jdi.VirtualMachine#dispose()
- * VirtualMachine.dispose()}
+ * Thus, this event will NOT occur if external forces terminate
+ * the connection (e.g. a crash) or if the connection is intentionally
+ * terminated with {@link VirtualMachine#dispose() VirtualMachine.dispose()}
*
- * On VM termination, a single unsolicited VMDeathEvent
- * will always be sent with a
- * {@link com.sun.jdi.request.EventRequest#suspendPolicy() suspend policy}
- * of {@link com.sun.jdi.request.EventRequest#SUSPEND_NONE SUSPEND_NONE}.
+ * On VM termination, a single unsolicited VMDeathEvent will always be sent with a
+ * {@link EventRequest#suspendPolicy() suspend policy}
+ * of {@link EventRequest#SUSPEND_NONE SUSPEND_NONE}.
* Additional VMDeathEvents will be sent in the same event set if they are
- * requested with a
- * {@link com.sun.jdi.request.VMDeathRequest VMDeathRequest}.
+ * requested with a {@link VMDeathRequest VMDeathRequest}.
*
* The VM is still intact and can be queried at the point this
* event was initiated but immediately thereafter it is not
* considered intact and cannot be queried.
* Note: If the enclosing {@link EventSet} has a
- * {@link com.sun.jdi.request.EventRequest#suspendPolicy() suspend policy}
- * other than
- * {@link com.sun.jdi.request.EventRequest#SUSPEND_ALL SUSPEND_ALL}
+ * {@link EventRequest#suspendPolicy() suspend policy} other than
+ * {@link EventRequest#SUSPEND_ALL SUSPEND_ALL}
* the initiating point may be long past.
*
* All VMDeathEvents will be in a single {@link EventSet},
- * no other events will be in the event set. A resume
+ * no other events will be in the event set. A resume
* must occur to continue execution after any event set which
* performs suspensions - in this case to allow proper shutdown.
*
* @see VMDisconnectEvent
- * @see com.sun.jdi.request.EventRequestManager#createVMDeathRequest
- * @see com.sun.jdi.request.VMDeathRequest
+ * @see EventRequestManager#createVMDeathRequest
+ * @see VMDeathRequest
* @see EventQueue
* @see VirtualMachine
*
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDisconnectEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDisconnectEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDisconnectEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,14 +25,14 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.request.EventRequest;
/**
* Notification of disconnection from target VM.
* May be caused by normal termination of a VM,
* VM termination by uncaught exception or other error,
- * debugger action (
- * {@link VirtualMachine#dispose} or
+ * debugger action ({@link VirtualMachine#dispose} or
* {@link VirtualMachine#exit}) or by external events
* (for example, target process termination by the
* operating system, transport termination, etc).
@@ -41,9 +41,9 @@
* will be preceded by a {@link VMDeathEvent}.
*
* This event is always sent.
- * There is no corresponding {@link com.sun.jdi.request.EventRequest}.
+ * There is no corresponding {@link EventRequest}.
* The enclosing singleton {@link EventSet} always has a
- * suspend policy of {@link com.sun.jdi.request.EventRequest#SUSPEND_NONE}.
+ * suspend policy of {@link EventRequest#SUSPEND_NONE}.
*
* @see VMDeathEvent
* @see EventQueue
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMStartEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMStartEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMStartEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,8 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
/**
* Notification of initialization of a target VM. This event is
@@ -44,6 +45,7 @@
* @since 1.3
*/
public interface VMStartEvent extends Event {
+
/**
* Returns the initial thread of the VM which has started.
*
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/WatchpointEvent.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/WatchpointEvent.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/WatchpointEvent.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,11 @@
package com.sun.jdi.event;
-import com.sun.jdi.*;
+import com.sun.jdi.Field;
+import com.sun.jdi.ObjectCollectedException;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.Value;
+import com.sun.jdi.VirtualMachine;
/**
* Notification of a field triggered event encountered by a thread in the
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/AccessWatchpointRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/AccessWatchpointRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/AccessWatchpointRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,9 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.event.AccessWatchpointEvent;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
/**
* Request for notification when the contents of a field are accessed
@@ -36,20 +38,19 @@
* GetStatic<Type>Field).
* Access by JDI does not trigger this event.
* When an enabled AccessWatchpointRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing an
- * {@link com.sun.jdi.event.AccessWatchpointEvent AccessWatchpointEvent} will be placed
- * on the {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing an
+ * {@link AccessWatchpointEvent AccessWatchpointEvent} will be placed
+ * on the {@link EventQueue EventQueue}.
* The collection of existing ExceptionRequests is
* managed by the {@link EventRequestManager}
- * The collection of existing
- * watchpoints is
+ * The collection of existing watchpoints is
* managed by the {@link EventRequestManager}.
*
* Note that the modification
* of a Field is not considered an access.
*
* @see ModificationWatchpointRequest
- * @see com.sun.jdi.event.EventQueue
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/BreakpointRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/BreakpointRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/BreakpointRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,22 +25,29 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.Locatable;
+import com.sun.jdi.Location;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.BreakpointEvent;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
/**
* Identifies a {@link Location} in the target VM at which
* execution should be stopped. When an enabled BreakpointRequest is
* satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing an
- * {@link com.sun.jdi.event.BreakpointEvent BreakpointEvent}
+ * {@link EventSet event set} containing an
+ * {@link BreakpointEvent BreakpointEvent}
* will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue} and
+ * {@link EventQueue EventQueue} and
* the application is interrupted. The collection of existing breakpoints is
* managed by the {@link EventRequestManager}
*
* @see Location
- * @see com.sun.jdi.event.BreakpointEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see BreakpointEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassPrepareRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassPrepareRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassPrepareRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,23 +25,27 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.ClassPrepareEvent;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
/**
* Request for notification when a class is prepared in the target VM.
* When an enabled ClassPrepareRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.ClassPrepareEvent ClassPrepareEvent}
+ * {@link EventSet event set} containing a
+ * {@link ClassPrepareEvent ClassPrepareEvent}
* will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventQueue EventQueue}.
* The collection of existing ClassPrepareRequests is
* managed by the {@link EventRequestManager}
*
* Class preparation is defined in the Java Virtual Machine
* Specification.
*
- * @see com.sun.jdi.event.ClassPrepareEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see ClassPrepareEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassUnloadRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassUnloadRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassUnloadRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,22 +25,24 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.event.ClassUnloadEvent;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
/**
* Request for notification when a class is unloaded in the target VM.
* When an enabled ClassUnloadRequest is satisfied, a
- * {@link com.sun.jdi.event.EventSet event set} containing an
- * {@link com.sun.jdi.event.ClassUnloadEvent ClassUnloadEvent} will
- * be placed on the {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing an
+ * {@link ClassUnloadEvent ClassUnloadEvent} will
+ * be placed on the {@link EventQueue EventQueue}.
* The collection of existing ClassUnloadRequests is
* managed by the {@link EventRequestManager}
*
* Refer to the Java Virtual Machine Specification for more information
* on class unloading.
*
- * @see com.sun.jdi.event.ClassUnloadEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see ClassUnloadEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/DuplicateRequestException.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/DuplicateRequestException.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/DuplicateRequestException.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
* @since 1.3
*/
public class DuplicateRequestException extends RuntimeException {
+
private static final long serialVersionUID = -3719784920313411060L;
public DuplicateRequestException() {
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,14 +25,22 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.Mirror;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VMDisconnectedException;
+import com.sun.jdi.VMOutOfMemoryException;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.BreakpointEvent;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.VMDisconnectEvent;
/**
* Represents a request for notification of an event. Examples include
* {@link BreakpointRequest} and {@link ExceptionRequest}.
* When an event occurs for which an enabled request is present,
- * an {@link com.sun.jdi.event.EventSet EventSet} will
- * be placed on the {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * an {@link EventSet EventSet} will
+ * be placed on the {@link EventQueue EventQueue}.
* The collection of existing event requests is
* managed by the {@link EventRequestManager}.
*
@@ -63,16 +71,16 @@
*
* Any method on {@code EventRequest} which
* takes {@code EventRequest} as an parameter may throw
- * {@link com.sun.jdi.VMDisconnectedException} if the target VM is
- * disconnected and the {@link com.sun.jdi.event.VMDisconnectEvent} has been or is
- * available to be read from the {@link com.sun.jdi.event.EventQueue}.
+ * {@link VMDisconnectedException} if the target VM is
+ * disconnected and the {@link VMDisconnectEvent} has been or is
+ * available to be read from the {@link EventQueue}.
*
* Any method on {@code EventRequest} which
* takes {@code EventRequest} as an parameter may throw
- * {@link com.sun.jdi.VMOutOfMemoryException} if the target VM has run out of memory.
+ * {@link VMOutOfMemoryException} if the target VM has run out of memory.
*
- * @see com.sun.jdi.event.BreakpointEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see BreakpointEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
@@ -159,8 +167,8 @@
*
* Thread suspensions through events have the same functionality
* as explicitly requested suspensions. See
- * {@link com.sun.jdi.ThreadReference#suspend} and
- * {@link com.sun.jdi.VirtualMachine#suspend} for details.
+ * {@link ThreadReference#suspend} and
+ * {@link VirtualMachine#suspend} for details.
*
* @param policy the selected suspend policy.
* @throws InvalidRequestStateException if this request is currently
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequestManager.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequestManager.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequestManager.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,19 +25,30 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import java.util.List;
-import java.util.List;
+import com.sun.jdi.Field;
+import com.sun.jdi.Location;
+import com.sun.jdi.Mirror;
+import com.sun.jdi.NativeMethodException;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.BreakpointEvent;
+import com.sun.jdi.event.Event;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.ExceptionEvent;
+import com.sun.jdi.event.VMDeathEvent;
/**
* Manages the creation and deletion of {@link EventRequest}s. A single
- * implementor of this interface exists in a particuar VM and
+ * implementor of this interface exists in a particular VM and
* is accessed through {@link VirtualMachine#eventRequestManager()}
*
* @see EventRequest
- * @see com.sun.jdi.event.Event
+ * @see Event
* @see BreakpointRequest
- * @see com.sun.jdi.event.BreakpointEvent
+ * @see BreakpointEvent
* @see VirtualMachine
*
* @author Robert Field
@@ -97,7 +108,7 @@
* or both can be selected. Note, however, that
* at the time an exception is thrown, it is not always
* possible to determine whether it is truly caught. See
- * {@link com.sun.jdi.event.ExceptionEvent#catchLocation} for
+ * {@link ExceptionEvent#catchLocation} for
* details.
* @param refType If non-null, specifies that exceptions which are
* instances of refType will be reported. Note: this
@@ -217,19 +228,19 @@
*
* The returned request will control stepping only in the specified
* {@code thread}; all other threads will be unaffected.
- * A {@code size} value of {@link com.sun.jdi.request.StepRequest#STEP_MIN} will generate a
+ * A {@code size} value of {@link StepRequest#STEP_MIN} will generate a
* step event each time the code index changes. It represents the
* smallest step size available and often maps to the instruction
* level.
- * A {@code size} value of {@link com.sun.jdi.request.StepRequest#STEP_LINE} will generate a
+ * A {@code size} value of {@link StepRequest#STEP_LINE} will generate a
* step event each time the source line changes unless line number information is not available,
* in which case a STEP_MIN will be done instead. For example, no line number information is
* available during the execution of a method that has been rendered obsolete by
- * by a {@link com.sun.jdi.VirtualMachine#redefineClasses} operation.
- * A {@code depth} value of {@link com.sun.jdi.request.StepRequest#STEP_INTO} will generate
+ * by a {@link VirtualMachine#redefineClasses} operation.
+ * A {@code depth} value of {@link StepRequest#STEP_INTO} will generate
* step events in any called methods. A {@code depth} value
- * of {@link com.sun.jdi.request.StepRequest#STEP_OVER} restricts step events to the current frame
- * or caller frames. A {@code depth} value of {@link com.sun.jdi.request.StepRequest#STEP_OUT}
+ * of {@link StepRequest#STEP_OVER} restricts step events to the current frame
+ * or caller frames. A {@code depth} value of {@link StepRequest#STEP_OUT}
* restricts step events to caller frames only. All depth
* restrictions are relative to the call stack immediately before the
* step takes place.
@@ -327,7 +338,7 @@
* activate this event request.
*
* This request (if enabled) will cause a
- * {@link com.sun.jdi.event.VMDeathEvent}
+ * {@link VMDeathEvent}
* to be sent on termination of the target VM.
*
* A VMDeathRequest with a suspend policy of
@@ -338,8 +349,8 @@
* events before VM death. If all event processing is being
* done in the same thread as event sets are being read,
* enabling the request is all that is needed since the VM
- * will be suspended until the {@link com.sun.jdi.event.EventSet}
- * containing the {@link com.sun.jdi.event.VMDeathEvent}
+ * will be suspended until the {@link EventSet}
+ * containing the {@link VMDeathEvent}
* is resumed.
*
* Not all target virtual machines support this operation.
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ExceptionRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ExceptionRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ExceptionRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,19 +25,25 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.ExceptionEvent;
/**
* Request for notification when an exception occurs in the target VM.
* When an enabled ExceptionRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing an
- * {@link com.sun.jdi.event.ExceptionEvent ExceptionEvent} will be placed
- * on the {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing an
+ * {@link ExceptionEvent ExceptionEvent} will be placed
+ * on the {@link EventQueue EventQueue}.
* The collection of existing ExceptionRequests is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.ExceptionEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see ExceptionEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
@@ -60,7 +66,7 @@
*
* Note that at the time an exception is thrown, it is not always
* possible to determine whether it is truly caught. See
- * {@link com.sun.jdi.event.ExceptionEvent#catchLocation} for
+ * {@link ExceptionEvent#catchLocation} for
* details.
* @return
* boolean true if caught exceptions will be reported, false
@@ -74,7 +80,7 @@
*
* Note that at the time an exception is thrown, it is not always
* possible to determine whether it is truly uncaught. See
- * {@link com.sun.jdi.event.ExceptionEvent#catchLocation} for
+ * {@link ExceptionEvent#catchLocation} for
* details.
* @return
* boolean true if caught exceptions will be reported, false
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/InvalidRequestStateException.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/InvalidRequestStateException.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/InvalidRequestStateException.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -36,14 +36,14 @@
* @since 1.3
*/
public class InvalidRequestStateException extends RuntimeException {
+
private static final long serialVersionUID = -3774632428543322148L;
- public InvalidRequestStateException()
- {
+
+ public InvalidRequestStateException() {
super();
}
- public InvalidRequestStateException(String s)
- {
+ public InvalidRequestStateException(String s) {
super(s);
}
}
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodEntryRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodEntryRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodEntryRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,20 +25,25 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.MethodEntryEvent;
/**
* Request for notification when a method is invoked in the target VM.
* When an enabled MethodEntryRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.MethodEntryEvent MethodEntryEvent}
- * will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing a
+ * {@link MethodEntryEvent MethodEntryEvent}
+ * will be placed on the {@link EventQueue EventQueue}.
* The collection of existing MethodEntryRequests is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.MethodEntryEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see MethodEntryEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodExitRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodExitRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodExitRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,20 +25,25 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.MethodExitEvent;
/**
* Request for notification when a method returns in the target VM.
* When an enabled MethodExitRequest is hit, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.MethodExitEvent MethodExitEvent}
- * will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing a
+ * {@link MethodExitEvent MethodExitEvent}
+ * will be placed on the {@link EventQueue EventQueue}.
* The collection of existing MethodExitRequests is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.MethodExitEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see MethodExitEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ModificationWatchpointRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ModificationWatchpointRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ModificationWatchpointRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,9 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.ModificationWatchpointEvent;
/**
* Request for notification when a field is set.
@@ -37,19 +39,16 @@
* Setting a field to a value which is the same as the previous value
* still triggers this event.
* Modification by JDI does not trigger this event.
- * When an enabled
- * ModificationWatchpointRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.ModificationWatchpointEvent ModificationWatchpointEvent}
- * will be placed on
- * the {@link com.sun.jdi.event.EventQueue EventQueue}.
- * The collection of existing
- * watchpoints is
+ * When an enabled ModificationWatchpointRequest is satisfied, an
+ * {@link EventSet event set} containing a
+ * {@link ModificationWatchpointEvent ModificationWatchpointEvent}
+ * will be placed on the {@link EventQueue EventQueue}.
+ * The collection of existing watchpoints is
* managed by the {@link EventRequestManager}.
*
- * @see com.sun.jdi.event.ModificationWatchpointEvent
+ * @see ModificationWatchpointEvent
* @see AccessWatchpointRequest
- * @see com.sun.jdi.event.EventQueue
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnterRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnterRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnterRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,21 +25,26 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.MonitorContendedEnterEvent;
/**
* Request for notification of a thread in the target VM
* attempting to enter a monitor already acquired by another thread.
* When an enabled MonitorContededEnterRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.MonitorContendedEnterEvent MonitorContendedEnterEvent}
- * will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing a
+ * {@link MonitorContendedEnterEvent MonitorContendedEnterEvent}
+ * will be placed on the {@link EventQueue EventQueue}.
* The collection of existing MonitorContendedEnterEvents is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.MonitorContendedEnterEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see MonitorContendedEnterEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Swamy Venkataramanappa
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnteredRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnteredRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnteredRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,21 +25,26 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.MonitorContendedEnteredEvent;
/**
* Request for notification of a thread in the target VM entering a monitor
* after waiting for it to be released by another thread.
* When an enabled MonitorContededEnteredRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.MonitorContendedEnteredEvent MonitorContendedEnteredEvent}
- * will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing a
+ * {@link MonitorContendedEnteredEvent MonitorContendedEnteredEvent}
+ * will be placed on the {@link EventQueue EventQueue}.
* The collection of existing MonitorContendedEnteredEvents is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.MonitorContendedEnteredEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see MonitorContendedEnteredEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Swamy Venkataramanappa
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,21 +25,26 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.MonitorWaitEvent;
/**
* Request for notification when a thread in the target VM is about to
* wait on a monitor object. That is, a thread is entering Object.wait().
* When an enabled MonitorWaitRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.MonitorWaitEvent MonitorWaitEvent}
- * will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing a
+ * {@link MonitorWaitEvent MonitorWaitEvent}
+ * will be placed on the {@link EventQueue EventQueue}.
* The collection of existing MonitorWaitEvents is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.MonitorWaitEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see MonitorWaitEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Swamy Venkataramanappa
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitedRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitedRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitedRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,21 +25,26 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.MonitorWaitedEvent;
/**
* Request for notification when a thread in the target VM has finished waiting on
* a monitor object. That is, a thread is leaving Object.wait(). "
* When an enabled MonitorWaitedRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.MonitorWaitedEvent MonitorWaitedEvent}
- * will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing a
+ * {@link MonitorWaitedEvent MonitorWaitedEvent}
+ * will be placed on the {@link EventQueue EventQueue}.
* The collection of existing MonitorWaitedEvents is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.MonitorWaitedEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see MonitorWaitedEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Swamy Venkataramanappa
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/StepRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/StepRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/StepRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,19 +25,25 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.StepEvent;
/**
* Request for notification when a step occurs in the target VM.
* When an enabled StepRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.StepEvent StepEvent} will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing a
+ * {@link StepEvent StepEvent} will be placed on the
+ * {@link EventQueue EventQueue}.
* The collection of existing StepRequests is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.StepEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see StepEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadDeathRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadDeathRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadDeathRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,20 +25,23 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.ThreadDeathEvent;
/**
* Request for notification when a thread terminates in the target VM.
* When an enabled ThreadDeathRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.ThreadDeathEvent ThreadDeathEvent}
+ * {@link EventSet event set} containing a
+ * {@link ThreadDeathEvent ThreadDeathEvent}
* will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventQueue EventQueue}.
* The collection of existing ThreadDeathRequests is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.ThreadDeathEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see ThreadDeathEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadStartRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadStartRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadStartRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,20 +25,23 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.ThreadStartEvent;
/**
* Request for notification when a thread starts execution in the target VM.
* When an enabled ThreadStartRequest is hit, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.ThreadStartEvent ThreadStartEvent}
+ * {@link EventSet event set} containing a
+ * {@link ThreadStartEvent ThreadStartEvent}
* will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventQueue EventQueue}.
* The collection of existing ThreadStartRequests is
* managed by the {@link EventRequestManager}
*
- * @see com.sun.jdi.event.ThreadStartEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see ThreadStartEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/VMDeathRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/VMDeathRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/VMDeathRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,15 +25,16 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.EventSet;
+import com.sun.jdi.event.VMDeathEvent;
/**
* Request for notification when the target VM terminates.
* When an enabled VMDeathRequest is satisfied, an
- * {@link com.sun.jdi.event.EventSet event set} containing a
- * {@link com.sun.jdi.event.VMDeathEvent VMDeathEvent}
- * will be placed on the
- * {@link com.sun.jdi.event.EventQueue EventQueue}.
+ * {@link EventSet event set} containing a
+ * {@link VMDeathEvent VMDeathEvent}
+ * will be placed on the {@link EventQueue EventQueue}.
* The collection of existing VMDeathRequests is
* managed by the {@link EventRequestManager}
*
@@ -49,13 +50,12 @@
* to be alive (e.g. event processing). Note: the
* unsolicited VMDeathEvent will still be sent.
*
- * @see com.sun.jdi.event.VMDeathEvent
- * @see com.sun.jdi.event.EventQueue
+ * @see VMDeathEvent
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
* @since 1.4
*/
public interface VMDeathRequest extends EventRequest {
-
}
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/WatchpointRequest.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/WatchpointRequest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/WatchpointRequest.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,14 +25,19 @@
package com.sun.jdi.request;
-import com.sun.jdi.*;
+import com.sun.jdi.Field;
+import com.sun.jdi.ObjectReference;
+import com.sun.jdi.ReferenceType;
+import com.sun.jdi.ThreadReference;
+import com.sun.jdi.VirtualMachine;
+import com.sun.jdi.event.EventQueue;
/**
* Identifies a {@link Field} in the target VM being watched.
*
* @see AccessWatchpointRequest
* @see ModificationWatchpointRequest
- * @see com.sun.jdi.event.EventQueue
+ * @see EventQueue
* @see EventRequestManager
*
* @author Robert Field
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/module-info.java
--- a/jdk/src/jdk.jdi/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -45,8 +45,7 @@
* Platform Debugger Architecture documentation for this release and the Java Platform Debugger Architecture
* website.
- *
- * Global Exceptions:
+ *
* This section documents exceptions which apply to the entire API and are thus
* not documented on individual methods.
@@ -103,6 +102,21 @@
* unloaded.
*
*
+ * This module provides the equivalent of command-line access to the
+ * {@extLink jlink_tool_reference jlink} and
+ * {@extLink jmod_tool_reference jmod} tools via the
+ * {@link java.util.spi.ToolProvider ToolProvider} SPI.
+ * Instances of the tools can be obtained by calling
+ * {@link java.util.spi.ToolProvider#findFirst ToolProvider.findFirst}
+ * or the {@link java.util.ServiceLoader service loader} with the name
+ * {@code "jlink"} or {@code "jmod"} as appropriate.
+ *
+ * {@extLink jimage_tool_reference jimage} only exists
+ * as a command-line tool, and does not provide any direct API.
+ *
+ * This module allows a Java Virtual Machine to be monitored and managed
+ * via JMX API. See more information from the
+ * {@extLink monitoring_and_management_using_jmx_technology
+ * Monitoring and Management Using JMX} guide.
*
* @moduleGraph
* @since 9
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.naming.dns/share/classes/module-info.java
--- a/jdk/src/jdk.naming.dns/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.naming.dns/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,8 +24,9 @@
*/
/**
- * DNS Java Naming provider.
+ * Provides the implementation of the DNS Java Naming provider.
*
+ * @provides javax.naming.spi.InitialContextFactory
* @moduleGraph
* @since 9
*/
@@ -38,4 +39,3 @@
provides javax.naming.spi.InitialContextFactory
with com.sun.jndi.dns.DnsContextFactory;
}
-
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.naming.rmi/share/classes/module-info.java
--- a/jdk/src/jdk.naming.rmi/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.naming.rmi/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,8 +24,9 @@
*/
/**
- * RMI Java Naming provider.
+ * Provides the implementation of the RMI Java Naming provider.
*
+ * @provides javax.naming.spi.InitialContextFactory
* @moduleGraph
* @since 9
*/
@@ -39,4 +40,3 @@
exports com.sun.jndi.url.rmi to java.naming;
exports com.sun.jndi.rmi.registry to java.rmi;
}
-
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.pack/share/classes/module-info.java
--- a/jdk/src/jdk.pack/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.pack/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -25,8 +25,15 @@
/**
* Defines tools for transforming a JAR file into a compressed pack200 file
- * and transforming a packed file into a JAR file, including the pack200,
- * and unpack200 tools.
+ * and transforming a packed file into a JAR file, including the
+ * {@index pack200 pack200 tool} and
+ * {@index unpack200 unpack200 tool} tools.
+ *
+ * The zip file system provider treats a zip or JAR file as a file system
+ * and provides the ability to manipulate the contents of the file.
+ * The zip file system provider can be created by
+ * {@link java.nio.file.FileSystems#newFileSystem} if installed.
+ *
+ * @provides java.nio.file.spi.FileSystemProvider
* @moduleGraph
* @since 9
*/
module jdk.zipfs {
provides java.nio.file.spi.FileSystemProvider with jdk.nio.zipfs.ZipFileSystemProvider;
}
-
diff -r f207a3d741da -r 4261be231c01 jdk/test/ProblemList.txt
--- a/jdk/test/ProblemList.txt Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/test/ProblemList.txt Wed Jul 05 23:42:55 2017 +0200
@@ -126,6 +126,8 @@
jdk/internal/misc/JavaLangAccess/NewUnsafeString.java 8176188 generic-all
+java/lang/String/nativeEncoding/StringPlatformChars.java 8182569 windows-all,solaris-all
+
############################################################################
# jdk_instrument
diff -r f207a3d741da -r 4261be231c01 jdk/test/TEST.groups
--- a/jdk/test/TEST.groups Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/test/TEST.groups Wed Jul 05 23:42:55 2017 +0200
@@ -554,7 +554,6 @@
java/nio/charset/Charset/NIOCharsetAvailabilityTest.java \
java/nio/charset/Charset/RegisteredCharsets.java \
java/nio/charset/CharsetEncoder/Flush.java \
- java/nio/charset/coders/CheckSJISMappingProp.sh \
java/nio/charset/coders/ResetISO2022JP.java \
java/util/Locale/InternationalBAT.java \
java/util/Locale/LocaleProviders.sh \
diff -r f207a3d741da -r 4261be231c01 jdk/test/com/sun/jndi/ldap/RemoveNamingListenerTest.java
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/com/sun/jndi/ldap/RemoveNamingListenerTest.java Wed Jul 05 23:42:55 2017 +0200
@@ -0,0 +1,241 @@
+/*
+ * Copyright (c) 2011, 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+import java.io.BufferedInputStream;
+import java.io.IOException;
+import java.io.OutputStreamWriter;
+import java.io.PrintWriter;
+import java.net.ServerSocket;
+import java.net.Socket;
+import java.nio.charset.StandardCharsets;
+import java.util.ConcurrentModificationException;
+import java.util.Hashtable;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import javax.naming.event.EventContext;
+import javax.naming.event.NamingEvent;
+import javax.naming.event.NamingExceptionEvent;
+import javax.naming.event.NamingListener;
+import javax.naming.event.ObjectChangeListener;
+
+/**
+ * @test
+ * @bug 8176192
+ * @summary Incorrect usage of Iterator in Java 8 In com.sun.jndi.ldap.
+ * EventSupport.removeNamingListener
+ * @modules java.naming
+ * @run main RemoveNamingListenerTest
+ */
+public class RemoveNamingListenerTest {
+
+ private static volatile Exception exception;
+
+ public static void main(String args[]) throws Exception {
+ // start the LDAP server
+ TestLDAPServer server = new TestLDAPServer();
+ server.start();
+
+ // Set up environment for creating initial context
+ Hashtable ";
- os.write (s.getBytes());
+ fis.close();
os.close();
- t.close();
}
}
-class EchoHandler implements HttpHandler {
-
- byte[] read(InputStream is) throws IOException {
- byte[] buf = new byte[1024];
- byte[] result = new byte[0];
-
- while (true) {
- int n = is.read(buf);
- if (n > 0) {
- byte[] b1 = new byte[result.length + n];
- System.arraycopy(result, 0, b1, 0, result.length);
- System.arraycopy(buf, 0, b1, result.length, n);
- result = b1;
- } else if (n == -1) {
- return result;
- }
- }
+ void moved (HttpExchange t) throws IOException {
+ Headers req = t.getRequestHeaders();
+ Headers map = t.getResponseHeaders();
+ URI uri = t.getRequestURI();
+ String host = req.getFirst ("Host");
+ String location = "http://"+host+uri.getPath() + "/";
+ map.set ("Content-Type", "text/html");
+ map.set ("Location", location);
+ t.sendResponseHeaders (301, -1);
+ t.close();
}
- public void handle (HttpExchange t)
- throws IOException
- {
- InputStream is = t.getRequestBody();
- Headers map = t.getRequestHeaders();
- String fixedrequest = map.getFirst ("XFixed");
-
- // return the number of bytes received (no echo)
- String summary = map.getFirst ("XSummary");
- if (fixedrequest != null && summary == null) {
- byte[] in = read(is);
- t.sendResponseHeaders(200, in.length);
- OutputStream os = t.getResponseBody();
- os.write(in);
- os.close();
- is.close();
- } else {
- OutputStream os = t.getResponseBody();
- byte[] buf = new byte[64 * 1024];
- t.sendResponseHeaders(200, 0);
- int n, count=0;;
-
- while ((n = is.read(buf)) != -1) {
- if (summary == null) {
- os.write(buf, 0, n);
- }
- count += n;
- }
- if (summary != null) {
- String s = Integer.toString(count);
- os.write(s.getBytes());
- }
- os.close();
- is.close();
- }
+ void notfound (HttpExchange t, String p) throws IOException {
+ t.getResponseHeaders().set ("Content-Type", "text/html");
+ t.sendResponseHeaders (404, 0);
+ OutputStream os = t.getResponseBody();
+ String s = " ";
+ os.write (s.getBytes());
+ os.close();
+ t.close();
}
}
-
diff -r f207a3d741da -r 4261be231c01 jdk/test/com/sun/net/httpserver/SimpleFileServer.java
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/com/sun/net/httpserver/SimpleFileServer.java Wed Jul 05 23:42:55 2017 +0200
@@ -0,0 +1,73 @@
+/*
+ * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.util.*;
+import java.util.concurrent.*;
+import java.util.logging.*;
+import java.io.*;
+import java.net.*;
+import java.security.*;
+import javax.net.ssl.*;
+import com.sun.net.httpserver.*;
+
+/**
+ * Implements a basic static content HTTP server
+ * which understands text/html, text/plain content types
+ *
+ * Must be given an abs pathname to the document root.
+ * Directory listings together with text + html files
+ * can be served.
+ *
+ * File Server created on files sub-path
+ *
+ * Echo server created on echo sub-path
+ */
+public class SimpleFileServer {
+
+ public static void main (String[] args) throws Exception {
+ if (args.length != 3) {
+ System.out.println ("usage: java FileServerHandler rootDir port logfilename");
+ System.exit(1);
+ }
+ Logger logger = Logger.getLogger("com.sun.net.httpserver");
+ ConsoleHandler ch = new ConsoleHandler();
+ logger.setLevel(Level.ALL);
+ ch.setLevel(Level.ALL);
+ logger.addHandler(ch);
+
+ String rootDir = args[0];
+ int port = Integer.parseInt (args[1]);
+ String logfile = args[2];
+ HttpServer server = HttpServer.create (new InetSocketAddress (port), 0);
+ HttpHandler h = new FileServerHandler (rootDir);
+ HttpHandler h1 = new EchoHandler ();
+
+ HttpContext c = server.createContext ("/files", h);
+ c.getFilters().add (new LogFilter (new File (logfile)));
+ HttpContext c1 = server.createContext ("/echo", h1);
+ c.getFilters().add (new LogFilter (new File (logfile)));
+ c1.getFilters().add (new LogFilter (new File (logfile)));
+ server.setExecutor (Executors.newCachedThreadPool());
+ server.start ();
+ }
+}
diff -r f207a3d741da -r 4261be231c01 jdk/test/java/awt/List/ItemEventTest/ItemEventTest.java
--- a/jdk/test/java/awt/List/ItemEventTest/ItemEventTest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/test/java/awt/List/ItemEventTest/ItemEventTest.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,7 +24,7 @@
/*
* @test
* @key headful
- * @bug 8033936
+ * @bug 8033936 8172510
* @summary Verify that correct ItemEvent is received while selection &
* deselection of multi select List items.
*/
@@ -109,14 +109,16 @@
boolean isMac = osName.contains("Mac") || osName.contains("mac");
if(isMac) {
robot.keyPress(KeyEvent.VK_META);
+ robot.waitForIdle();
}
// First loop to select & Second loop to deselect the list items.
for (int j = 0; j < 2; ++j) {
for (int i = 0; i < list.getItemCount(); ++i) {
robot.mouseMove(loc.x, loc.y + i * dY);
+ robot.waitForIdle();
robot.mousePress(InputEvent.BUTTON1_MASK);
- robot.delay(100);
+ robot.waitForIdle();
robot.mouseRelease(InputEvent.BUTTON1_MASK);
robot.waitForIdle();
}
diff -r f207a3d741da -r 4261be231c01 jdk/test/java/awt/print/PageFormat/WrongPaperPrintingTest.java
--- a/jdk/test/java/awt/print/PageFormat/WrongPaperPrintingTest.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/test/java/awt/print/PageFormat/WrongPaperPrintingTest.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,6 +24,7 @@
/* @test
@bug 8167102
@summary PrintRequestAttributeSet breaks page size set using PageFormat
+ @ignore Exclude the test until 8167102 is resolved by a new reassessed fix
@run main/manual WrongPaperPrintingTest
*/
diff -r f207a3d741da -r 4261be231c01 jdk/test/java/io/File/Basic.java
--- a/jdk/test/java/io/File/Basic.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/test/java/io/File/Basic.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -22,13 +22,13 @@
*/
/* @test
- @bug 4165666 4203706 4288670 4290024
- @summary Basic heartbeat test for File methods that access the filesystem
-
- @build Basic Util
- @run shell basic.sh
+ * @bug 4165666 4203706 4288670 4290024
+ * @summary Basic heartbeat test for File methods that access the filesystem
+ * @build Basic Util
+ * @run main/othervm Basic
*/
+import java.io.FileOutputStream;
import java.io.IOException;
import java.io.File;
import java.io.PrintStream;
@@ -39,13 +39,13 @@
static PrintStream out = System.err;
- static File nonExistantFile = new File("x.Basic.non");
static File rwFile = new File("x.Basic.rw");
static File bigFile = new File("x.Basic.big");
static File roFile = new File("x.Basic.ro");
static File thisDir = new File(".");
static File dir = new File("x.Basic.dir");
- static File nonDir = new File("x.Basic.nonDir");
+ static File dir2 = new File("x.Basic.dir2");
+ static byte bytes[] = new byte[] {1, 2, 3, 4, 5, 6};
static void showBoolean(String what, boolean value) {
out.println(" " + what + ": " + value);
@@ -75,7 +75,6 @@
if (!f.canRead()) fail(f, "is not readable");
if (!Util.isPrivileged() && f.canWrite() != writeable)
fail(f, writeable ? "is not writeable" : "is writeable");
- int rwLen = 6;
if (f.length() != length) fail(f, "has wrong length");
}
@@ -83,16 +82,31 @@
throw new Exception(f + " " + why);
}
- public static void main(String[] args) throws Exception {
+ static void setup() throws Exception {
+ rwFile.delete();
+ bigFile.delete();
+ roFile.delete();
+ thisDir.delete();
+ dir.delete();
+ dir2.delete();
- show(nonExistantFile);
- if (nonExistantFile.exists()) fail(nonExistantFile, "exists");
+ try (FileOutputStream fos = new FileOutputStream(rwFile)) {
+ fos.write(bytes);
+ }
+
+ roFile.createNewFile();
+ roFile.setReadOnly();
+ }
+
+ public static void main(String[] args) throws Exception {
+ setup();
show(rwFile);
- testFile(rwFile, true, 6);
+ testFile(rwFile, true, bytes.length);
rwFile.delete();
- if (rwFile.exists())
+ if (rwFile.exists()) {
fail(rwFile, "could not delete");
+ }
show(roFile);
testFile(roFile, false, 0);
@@ -106,20 +120,21 @@
String[] fs = thisDir.list();
if (fs == null) fail(thisDir, "list() returned null");
out.print(" [" + fs.length + "]");
- for (int i = 0; i < fs.length; i++)
+ for (int i = 0; i < fs.length; i++) {
out.print(" " + fs[i]);
+ }
out.println();
if (fs.length == 0) fail(thisDir, "is empty");
- if (!nonExistantFile.createNewFile())
- fail(nonExistantFile, "could not create");
- nonExistantFile.deleteOnExit();
-
- if (!nonDir.mkdir())
- fail(nonDir, "could not create");
-
- if (!dir.renameTo(new File("x.Basic.dir2")))
+ if (!dir.mkdir() || !dir.exists() || !dir.isDirectory()) {
+ fail(dir, "could not create");
+ }
+ if (!dir.renameTo(dir2)) {
fail(dir, "failed to rename");
+ }
+ if (dir.exists() || !dir2.exists() || !dir2.isDirectory()) {
+ fail(dir, "not renamed");
+ }
if (System.getProperty("os.name").equals("SunOS")
&& System.getProperty("os.version").compareTo("5.6") >= 0) {
diff -r f207a3d741da -r 4261be231c01 jdk/test/java/io/File/MacPath.java
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/java/io/File/MacPath.java Wed Jul 05 23:42:55 2017 +0200
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 7130915
+ * @summary Tests file path with nfc/nfd forms on MacOSX
+ * @requires (os.family == "mac")
+ * @library /test/lib
+ * @build jdk.test.lib.Asserts jdk.test.lib.process.ProcessTools MacPathTest
+ * @run main MacPath
+ */
+
+import java.util.Map;
+
+import jdk.test.lib.Asserts;
+import jdk.test.lib.process.ProcessTools;
+
+public class MacPath {
+ public static void main(String args[]) throws Exception {
+ final ProcessBuilder pb =
+ ProcessTools.createJavaProcessBuilder(true, MacPathTest.class.getName());
+ final MapObjectReference
or which directly or indirectly takes
- * ObjectReference
as parameter may throw
- * {@link com.sun.jdi.ObjectCollectedException} if the mirrored object has been
+ * Any method on ObjectReference
or which directly or indirectly
+ * takes ObjectReference
as parameter may throw
+ * {@link ObjectCollectedException} if the mirrored object has been
* garbage collected.
*
* @author Robert Field
@@ -422,7 +425,6 @@
*/
ListReferenceType
which directly or
* indirectly takes ReferenceType
as an parameter may throw
- * {@link com.sun.jdi.VMDisconnectedException} if the target VM is
- * disconnected and the {@link com.sun.jdi.event.VMDisconnectEvent} has been or is
- * available to be read from the {@link com.sun.jdi.event.EventQueue}.
+ * {@link VMDisconnectedException} if the target VM is
+ * disconnected and the {@link VMDisconnectEvent} has been or is
+ * available to be read from the {@link EventQueue}.
* ReferenceType
which directly or
* indirectly takes ReferenceType
as an parameter may throw
- * {@link com.sun.jdi.VMOutOfMemoryException} if the target VM has run out of memory.
+ * {@link VMOutOfMemoryException} if the target VM has run out of memory.
* ReferenceType
or which directly or indirectly takes
* ReferenceType
as parameter may throw
- * {@link com.sun.jdi.ObjectCollectedException} if the mirrored type has been unloaded.
+ * {@link ObjectCollectedException} if the mirrored type has been unloaded.
*
* @see ObjectReference
* @see ObjectReference#referenceType
@@ -80,7 +83,6 @@
public interface ReferenceType
extends Type, ComparableStackFrame
which
* takes StackFrame
as an parameter may throw
- * {@link com.sun.jdi.VMDisconnectedException} if the target VM is
- * disconnected and the {@link com.sun.jdi.event.VMDisconnectEvent} has been or is
- * available to be read from the {@link com.sun.jdi.event.EventQueue}.
+ * {@link VMDisconnectedException} if the target VM is
+ * disconnected and the {@link VMDisconnectEvent} has been or is
+ * available to be read from the {@link EventQueue}.
* StackFrame
which
* takes StackFrame
as an parameter may throw
- * {@link com.sun.jdi.VMOutOfMemoryException} if the target VM has run out of memory.
+ * {@link VMOutOfMemoryException} if the target VM has run out of memory.
*
* @author Robert Field
* @author Gordon Hirsch
@@ -235,5 +238,4 @@
* @since 1.6
*/
List
@@ -170,6 +172,7 @@
*/
public interface Value extends Mirror {
+
/**
* Returns the run-time type of this value.
*
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachine.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachine.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachine.java Wed Jul 05 23:42:55 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,13 +25,26 @@
package com.sun.jdi;
-import com.sun.jdi.event.EventQueue;
-import com.sun.jdi.ModuleReference;
-import com.sun.jdi.request.EventRequestManager;
-
import java.util.List;
import java.util.Map;
+import com.sun.jdi.connect.AttachingConnector;
+import com.sun.jdi.connect.Connector;
+import com.sun.jdi.connect.LaunchingConnector;
+import com.sun.jdi.connect.spi.Connection;
+import com.sun.jdi.event.EventQueue;
+import com.sun.jdi.event.MethodExitEvent;
+import com.sun.jdi.event.VMDisconnectEvent;
+import com.sun.jdi.event.VMStartEvent;
+import com.sun.jdi.request.BreakpointRequest;
+import com.sun.jdi.request.ClassPrepareRequest;
+import com.sun.jdi.request.EventRequestManager;
+import com.sun.jdi.request.MonitorContendedEnterRequest;
+import com.sun.jdi.request.MonitorContendedEnteredRequest;
+import com.sun.jdi.request.MonitorWaitRequest;
+import com.sun.jdi.request.MonitorWaitedRequest;
+import com.sun.jdi.request.VMDeathRequest;
+
/**
* A virtual machine targeted for debugging.
* More precisely, a {@link Mirror mirror} representing the
@@ -44,27 +57,27 @@
* are supported directly by this interface.
*
*
- * {@link ObjectReference#getValue(com.sun.jdi.Field)
+ * {@link ObjectReference#getValue(Field)
* ObjectReference.getValue(Field)}
* - value of a field
*
- * {@link StackFrame#getValue(com.sun.jdi.LocalVariable)
+ * {@link StackFrame#getValue(LocalVariable)
* StackFrame.getValue(LocalVariable)}
* - value of a variable
*
@@ -45,7 +47,7 @@
* VirtualMachine.mirrorOf(double)}
* - created in the target VM by the JDI client
*
- * {@link com.sun.jdi.event.ModificationWatchpointEvent#valueToBe()
+ * {@link ModificationWatchpointEvent#valueToBe()
* ModificationWatchpointEvent.valueToBe()}
* - returned with an event
* VirtualMachine
which
* takes VirtualMachine
as an parameter may throw
- * {@link com.sun.jdi.VMDisconnectedException} if the target VM is
- * disconnected and the {@link com.sun.jdi.event.VMDisconnectEvent} has been or is
- * available to be read from the {@link com.sun.jdi.event.EventQueue}.
+ * {@link VMDisconnectedException} if the target VM is
+ * disconnected and the {@link VMDisconnectEvent} has been or is
+ * available to be read from the {@link EventQueue}.
* VirtualMachine
which
* takes VirtualMachine
as an parameter may throw
- * {@link com.sun.jdi.VMOutOfMemoryException} if the target VM has run out of memory.
+ * {@link VMOutOfMemoryException} if the target VM has run out of memory.
*
* @author Robert Field
* @author Gordon Hirsch
@@ -431,12 +444,10 @@
/**
* Returns the {@link java.lang.Process} object for this
- * virtual machine if launched
- * by a {@link com.sun.jdi.connect.LaunchingConnector}
+ * virtual machine if launched by a {@link LaunchingConnector}
*
* @return the {@link java.lang.Process} object for this virtual
- * machine, or null if it was not launched by a
- * {@link com.sun.jdi.connect.LaunchingConnector}.
+ * machine, or null if it was not launched by a {@link LaunchingConnector}.
* @throws VMCannotBeModifiedException if the VirtualMachine is read-only
* -see {@link VirtualMachine#canBeModified()}.
*/
@@ -552,7 +563,7 @@
/**
* Determines if the target VM supports filtering
* events by specific instance object. For example,
- * see {@link com.sun.jdi.request.BreakpointRequest#addInstanceFilter}.
+ * see {@link BreakpointRequest#addInstanceFilter}.
*
* @return true
if the feature is supported,
* false
otherwise.
@@ -621,8 +632,8 @@
/**
* Determines if the target VM supports the creation of
- * {@link com.sun.jdi.request.VMDeathRequest}s.
- * @see com.sun.jdi.request.EventRequestManager#createVMDeathRequest
+ * {@link VMDeathRequest}s.
+ * @see EventRequestManager#createVMDeathRequest
*
* @return true
if the feature is supported,
* false
otherwise.
@@ -634,8 +645,8 @@
/**
* Determines if the target VM supports the inclusion of return values
* in
- * {@link com.sun.jdi.event.MethodExitEvent}s.
- * @see com.sun.jdi.request.EventRequestManager#createMethodExitRequest
+ * {@link MethodExitEvent}s.
+ * @see EventRequestManager#createMethodExitRequest
*
* @return true
if the feature is supported,
* false
otherwise.
@@ -659,12 +670,11 @@
*/
boolean canGetInstanceInfo();
-
/**
* Determines if the target VM supports the filtering of
* class prepare events by source name.
*
- * see {@link com.sun.jdi.request.ClassPrepareRequest#addSourceNameFilter}.
+ * see {@link ClassPrepareRequest#addSourceNameFilter}.
* @return true
if the feature is supported,
* false
otherwise.
*
@@ -700,14 +710,14 @@
/**
* Determines if the target VM supports the creation of
- * {@link com.sun.jdi.request.MonitorContendedEnterRequest}s.
- * {@link com.sun.jdi.request.MonitorContendedEnteredRequest}s.
- * {@link com.sun.jdi.request.MonitorWaitRequest}s.
- * {@link com.sun.jdi.request.MonitorWaitedRequest}s.
- * @see com.sun.jdi.request.EventRequestManager#createMonitorContendedEnterRequest
- * @see com.sun.jdi.request.EventRequestManager#createMonitorContendedEnteredRequest
- * @see com.sun.jdi.request.EventRequestManager#createMonitorWaitRequest
- * @see com.sun.jdi.request.EventRequestManager#createMonitorWaitedRequest
+ * {@link MonitorContendedEnterRequest}s.
+ * {@link MonitorContendedEnteredRequest}s.
+ * {@link MonitorWaitRequest}s.
+ * {@link MonitorWaitedRequest}s.
+ * @see EventRequestManager#createMonitorContendedEnterRequest
+ * @see EventRequestManager#createMonitorContendedEnteredRequest
+ * @see EventRequestManager#createMonitorWaitRequest
+ * @see EventRequestManager#createMonitorWaitedRequest
*
* @return true
if the feature is supported,
* false
otherwise.
@@ -720,7 +730,7 @@
/**
* Determines if the target VM supports getting which
* frame has acquired a monitor.
- * @see com.sun.jdi.ThreadReference#ownedMonitorsAndFrames
+ * @see ThreadReference#ownedMonitorsAndFrames
*
* @return true
if the feature is supported,
* false
otherwise.
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java Wed Jul 05 23:42:55 2017 +0200
@@ -25,10 +25,18 @@
package com.sun.jdi;
-import com.sun.jdi.connect.*;
+import java.io.IOException;
+import java.util.List;
+
+import com.sun.jdi.connect.AttachingConnector;
+import com.sun.jdi.connect.Connector;
+import com.sun.jdi.connect.LaunchingConnector;
+import com.sun.jdi.connect.ListeningConnector;
+import com.sun.jdi.connect.Transport;
import com.sun.jdi.connect.spi.Connection;
-import java.util.List;
-import java.io.IOException;
+import com.sun.jdi.connect.spi.TransportService;
+import com.sun.jdi.event.VMDisconnectEvent;
+import com.sun.jdi.event.VMStartEvent;
/**
* A manager of connections to target virtual machines. The
@@ -41,14 +49,14 @@
* mirror for available target VMs.
*
@@ -59,8 +67,7 @@
*
* Debugger launches target VM (simplest, most-common scenario)
*
- * Debugger calls the
- * {@link com.sun.jdi.connect.LaunchingConnector#launch(java.util.Map)}
+ * Debugger calls the {@link LaunchingConnector#launch(java.util.Map)}
* method of the default connector, obtained with {@link #defaultConnector}. The
* target VM is launched, and a connection between that VM and the
* debugger is established. A {@link VirtualMachine} mirror is returned.
@@ -71,8 +78,7 @@
* {@link #launchingConnectors} with desired characteristics
* (for example, transport type, etc.).
*
@@ -166,12 +171,12 @@
* the name "xxx".
* Global Exceptions
* jdb
+ *
+ * {@index jdb jdb tool} is a simple command-line debugger provided
+ * in this module.
+ *
+ *
+ *
+ *
+ * @provides com.sun.jdi.connect.Connector
+ *
+ * @uses com.sun.jdi.connect.Connector
+ * @uses com.sun.jdi.connect.spi.TransportService
+ *
* @moduleGraph
* @since 9
*/
@@ -127,4 +141,3 @@
com.sun.tools.jdi.SocketListeningConnector,
com.sun.tools.jdi.SunCommandLineLauncher;
}
-
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdwp.agent/share/classes/module-info.java
--- a/jdk/src/jdk.jdwp.agent/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdwp.agent/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,11 +24,12 @@
*/
/**
- * Java Debug Wire Protocol.
+ * Provides the implementation of the Java Debug Wire Protocol (JDWP) agent.
*
* @moduleGraph
* @since 9
+ * @see JDWP Specification
+ * @see JDWP Transport Specification
*/
module jdk.jdwp.agent {
}
-
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jdwp.agent/share/native/libjdwp/invoker.c
--- a/jdk/src/jdk.jdwp.agent/share/native/libjdwp/invoker.c Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jdwp.agent/share/native/libjdwp/invoker.c Wed Jul 05 23:42:55 2017 +0200
@@ -212,30 +212,6 @@
}
/*
- * Delete saved global references - if any - for:
- * - a potentially thrown Exception
- * - a returned refernce/array value
- * See invoker_doInvoke() and invoke* methods where global references
- * are being saved.
- */
-static void
-deletePotentiallySavedGlobalRefs(JNIEnv *env, InvokeRequest *request)
-{
- /* Delete potentially saved return value */
- if ((request->invokeType == INVOKE_CONSTRUCTOR) ||
- (returnTypeTag(request->methodSignature) == JDWP_TAG(OBJECT)) ||
- (returnTypeTag(request->methodSignature) == JDWP_TAG(ARRAY))) {
- if (request->returnValue.l != NULL) {
- tossGlobalRef(env, &(request->returnValue.l));
- }
- }
- /* Delete potentially saved exception */
- if (request->exception != NULL) {
- tossGlobalRef(env, &(request->exception));
- }
-}
-
-/*
* Delete global argument references from the request which got put there before a
* invoke request was carried out. See fillInvokeRequest().
*/
@@ -782,6 +758,7 @@
jint id;
InvokeRequest *request;
jboolean detached;
+ jboolean mustReleaseReturnValue = JNI_FALSE;
JDI_ASSERT(thread);
@@ -825,6 +802,13 @@
id = request->id;
exc = request->exception;
returnValue = request->returnValue;
+
+ /* Release return value and exception references, but delay the release
+ * until after the return packet was sent. */
+ mustReleaseReturnValue = request->invokeType == INVOKE_CONSTRUCTOR ||
+ returnTypeTag(request->methodSignature) == JDWP_TAG(OBJECT) ||
+ returnTypeTag(request->methodSignature) == JDWP_TAG(ARRAY);
+
}
/*
@@ -839,6 +823,12 @@
*/
deleteGlobalArgumentRefs(env, request);
+ /* From now on, do not access the request structure anymore
+ * for this request id, because once we give up the invokerLock it may
+ * be immediately reused by a new invoke request.
+ */
+ request = NULL;
+
/*
* Give up the lock before I/O operation
*/
@@ -859,7 +849,12 @@
*/
eventHandler_lock(); // for proper lock order
debugMonitorEnter(invokerLock);
- deletePotentiallySavedGlobalRefs(env, request);
+ if (mustReleaseReturnValue && returnValue.l != NULL) {
+ tossGlobalRef(env, &returnValue.l);
+ }
+ if (exc != NULL) {
+ tossGlobalRef(env, &exc);
+ }
debugMonitorExit(invokerLock);
eventHandler_unlock();
}
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jlink/share/classes/module-info.java
--- a/jdk/src/jdk.jlink/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jlink/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,7 +24,31 @@
*/
/**
- * Defines the Java linker tool, jlink.
+ * Defines the {@index jlink jlink tool} tool for creating run-time
+ * images, the {@index jmod jmod tool} tool for creating and manipulating
+ * JMOD files, and the {@index jimage jimage tool} tool for inspecting
+ * the JDK implementation-specific container file for classes and resources.
+ *
+ *
+ *
+ *
+ * @provides java.util.spi.ToolProvider
*
* @moduleGraph
* @since 9
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.jstatd/share/classes/module-info.java
--- a/jdk/src/jdk.jstatd/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.jstatd/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,8 +24,13 @@
*/
/**
- * Defines the tool for starting a daemon for the jstat tool to monitor
- * JVM statistics remotely.
+ * Defines the {@index jstatd jstatd tool} tool for starting a daemon
+ * for the jstat tool to monitor JVM statistics remotely.
+ *
+ *
+ *
*
* @moduleGraph
* @since 9
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.localedata/share/classes/module-info.java
--- a/jdk/src/jdk.localedata/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.localedata/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,7 +24,7 @@
*/
/**
- * Locale data provider for locales other than {@linkplain java.util.Locale#US US locale}.
+ * Provides the locale data for locales other than {@linkplain java.util.Locale#US US locale}.
*
* @moduleGraph
* @since 9
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.management.agent/share/classes/module-info.java
--- a/jdk/src/jdk.management.agent/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.management.agent/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,7 +24,12 @@
*/
/**
- * Define the JMX management agent.
+ * Defines the JMX management agent.
+ *
+ *
+ *
*
* @moduleGraph
* @since 9
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.policytool/share/classes/module-info.java
--- a/jdk/src/jdk.policytool/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.policytool/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,7 +24,13 @@
*/
/**
- * GUI tool for managing policy files.
+ * Defines the GUI tool for managing policy files
+ * called {@index policytool policytool}.
+ *
+ *
+ *
*
* @since 9
* @deprecated
@@ -39,4 +45,3 @@
requires java.security.jgss;
requires jdk.security.jgss;
}
-
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.rmic/share/classes/module-info.java
--- a/jdk/src/jdk.rmic/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.rmic/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,10 +24,15 @@
*/
/**
- * Defines the rmic compiler for generating stubs and skeletons using
- * the Java Remote Method Protocol (JRMP) and
+ * Defines the {@index rmic rmic} compiler for generating stubs and
+ * skeletons using the Java Remote Method Protocol (JRMP) and
* stubs and tie class files (IIOP protocol) for remote objects.
*
+ *
+ *
+ *
* @moduleGraph
* @since 9
*/
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.security.auth/share/classes/module-info.java
--- a/jdk/src/jdk.security.auth/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.security.auth/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,9 +24,10 @@
*/
/**
- * Contains the implementation of the javax.security.auth.* interfaces and
- * various authentication modules.
+ * Provides the implementation of the {@code javax.security.auth.*}
+ * interfaces and various authentication modules.
*
+ * @provides javax.security.auth.spi.LoginModule
* @moduleGraph
* @since 9
*/
@@ -47,4 +48,3 @@
com.sun.security.auth.module.LdapLoginModule,
com.sun.security.auth.module.NTLoginModule;
}
-
diff -r f207a3d741da -r 4261be231c01 jdk/src/jdk.zipfs/share/classes/module-info.java
--- a/jdk/src/jdk.zipfs/share/classes/module-info.java Wed Jul 05 23:42:41 2017 +0200
+++ b/jdk/src/jdk.zipfs/share/classes/module-info.java Wed Jul 05 23:42:55 2017 +0200
@@ -24,12 +24,17 @@
*/
/**
- * Zip file system provider.
+ * Provides the implementation of the zip file system provider.
*
+ * Directory listing for: " + path+ "
");
+ p.println ("");
+ for (int i=0; i
Directory listing for: " + path+ "
");
- p.println ("");
- for (int i=0; i
");
- p.flush();
- p.close();
+ p.println ("
");
+ p.flush();
+ p.close();
+ } else {
+ int clen;
+ if (fixedrequest != null) {
+ clen = (int) f.length();
} else {
- int clen;
- if (fixedrequest != null) {
- clen = (int) f.length();
- } else {
- clen = 0;
- }
- t.sendResponseHeaders (200, clen);
- OutputStream os = t.getResponseBody();
- FileInputStream fis = new FileInputStream (f);
- int count = 0;
- try {
+ clen = 0;
+ }
+ t.sendResponseHeaders (200, clen);
+ OutputStream os = t.getResponseBody();
+ FileInputStream fis = new FileInputStream (f);
+ int count = 0;
+ try {
byte[] buf = new byte [16 * 1024];
int len;
while ((len=fis.read (buf)) != -1) {
os.write (buf, 0, len);
count += len;
}
- } catch (IOException e) {
- e.printStackTrace();
- }
- fis.close();
- os.close();
+ } catch (IOException e) {
+ e.printStackTrace();
}
- }
-
- void moved (HttpExchange t) throws IOException {
- Headers req = t.getRequestHeaders();
- Headers map = t.getResponseHeaders();
- URI uri = t.getRequestURI();
- String host = req.getFirst ("Host");
- String location = "http://"+host+uri.getPath() + "/";
- map.set ("Content-Type", "text/html");
- map.set ("Location", location);
- t.sendResponseHeaders (301, -1);
- t.close();
- }
-
- void notfound (HttpExchange t, String p) throws IOException {
- t.getResponseHeaders().set ("Content-Type", "text/html");
- t.sendResponseHeaders (404, 0);
- OutputStream os = t.getResponseBody();
- String s = "File not found
";
- s = s + p + "File not found
";
+ s = s + p + "