8080901: Replace package.html files with package-info.java in the java.base module
authordarcy
Fri, 22 May 2015 10:45:59 -0700
changeset 30788 ea573d35531a
parent 30787 758feb62a4b0
child 30789 9eca83469588
8080901: Replace package.html files with package-info.java in the java.base module Reviewed-by: lancea, alanb, vinnie
jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/package-info.java
jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/package.html
jdk/src/java.base/share/classes/com/sun/net/ssl/package-info.java
jdk/src/java.base/share/classes/com/sun/net/ssl/package.html
jdk/src/java.base/share/classes/java/io/package-info.java
jdk/src/java.base/share/classes/java/io/package.html
jdk/src/java.base/share/classes/java/lang/ref/package-info.java
jdk/src/java.base/share/classes/java/lang/ref/package.html
jdk/src/java.base/share/classes/java/nio/channels/spi/package-info.java
jdk/src/java.base/share/classes/java/nio/channels/spi/package.html
jdk/src/java.base/share/classes/java/nio/charset/package-info.java
jdk/src/java.base/share/classes/java/nio/charset/package.html
jdk/src/java.base/share/classes/java/nio/charset/spi/package-info.java
jdk/src/java.base/share/classes/java/nio/charset/spi/package.html
jdk/src/java.base/share/classes/java/nio/package-info.java
jdk/src/java.base/share/classes/java/nio/package.html
jdk/src/java.base/share/classes/java/text/package-info.java
jdk/src/java.base/share/classes/java/text/package.html
jdk/src/java.base/share/classes/java/text/spi/package-info.java
jdk/src/java.base/share/classes/java/text/spi/package.html
jdk/src/java.base/share/classes/java/util/jar/package-info.java
jdk/src/java.base/share/classes/java/util/jar/package.html
jdk/src/java.base/share/classes/java/util/package-info.java
jdk/src/java.base/share/classes/java/util/package.html
jdk/src/java.base/share/classes/java/util/regex/package-info.java
jdk/src/java.base/share/classes/java/util/regex/package.html
jdk/src/java.base/share/classes/java/util/spi/package-info.java
jdk/src/java.base/share/classes/java/util/spi/package.html
jdk/src/java.base/share/classes/javax/crypto/interfaces/package-info.java
jdk/src/java.base/share/classes/javax/crypto/interfaces/package.html
jdk/src/java.base/share/classes/javax/crypto/package-info.java
jdk/src/java.base/share/classes/javax/crypto/package.html
jdk/src/java.base/share/classes/javax/crypto/spec/package-info.java
jdk/src/java.base/share/classes/javax/crypto/spec/package.html
jdk/src/java.base/share/classes/javax/net/package-info.java
jdk/src/java.base/share/classes/javax/net/package.html
jdk/src/java.base/share/classes/javax/net/ssl/package-info.java
jdk/src/java.base/share/classes/javax/net/ssl/package.html
jdk/src/java.base/share/classes/sun/reflect/package.html
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,101 @@
+/*
+ * Copyright (c) 2003, 2011, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * This package provides methods to read files from a JAR file and to
+ * transform them to a more compact transfer format called Pack200.
+ * It also provides methods to receive the transmitted data and expand
+ * it into a JAR file equivalent to the original JAR file.
+ *
+ * <p>
+ * The {@code pack} methods may be used by application developers who
+ * wish to deploy large JARs on the web.  The {@code unpack} methods
+ * may be used by deployment applications such as Java Web Start and
+ * Java Plugin.
+ *
+ * <p>
+ * In typical use, the packed output should be further compressed
+ * using a suitable tool such as gzip or
+ * {@code java.util.zip.GZIPOutputStream}.  The resulting file (with
+ * a suffix ".pack.gz") should be hosted on a HTTP/1.1 compliant
+ * server, which will be capable of handling "Accept-Encoding", as
+ * specified by the HTTP 1.1 RFC2616 specification.
+ *
+ * <p>
+ * <b>NOTE:</b> It is recommended that the original ".jar" file be
+ * hosted in addition to the ".pack.gz" file, so that older client
+ * implementations will continue to work reliably.  (On-demand
+ * compression by the server is not recommended.)
+ *
+ * <p>
+ * When a client application requests a ".jar" file (call it
+ * "Large.jar"), the client will transmit the headers
+ * "Content-Type=application/x-java-archive" as well as
+ * "Accept-Encoding=pack200-gzip".  This indicates to the server that
+ * the client application desires an version of the file encoded with
+ * Pack200 and further compressed with gzip.
+ *
+ * <p>
+ * The server implementation will typically check for the existence of
+ * "Large.pack.gz".  If that file is available, the server will
+ * transmit it with the headers "Content-Encoding=pack200-gzip" and
+ * "Content-Type=application/x-java-archive".
+ *
+ * <p>
+ * If the ".pack.gz" file, is not available, then the server will
+ * transmit the original ".jar" with "Content-Encoding=null" and
+ * "Content-Type=application/x-java-archive".
+ *
+ * <p>
+ * A MIME type of "application/x-java-pack200" may be specified by the
+ * client application to indicate a ".pack" file is required.
+ * However, this has limited capability, and is not recommended.
+ *
+ * <h2> Package Specification</h2>
+ * Network Transfer Format Specification :<a href="http://jcp.org/en/jsr/detail?id=200">
+ * http://jcp.org/en/jsr/detail?id=200</a>
+ *
+ * <h2> Related Documentation</h2>
+ * For overviews, tutorials, examples, guides, and tool documentation, please
+ * see:
+ * <ul>
+ *
+ * <li>
+ * Jar File Specification :<a href="http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html">
+ * http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html</a></li>
+ *
+ * <li>
+ * Class File Specification: Chapter 4 of
+ * <em>The Java&trade; Virtual Machine Specification</em>
+ *
+ * <li>
+ * Hypertext Transfer Protocol -- HTTP/1.1 : <a href="http://www.ietf.org/rfc/rfc2616.txt">
+ * http://www.ietf.org/rfc/rfc2616.txt
+ * </ul>
+ *
+ * <li>
+ * @since 1.5</li>
+ */
+package com.sun.java.util.jar.pack;
--- a/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,104 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-<!--
- 
-Copyright (c) 2003, 2011, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-</head>
-<body bgcolor="white">
-<p>
-This package provides methods to read files from a JAR file and
-to transform them to a more compact transfer format called Pack200.
-It also provides methods to receive the transmitted data and expand
-it into a JAR file equivalent to the original JAR file.
-
-<p> 
-The <tt>pack</tt> methods may be used by application developers
-who wish to deploy large JARs on the web.  The <tt>unpack</tt> methods may be used 
-by deployment applications such as Java Web Start and Java Plugin.
-
-<p>
-In typical use, the packed output should be further compressed using
-a suitable tool such as gzip or <tt>java.util.zip.GZIPOutputStream</tt>.
-The resulting file (with a suffix ".pack.gz") should be hosted on a HTTP/1.1
-compliant server, which will be capable of handling "Accept-Encoding",
-as specified by the HTTP 1.1 RFC2616 specification.
-
-<p>
-<b>NOTE:</b> It is recommended that the original ".jar" file be hosted
-in addition to the ".pack.gz" file, so that older client implementations
-will continue to work reliably.
-(On-demand compression by the server is not recommended.)
-
-<p>
-When a client application requests a ".jar" file (call it "Large.jar"),
-the client will transmit the  headers
-"Content-Type=application/x-java-archive" as well as "Accept-Encoding=pack200-gzip".
-This indicates to the server that the client application desires an version
-of the file encoded with Pack200 and further compressed with gzip.
-
-<p>
-The server implementation will typically check for the existence of "Large.pack.gz".
-If that file is available, the server will transmit it with the headers
-"Content-Encoding=pack200-gzip" and "Content-Type=application/x-java-archive". 
-
-<p>
-If the ".pack.gz" file, is not available, then the server will transmit
-the original ".jar"
-with "Content-Encoding=null" and "Content-Type=application/x-java-archive".
-
-<p>
-A MIME type of "application/x-java-pack200" may be specified by the
-client application to indicate a ".pack" file is required.
-However, this has limited capability, and is not recommended.
-
-<h2> Package Specification</h2>
-Network Transfer Format Specification :<a href="http://jcp.org/en/jsr/detail?id=200">
-http://jcp.org/en/jsr/detail?id=200</a>
-
-<h2> Related Documentation</h2>
-For overviews, tutorials, examples, guides, and tool documentation, please
-see:
-<ul>
-
-<li>
-Jar File Specification :<a href="http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html">
-http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html</a></li>
-
-<li>
-Class File Specification: Chapter 4 of
-<em>The Java&trade; Virtual Machine Specification</em>
-
-<li>
-Hypertext Transfer Protocol -- HTTP/1.1 : <a href="http://www.ietf.org/rfc/rfc2616.txt">
-http://www.ietf.org/rfc/rfc2616.txt
-</ul>
-
-<li>
-@since 1.5</li>
-
-<br><!-- Put @see and @since tags down here. -->
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/com/sun/net/ssl/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,31 @@
+/*
+ * Copyright (c) 1999, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides classes related to creating and configuring secure socket
+ * factories.  These classes are used with the Sun reference
+ * implementation of the Java Secure Socket Extension (JSSE).
+ */
+package com.sun.net.ssl;
--- a/jdk/src/java.base/share/classes/com/sun/net/ssl/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<!--
-
-
-Copyright (c) 1999, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
-
--->
-
-</head>
-<body bgcolor="white">
-
-Provides classes related to creating and configuring secure socket factories.
-These classes are used with the Sun reference implementation of the Java
-Secure Socket Extension (JSSE).
-<!--
-<h2>Package Specification</h2>
-
-##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT #####
-<ul>
-  <li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a>
-</ul>
-
-<h2>Related Documentation</h2>
-
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
-</ul>
-
--->
-
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/io/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,49 @@
+/*
+ * Copyright (c) 1998, 2010, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides for system input and output through data streams,
+ * serialization and the file system.
+ *
+ * Unless otherwise noted, passing a null argument to a constructor or
+ * method in any class or interface in this package will cause a
+ * {@code NullPointerException} to be thrown.
+ *
+ * <h2>Package Specification</h2>
+ * <ul>
+ *   <li><a href="../../../platform/serialization/spec/serialTOC.html"> Java Object Serialization Specification </a>
+ * </ul>
+ *
+ * <h2>Related Documentation</h2>
+ *
+ * For overviews, tutorials, examples, guides, and tool documentation,
+ * please see:
+ * <ul>
+ *   <li><a href="../../../technotes/guides/serialization">Serialization Enhancements</a>
+ * </ul>
+ *
+ * @since 1.0
+ */
+package java.io;
--- a/jdk/src/java.base/share/classes/java/io/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-<!--
- Copyright (c) 1998, 2010, 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.  Oracle designates this
- particular file as subject to the "Classpath" exception as provided
- by Oracle in the LICENSE file that accompanied this code.
-
- 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.
--->
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<body bgcolor="white">
-
-Provides for system input and output through data streams,
-serialization and the file system.
-
-Unless otherwise noted, passing a null argument to a constructor
-or method in any class or interface in this package will cause a
-<tt>NullPointerException</tt> to be thrown.
-
-<h2>Package Specification</h2>
-<ul>
-  <li><a href="../../../platform/serialization/spec/serialTOC.html"> Java Object Serialization Specification </a>
-</ul>
-
-<h2>Related Documentation</h2>
-
-For overviews, tutorials, examples, guides, and tool documentation,
-please see:
-<ul>
-  <li><a href="../../../technotes/guides/serialization">Serialization Enhancements</a>
-</ul>
-
-@since 1.0
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/lang/ref/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,140 @@
+/*
+ * Copyright (c) 1998, 2003, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides reference-object classes, which support a limited degree
+ * of interaction with the garbage collector.  A program may use a
+ * reference object to maintain a reference to some other object in
+ * such a way that the latter object may still be reclaimed by the
+ * collector.  A program may also arrange to be notified some time
+ * after the collector has determined that the reachability of a given
+ * object has changed.
+ *
+ *<h2>Package Specification</h2>
+ *
+ * A <em>reference object</em> encapsulates a reference to some other
+ * object so that the reference itself may be examined and manipulated
+ * like any other object.  Three types of reference objects are
+ * provided, each weaker than the last: <em>soft</em>, <em>weak</em>,
+ * and <em>phantom</em>.  Each type corresponds to a different level
+ * of reachability, as defined below.  Soft references are for
+ * implementing memory-sensitive caches, weak references are for
+ * implementing canonicalizing mappings that do not prevent their keys
+ * (or values) from being reclaimed, and phantom references are for
+ * scheduling pre-mortem cleanup actions in a more flexible way than
+ * is possible with the Java finalization mechanism.
+ *
+ * <p> Each reference-object type is implemented by a subclass of the
+ * abstract base {@link java.lang.ref.Reference} class.
+ * An instance of one of these subclasses encapsulates a single
+ * reference to a particular object, called the <em>referent</em>.
+ * Every reference object provides methods for getting and clearing
+ * the reference.  Aside from the clearing operation reference objects
+ * are otherwise immutable, so no {@code set} operation is
+ * provided.  A program may further subclass these subclasses, adding
+ * whatever fields and methods are required for its purposes, or it
+ * may use these subclasses without change.
+ *
+ * <h3>Notification</h3>
+ *
+ * A program may request to be notified of changes in an object's
+ * reachability by <em>registering</em> an appropriate reference
+ * object with a <em>reference queue</em> at the time the reference
+ * object is created.  Some time after the garbage collector
+ * determines that the reachability of the referent has changed to the
+ * value corresponding to the type of the reference, it will add the
+ * reference to the associated queue.  At this point, the reference is
+ * considered to be <em>enqueued</em>.  The program may remove
+ * references from a queue either by polling or by blocking until a
+ * reference becomes available.  Reference queues are implemented by
+ * the {@link java.lang.ref.ReferenceQueue} class.
+ *
+ * <p> The relationship between a registered reference object and its
+ * queue is one-sided.  That is, a queue does not keep track of the
+ * references that are registered with it.  If a registered reference
+ * becomes unreachable itself, then it will never be enqueued.  It is
+ * the responsibility of the program using reference objects to ensure
+ * that the objects remain reachable for as long as the program is
+ * interested in their referents.
+ *
+ * <p> While some programs will choose to dedicate a thread to
+ * removing reference objects from one or more queues and processing
+ * them, this is by no means necessary.  A tactic that often works
+ * well is to examine a reference queue in the course of performing
+ * some other fairly-frequent action.  For example, a hashtable that
+ * uses weak references to implement weak keys could poll its
+ * reference queue each time the table is accessed.  This is how the
+ * {@link java.util.WeakHashMap} class works.  Because
+ * the {@link java.lang.ref.ReferenceQueue#poll
+ * ReferenceQueue.poll} method simply checks an internal data
+ * structure, this check will add little overhead to the hashtable
+ * access methods.
+ *
+ * <h3>Automatically-cleared references</h3>
+ *
+ * Soft and weak references are automatically cleared by the collector
+ * before being added to the queues with which they are registered, if
+ * any.  Therefore soft and weak references need not be registered
+ * with a queue in order to be useful, while phantom references do.
+ * An object that is reachable via phantom references will remain so
+ * until all such references are cleared or themselves become
+ * unreachable.
+ *
+ * <a name="reachability"></a>
+ * <h3>Reachability</h3>
+ *
+ * Going from strongest to weakest, the different levels of
+ * reachability reflect the life cycle of an object.  They are
+ * operationally defined as follows:
+ *
+ * <ul>
+ *
+ * <li> An object is <em>strongly reachable</em> if it can be reached
+ * by some thread without traversing any reference objects.  A
+ * newly-created object is strongly reachable by the thread that
+ * created it.
+ *
+ * <li> An object is <em>softly reachable</em> if it is not strongly
+ * reachable but can be reached by traversing a soft reference.
+ *
+ * <li> An object is <em>weakly reachable</em> if it is neither
+ * strongly nor softly reachable but can be reached by traversing a
+ * weak reference.  When the weak references to a weakly-reachable
+ * object are cleared, the object becomes eligible for finalization.
+ *
+ * <li> An object is <em>phantom reachable</em> if it is neither
+ * strongly, softly, nor weakly reachable, it has been finalized, and
+ * some phantom reference refers to it.
+ *
+ * <li> Finally, an object is <em>unreachable</em>, and therefore
+ * eligible for reclamation, when it is not reachable in any of the
+ * above ways.
+ *
+ * </ul>
+ *
+ * @author        Mark Reinhold
+ * @since         1.2
+ */
+package java.lang.ref;
--- a/jdk/src/java.base/share/classes/java/lang/ref/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,147 +0,0 @@
-<!--
- Copyright (c) 1998, 2003, 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.  Oracle designates this
- particular file as subject to the "Classpath" exception as provided
- by Oracle in the LICENSE file that accompanied this code.
-
- 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.
--->
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<body bgcolor="white">
-
-
-Provides reference-object classes, which support a limited degree of
-interaction with the garbage collector.  A program may use a reference object
-to maintain a reference to some other object in such a way that the latter
-object may still be reclaimed by the collector.  A program may also arrange to
-be notified some time after the collector has determined that the reachability
-of a given object has changed.
-
-
-<h2>Package Specification</h2>
-
-A <em>reference object</em> encapsulates a reference to some other object so
-that the reference itself may be examined and manipulated like any other
-object.  Three types of reference objects are provided, each weaker than the
-last: <em>soft</em>, <em>weak</em>, and <em>phantom</em>.  Each type
-corresponds to a different level of reachability, as defined below.  Soft
-references are for implementing memory-sensitive caches, weak references are
-for implementing canonicalizing mappings that do not prevent their keys (or
-values) from being reclaimed, and phantom references are for scheduling
-pre-mortem cleanup actions in a more flexible way than is possible with the
-Java finalization mechanism.
-
-<p> Each reference-object type is implemented by a subclass of the abstract
-base <code>{@link java.lang.ref.Reference}</code> class.  An instance of one of
-these subclasses encapsulates a single reference to a particular object, called
-the <em>referent</em>.  Every reference object provides methods for getting and
-clearing the reference.  Aside from the clearing operation reference objects
-are otherwise immutable, so no <code>set</code> operation is provided.  A
-program may further subclass these subclasses, adding whatever fields and
-methods are required for its purposes, or it may use these subclasses without
-change.
-
-
-<h3>Notification</h3>
-
-A program may request to be notified of changes in an object's reachability by
-<em>registering</em> an appropriate reference object with a <em>reference
-queue</em> at the time the reference object is created.  Some time after the
-garbage collector determines that the reachability of the referent has changed
-to the value corresponding to the type of the reference, it will add the
-reference to the associated queue.  At this point, the reference is considered
-to be <em>enqueued</em>.  The program may remove references from a queue either
-by polling or by blocking until a reference becomes available.  Reference
-queues are implemented by the <code>{@link java.lang.ref.ReferenceQueue}</code>
-class.
-
-<p> The relationship between a registered reference object and its queue is
-one-sided.  That is, a queue does not keep track of the references that are
-registered with it.  If a registered reference becomes unreachable itself, then
-it will never be enqueued.  It is the responsibility of the program using
-reference objects to ensure that the objects remain reachable for as long as
-the program is interested in their referents.
-
-<p> While some programs will choose to dedicate a thread to removing reference
-objects from one or more queues and processing them, this is by no means
-necessary.  A tactic that often works well is to examine a reference queue in
-the course of performing some other fairly-frequent action.  For example, a
-hashtable that uses weak references to implement weak keys could poll its
-reference queue each time the table is accessed.  This is how the <code>{@link
-java.util.WeakHashMap}</code> class works.  Because the <code>{@link
-java.lang.ref.ReferenceQueue#poll ReferenceQueue.poll}</code> method simply
-checks an internal data structure, this check will add little overhead to the
-hashtable access methods.
-
-
-<h3>Automatically-cleared references</h3>
-
-Soft and weak references are automatically cleared by the collector before
-being added to the queues with which they are registered, if any.  Therefore
-soft and weak references need not be registered with a queue in order to be
-useful, while phantom references do.  An object that is reachable via phantom
-references will remain so until all such references are cleared or themselves
-become unreachable.
-
-
-<a name="reachability"></a>
-<h3>Reachability</h3>
-
-Going from strongest to weakest, the different levels of reachability reflect
-the life cycle of an object.  They are operationally defined as follows:
-
-<ul>
-
-<li> An object is <em>strongly reachable</em> if it can be reached by some
-thread without traversing any reference objects.  A newly-created object is
-strongly reachable by the thread that created it.
-
-<li> An object is <em>softly reachable</em> if it is not strongly reachable but
-can be reached by traversing a soft reference.
-
-<li> An object is <em>weakly reachable</em> if it is neither strongly nor
-softly reachable but can be reached by traversing a weak reference.  When the
-weak references to a weakly-reachable object are cleared, the object becomes
-eligible for finalization.
-
-<li> An object is <em>phantom reachable</em> if it is neither strongly, softly,
-nor weakly reachable, it has been finalized, and some phantom reference refers
-to it.
-
-<li> Finally, an object is <em>unreachable</em>, and therefore eligible for
-reclamation, when it is not reachable in any of the above ways.
-
-</ul>
-
-
-@author	  Mark Reinhold
-@since	  1.2
-
-<!--
-<h2>Related Documentation</h2>
-
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
-</ul>
--->
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/nio/channels/spi/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2000, 2009, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Service-provider classes for the {@link java.nio.channels}
+ * package.
+ *
+ * <p> Only developers who are defining new selector providers or
+ * asynchronous channel providers should need to make direct use of
+ * this package.  </p>
+ *
+ * <p> Unless otherwise noted, passing a {@code null} argument to a
+ * constructor or method in any class or interface in this package
+ * will cause a {@link java.lang.NullPointerException
+ * NullPointerException} to be thrown.
+ *
+ *
+ * @since 1.4
+ * @author Mark Reinhold
+ * @author JSR-51 Expert Group
+ */
+package java.nio.channels.spi;
--- a/jdk/src/java.base/share/classes/java/nio/channels/spi/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-<!--
- Copyright (c) 2000, 2009, 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.  Oracle designates this
- particular file as subject to the "Classpath" exception as provided
- by Oracle in the LICENSE file that accompanied this code.
-
- 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.
--->
-
-<!doctype html public "-//IETF//DTD HTML//EN">
-<html>
-<body bgcolor="white">
-
-Service-provider classes for the <tt>{@link java.nio.channels}</tt> package.
-
-<p> Only developers who are defining new selector providers or asynchronous
-channel providers should need to make direct use of this package.  </p>
-
-<p> Unless otherwise noted, passing a <tt>null</tt> argument to a constructor
-or method in any class or interface in this package will cause a {@link
-java.lang.NullPointerException NullPointerException} to be thrown.
-
-
-@since 1.4
-@author Mark Reinhold
-@author JSR-51 Expert Group
-
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/nio/charset/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,90 @@
+/*
+ * Copyright (c) 2001, 2010, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Defines charsets, decoders, and encoders, for translating between
+ * bytes and Unicode characters.
+ *
+ * <blockquote><table cellspacing=1 cellpadding=0 summary="Summary of charsets, decoders, and encoders in this package">
+ *  <tr><th align="left">Class name</th><th align="left">Description</th></tr>
+ *   <tr><td valign=top>{@link java.nio.charset.Charset}</td>
+ *       <td>A named mapping between characters<br>and bytes</td></tr>
+ *   <tr><td valign=top>{@link java.nio.charset.CharsetDecoder}</td>
+ *       <td>Decodes bytes into characters</td></tr>
+ *   <tr><td valign=top>{@link java.nio.charset.CharsetEncoder}&nbsp;&nbsp;</td>
+ *       <td>Encodes characters into bytes</td></tr>
+ *   <tr><td valign=top>{@link java.nio.charset.CoderResult}&nbsp;&nbsp;</td>
+ *       <td>Describes coder results</td></tr>
+ *   <tr><td valign=top>{@link java.nio.charset.CodingErrorAction}&nbsp;&nbsp;</td>
+ *       <td>Describes actions to take when<br>coding errors are detected</td></tr>
+ *
+ * </table></blockquote>
+ *
+ * <p> A <i>charset</i> is named mapping between sequences of
+ * sixteen-bit Unicode characters and sequences of bytes, in the sense
+ * defined in <a
+ * href="http://www.ietf.org/rfc/rfc2278.txt"><i>RFC&nbsp;2278</i></a>.
+ * A <i>decoder</i> is an engine which transforms bytes in a specific
+ * charset into characters, and an <i>encoder</i> is an engine which
+ * transforms characters into bytes.  Encoders and decoders operate on
+ * byte and character buffers.  They are collectively referred to as
+ * <i>coders</i>.
+ *
+ * <p> The {@link java.nio.charset.Charset} class defines methods for
+ * creating coders for a given charset and for retrieving the various
+ * names associated with a charset.  It also defines static methods
+ * for testing whether a particular charset is supported, for locating
+ * charset instances by name, and for constructing a map that contains
+ * every charset for which support is available in the current Java
+ * virtual machine.
+ *
+ * <p> Most users will not use these classes directly; instead they
+ * will use the existing charset-related constructors and methods in
+ * the {@link java.lang.String} class, together with the existing
+ * {@link java.io.InputStreamReader} and {@link
+ * java.io.OutputStreamWriter} classes, all of whose implementations
+ * have been reworked to make use of the charset facilities defined in
+ * this package.  A small number of changes have been made to the
+ * {@link java.io.InputStreamReader} and {@link
+ * java.io.OutputStreamWriter} classes in order to allow explicit
+ * charset objects to be specified in the construction of instances of
+ * those classes.
+ *
+ * <p> Support for new charsets can be made available via the
+ * interface defined in the {@link
+ * java.nio.charset.spi.CharsetProvider} class in the <tt>{@link
+ * java.nio.charset.spi}</tt> package.
+ *
+ * <p> Unless otherwise noted, passing a <tt>null</tt> argument to a
+ * constructor or method in any class or interface in this package
+ * will cause a {@link java.lang.NullPointerException
+ * NullPointerException} to be thrown.
+ *
+ *
+ * @since 1.4
+ * @author Mark Reinhold
+ * @author JSR-51 Expert Group
+ */
+package java.nio.charset;
--- a/jdk/src/java.base/share/classes/java/nio/charset/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-<!--
- Copyright (c) 2001, 2010, 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.  Oracle designates this
- particular file as subject to the "Classpath" exception as provided
- by Oracle in the LICENSE file that accompanied this code.
-
- 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.
--->
-
-<!doctype html public "-//IETF//DTD HTML//EN">
-<html>
-<body bgcolor="white">
-
-
-Defines charsets, decoders, and encoders, for translating between bytes and
-Unicode characters.
-
-<blockquote><table cellspacing=1 cellpadding=0 summary="Summary of charsets, decoders, and encoders in this package">
- <tr><th><p align="left">Class name</p></th><th><p align="left">Description</p></th></tr>
-  <tr><td valign=top><tt>{@link java.nio.charset.Charset}</tt></td>
-      <td>A named mapping between characters<br>and bytes</td></tr>
-  <tr><td valign=top><tt>{@link java.nio.charset.CharsetDecoder}</tt></td>
-      <td>Decodes bytes into characters</td></tr>
-  <tr><td valign=top><tt>{@link java.nio.charset.CharsetEncoder}&nbsp;&nbsp;</tt></td>
-      <td>Encodes characters into bytes</td></tr>
-  <tr><td valign=top><tt>{@link java.nio.charset.CoderResult}&nbsp;&nbsp;</tt></td>
-      <td>Describes coder results</td></tr>
-  <tr><td valign=top><tt>{@link java.nio.charset.CodingErrorAction}&nbsp;&nbsp;</tt></td>
-      <td>Describes actions to take when<br>coding errors are detected</td></tr>
-
-</table></blockquote>
-
-<p> A <i>charset</i> is named mapping between sequences of sixteen-bit Unicode
-characters and sequences of bytes, in the sense defined in <a
-href="http://www.ietf.org/rfc/rfc2278.txt"><i>RFC&nbsp;2278</i></a>.  A
-<i>decoder</i> is an engine which transforms bytes in a specific charset into
-characters, and an <i>encoder</i> is an engine which transforms characters into
-bytes.  Encoders and decoders operate on byte and character buffers.  They are
-collectively referred to as <i>coders</i>.
-
-<p> The {@link java.nio.charset.Charset} class defines methods for creating
-coders for a given charset and for retrieving the various names associated with
-a charset.  It also defines static methods for testing whether a particular
-charset is supported, for locating charset instances by name, and for
-constructing a map that contains every charset for which support is available
-in the current Java virtual machine.
-
-<p> Most users will not use these classes directly; instead they will use the
-existing charset-related constructors and methods in the {@link
-java.lang.String} class, together with the existing {@link
-java.io.InputStreamReader} and {@link java.io.OutputStreamWriter} classes, all
-of whose implementations have been reworked to make use of the charset
-facilities defined in this package.  A small number of changes have been made
-to the {@link java.io.InputStreamReader} and {@link java.io.OutputStreamWriter}
-classes in order to allow explicit charset objects to be specified in the
-construction of instances of those classes.
-
-<p> Support for new charsets can be made available via the interface defined in
-the {@link java.nio.charset.spi.CharsetProvider} class in the <tt>{@link
-java.nio.charset.spi}</tt> package.
-
-<p> Unless otherwise noted, passing a <tt>null</tt> argument to a constructor
-or method in any class or interface in this package will cause a {@link
-java.lang.NullPointerException NullPointerException} to be thrown.
-
-
-@since 1.4
-@author Mark Reinhold
-@author JSR-51 Expert Group
-
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/nio/charset/spi/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 2001, 2005, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Service-provider classes for the {@link java.nio.charset} package.
+ *
+ * <p> Only developers who are defining new charsets should need to
+ * make direct use of this package.  </p>
+ *
+ * <p> Unless otherwise noted, passing a {@code null} argument to a
+ * constructor or method in any class or interface in this package
+ * will cause a {@link java.lang.NullPointerException
+ * NullPointerException} to be thrown.
+ *
+ * @since 1.4
+ * @author Mark Reinhold
+ * @author JSR-51 Expert Group
+ */
+package java.nio.charset.spi;
--- a/jdk/src/java.base/share/classes/java/nio/charset/spi/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-<!--
- Copyright (c) 2001, 2005, 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.  Oracle designates this
- particular file as subject to the "Classpath" exception as provided
- by Oracle in the LICENSE file that accompanied this code.
-
- 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.
--->
-
-<!doctype html public "-//IETF//DTD HTML//EN">
-<html>
-<body bgcolor="white">
-
-Service-provider classes for the <tt>{@link java.nio.charset}</tt> package.
-
-<p> Only developers who are defining new charsets should need to make direct
-use of this package.  </p>
-
-<p> Unless otherwise noted, passing a <tt>null</tt> argument to a constructor
-or method in any class or interface in this package will cause a {@link
-java.lang.NullPointerException NullPointerException} to be thrown.
-
-
-@since 1.4
-@author Mark Reinhold
-@author JSR-51 Expert Group
-
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/nio/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,141 @@
+/*
+ * Copyright (c) 2000, 2013, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Defines buffers, which are containers for data, and provides an
+ * overview of the other NIO packages.
+ *
+ *
+ * <p> The central abstractions of the NIO APIs are: </p>
+ *
+ * <ul>
+ *
+ *   <li><p> <a href="#buffers"><i>Buffers</i></a>, which are containers for data;
+ *   </p></li>
+ *
+ *   <li><p> <a
+ *   href="charset/package-summary.html"><i>Charsets</i></a> and their
+ *   associated <i>decoders</i> and <i>encoders</i>, <br> which
+ *   translate between bytes and Unicode characters; </p></li>
+ *
+ *   <li><p> <a
+ *   href="channels/package-summary.html"><i>Channels</i></a> of
+ *   various types, which represent connections <br> to entities
+ *   capable of performing I/O operations; and </p></li>
+ *
+ *   <li><p> <i>Selectors</i> and <i>selection keys</i>, which
+ *   together with <br> <i>selectable channels</i> define a <a
+ *   href="channels/package-summary.html#multiplex">multiplexed,
+ *   non-blocking <br> I/O</a>&nbsp;facility.  </p></li>
+ *
+ *  </ul>
+ *
+ * <p> The <tt>java.nio</tt> package defines the buffer classes, which
+ * are used throughout the NIO APIs.  The charset API is defined in
+ * the {@link java.nio.charset} package, and the channel and selector
+ * APIs are defined in the {@link java.nio.channels} package.  Each of
+ * these subpackages has its own service-provider (SPI) subpackage,
+ * the contents of which can be used to extend the platform's default
+ * implementations or to construct alternative implementations.
+ *
+ * <a name="buffers"> </a>
+ *
+ * <blockquote><table cellspacing=1 cellpadding=0 summary="Description of the various buffers">
+ *   <tr><th align="left">Buffers</th><th align="left">Description</th></tr>
+ *   <tr><td valign=top><tt>{@link java.nio.Buffer}</tt></td>
+ *       <td>Position, limit, and capacity;
+ *           <br>clear, flip, rewind, and mark/reset</td></tr>
+ *   <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.ByteBuffer}</tt></td>
+ *       <td>Get/put, compact, views; allocate,&nbsp;wrap</td></tr>
+ *   <tr><td valign=top><tt>&nbsp;&nbsp;&nbsp;&nbsp;{@link java.nio.MappedByteBuffer}&nbsp;&nbsp;</tt></td>
+ *       <td>A byte buffer mapped to a file</td></tr>
+ *   <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.CharBuffer}</tt></td>
+ *       <td>Get/put, compact; allocate,&nbsp;wrap</td></tr>
+ *   <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.DoubleBuffer}</tt></td>
+ *       <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
+ *   <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.FloatBuffer}</tt></td>
+ *       <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
+ *   <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.IntBuffer}</tt></td>
+ *       <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
+ *   <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.LongBuffer}</tt></td>
+ *       <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
+ *   <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.ShortBuffer}</tt></td>
+ *       <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
+ *   <tr><td valign=top><tt>{@link java.nio.ByteOrder}</tt></td>
+ *       <td>Typesafe enumeration for&nbsp;byte&nbsp;orders</td></tr>
+ * </table></blockquote>
+ *
+ * <p> A <i>buffer</i> is a container for a fixed amount of data of a
+ * specific primitive type.  In addition to its content a buffer has a
+ * <i>position</i>, which is the index of the next element to be read
+ * or written, and a <i>limit</i>, which is the index of the first
+ * element that should not be read or written.  The base {@link
+ * java.nio.Buffer} class defines these properties as well as methods
+ * for <i>clearing</i>, <i>flipping</i>, and <i>rewinding</i>, for
+ * <i>marking</i> the current position, and for <i>resetting</i> the
+ * position to the previous mark.
+ *
+ * <p> There is a buffer class for each non-boolean primitive type.
+ * Each class defines a family of <i>get</i> and <i>put</i> methods
+ * for moving data out of and in to a buffer, methods for
+ * <i>compacting</i>, <i>duplicating</i>, and <i>slicing</i> a buffer,
+ * and static methods for <i>allocating</i> a new buffer as well as
+ * for <i>wrapping</i> an existing array into a buffer.
+ *
+ * <p> Byte buffers are distinguished in that they can be used as the
+ * sources and targets of I/O operations.  They also support several
+ * features not found in the other buffer classes:
+ *
+ * <ul>
+ *
+ *   <li><p> A byte buffer can be allocated as a <a
+ *   href="ByteBuffer.html#direct"> <i>direct</i></a> buffer, in which
+ *   case the Java virtual machine will make a best effort to perform
+ *   native I/O operations directly upon it.  </p></li>
+ *
+ *   <li><p> A byte buffer can be created by {@link
+ *   java.nio.channels.FileChannel#map <i>mapping</i>} a region of a
+ *   file directly into memory, in which case a few additional
+ *   file-related operations defined in the {@link
+ *   java.nio.MappedByteBuffer} class are available.  </p></li>
+ *
+ *   <li><p> A byte buffer provides access to its content as either a
+ *   heterogeneous or homogeneous sequence of <a
+ *   href="ByteBuffer.html#bin"><i>binary data</i></a> of any
+ *   non-boolean primitive type, in either big-endian or little-endian
+ *   <a href="ByteOrder.html">byte order</a>.  </p></li>
+ *
+ * </ul>
+ *
+ * <p> Unless otherwise noted, passing a <tt>null</tt> argument to a
+ * constructor or method in any class or interface in this package
+ * will cause a {@link java.lang.NullPointerException
+ * NullPointerException} to be thrown.
+ *
+ * @since 1.4
+ * @author Mark Reinhold
+ * @author JSR-51 Expert Group
+ */
+package java.nio;
--- a/jdk/src/java.base/share/classes/java/nio/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,139 +0,0 @@
-<!--
- Copyright (c) 2000, 2013, 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.  Oracle designates this
- particular file as subject to the "Classpath" exception as provided
- by Oracle in the LICENSE file that accompanied this code.
-
- 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.
--->
-
-<!doctype html public "-//IETF//DTD HTML//EN">
-<html>
-<body bgcolor="white">
-
-Defines buffers, which are containers for data, and provides an overview of the
-other NIO packages.
-
-
-<p> The central abstractions of the NIO APIs are: </p>
-
-<ul>
-
-  <li><p> <a href="#buffers"><i>Buffers</i></a>, which are containers for data;
-  </p></li>
-
-  <li><p> <a href="charset/package-summary.html"><i>Charsets</i></a> and their
-  associated <i>decoders</i> and <i>encoders</i>, <br> which translate between
-  bytes and Unicode characters; </p></li>
-
-  <li><p> <a href="channels/package-summary.html"><i>Channels</i></a> of
-  various types, which represent connections <br> to entities capable of
-  performing I/O operations; and </p></li>
-
-  <li><p> <i>Selectors</i> and <i>selection keys</i>, which together with <br>
-  <i>selectable channels</i> define a <a
-  href="channels/package-summary.html#multiplex">multiplexed, non-blocking <br>
-  I/O</a>&nbsp;facility.  </p></li>
-
-</ul>
-
-<p> The <tt>java.nio</tt> package defines the buffer classes, which are used
-throughout the NIO APIs.  The charset API is defined in the {@link
-java.nio.charset} package, and the channel and selector APIs are defined in the
-{@link java.nio.channels} package.  Each of these subpackages has its own
-service-provider (SPI) subpackage, the contents of which can be used to extend
-the platform's default implementations or to construct alternative
-implementations.
-
-
-<a name="buffers"> </a>
-
-<blockquote><table cellspacing=1 cellpadding=0 summary="Description of the various buffers">
-  <tr><th><p align="left">Buffers</p></th><th><p align="left">Description</p></th></tr> 
-  <tr><td valign=top><tt>{@link java.nio.Buffer}</tt></td>
-      <td>Position, limit, and capacity;
-          <br>clear, flip, rewind, and mark/reset</td></tr>
-  <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.ByteBuffer}</tt></td>
-      <td>Get/put, compact, views; allocate,&nbsp;wrap</td></tr>
-  <tr><td valign=top><tt>&nbsp;&nbsp;&nbsp;&nbsp;{@link java.nio.MappedByteBuffer}&nbsp;&nbsp;</tt></td>
-      <td>A byte buffer mapped to a file</td></tr>
-  <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.CharBuffer}</tt></td>
-      <td>Get/put, compact; allocate,&nbsp;wrap</td></tr>
-  <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.DoubleBuffer}</tt></td>
-      <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
-  <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.FloatBuffer}</tt></td>
-      <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
-  <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.IntBuffer}</tt></td>
-      <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
-  <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.LongBuffer}</tt></td>
-      <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
-  <tr><td valign=top><tt>&nbsp;&nbsp;{@link java.nio.ShortBuffer}</tt></td>
-      <td>&nbsp;&nbsp;&nbsp;&nbsp;'&nbsp;'</td></tr>
-  <tr><td valign=top><tt>{@link java.nio.ByteOrder}</tt></td>
-      <td>Typesafe enumeration for&nbsp;byte&nbsp;orders</td></tr>
-</table></blockquote>
-
-<p> A <i>buffer</i> is a container for a fixed amount of data of a specific
-primitive type.  In addition to its content a buffer has a <i>position</i>,
-which is the index of the next element to be read or written, and a
-<i>limit</i>, which is the index of the first element that should not be read
-or written.  The base {@link java.nio.Buffer} class defines these properties as
-well as methods for <i>clearing</i>, <i>flipping</i>, and <i>rewinding</i>, for
-<i>marking</i> the current position, and for <i>resetting</i> the position to
-the previous mark.
-
-<p> There is a buffer class for each non-boolean primitive type.  Each class
-defines a family of <i>get</i> and <i>put</i> methods for moving data out of
-and in to a buffer, methods for <i>compacting</i>, <i>duplicating</i>, and
-<i>slicing</i> a buffer, and static methods for <i>allocating</i> a new buffer
-as well as for <i>wrapping</i> an existing array into a buffer.
-
-<p> Byte buffers are distinguished in that they can be used as the sources and
-targets of I/O operations.  They also support several features not found in the
-other buffer classes:
-
-<ul>
-
-  <li><p> A byte buffer can be allocated as a <a href="ByteBuffer.html#direct">
-  <i>direct</i></a> buffer, in which case the Java virtual machine will make a
-  best effort to perform native I/O operations directly upon it.  </p></li>
-
-  <li><p> A byte buffer can be created by {@link
-  java.nio.channels.FileChannel#map <i>mapping</i>} a region of a
-  file directly into memory, in which case a few additional file-related
-  operations defined in the {@link java.nio.MappedByteBuffer} class are
-  available.  </p></li>
-
-  <li><p> A byte buffer provides access to its content as either a heterogeneous
-  or homogeneous sequence of <a href="ByteBuffer.html#bin"><i>binary data</i></a>
-  of any non-boolean primitive type, in either big-endian or little-endian <a
-  href="ByteOrder.html">byte order</a>.  </p></li>
-
-</ul>
-
-<p> Unless otherwise noted, passing a <tt>null</tt> argument to a constructor
-or method in any class or interface in this package will cause a {@link
-java.lang.NullPointerException NullPointerException} to be thrown.
-
-@since 1.4
-@author Mark Reinhold
-@author JSR-51 Expert Group
-
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/text/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 1998, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides classes and interfaces for handling text, dates, numbers,
+ * and messages in a manner independent of natural languages.  This
+ * means your main application or applet can be written to be
+ * language-independent, and it can rely upon separate,
+ * dynamically-linked localized resources. This allows the flexibility
+ * of adding localizations for new localizations at any time.
+ *
+ * <p>These classes are capable of formatting dates, numbers, and
+ * messages, parsing; searching and sorting strings; and iterating
+ * over characters, words, sentences, and line breaks.  This package
+ * contains three main groups of classes and interfaces:
+ *
+ * <ul>
+ * <li>Classes for iteration over text
+ * <li>Classes for formatting and parsing
+ * <li>Classes for string collation
+ * </ul>
+ *
+ * @since 1.1
+ */
+package java.text;
--- a/jdk/src/java.base/share/classes/java/text/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<!--
-Copyright (c) 1998, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-</head>
-<body bgcolor="white">
-
-Provides classes and interfaces for handling text, dates, numbers, and messages
-in a manner independent of natural languages.  This means your main application
-or applet can be written to be language-independent, and it can rely upon
-separate, dynamically-linked localized resources. This allows the flexibility
-of adding localizations for new localizations at any time.
-<p>
-These classes are capable of formatting dates, numbers, and messages, parsing;
-searching and sorting strings; and iterating over characters, words, sentences,
-and line breaks.  This package contains three main groups of classes and
-interfaces:
-<ul>
-<li>Classes for iteration over text
-<li>Classes for formatting and parsing
-<li>Classes for string collation
-</ul>
-<!--
-<h2>Package Specification</h2>
-
-##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT #####
-<ul>
-  <li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a>
-</ul>
-
-<h2>Related Documentation</h2>
-
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
-</ul>
--->
-
-@since 1.1
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/text/spi/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,31 @@
+/*
+ * Copyright (c) 2005, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Service provider classes for the classes in the java.text package.
+ *
+ * @since 1.6
+ */
+package java.text.spi;
--- a/jdk/src/java.base/share/classes/java/text/spi/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<!--
-Copyright (c) 2005, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-</head>
-<body bgcolor="white">
-Service provider classes for the classes in the java.text package.
-<!--
-<h2>Package Specification</h2>
-
-##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT #####
-<ul>
-  <li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a>
-</ul>
-
-<h2>Related Documentation</h2>
-
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
-</ul>
--->
-
-@since 1.6
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/util/jar/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,49 @@
+/*
+ * Copyright (c) 1998, 2006, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides classes for reading and writing the JAR (Java ARchive)
+ * file format, which is based on the standard ZIP file format with an
+ * optional manifest file.  The manifest stores meta-information about
+ * the JAR file contents and is also used for signing JAR files.
+ *
+ * <h2>Package Specification</h2>
+ *
+ * The <code>java.util.jar</code> package is based on the following
+ * specifications:
+ *
+ * <ul>
+ *   <li><b>Info-ZIP file format</b> - The JAR format is based on the Info-ZIP
+ *       file format. See
+ *       <a href="../zip/package-summary.html#package_description">java.util.zip
+ *       package description.</a> <p>
+ *       In JAR files, all file names must be encoded in the UTF-8 encoding.
+ *   <li><a href="../../../../technotes/guides/jar/jar.html">
+ *       Manifest and Signature Specification</a> - The manifest format specification.
+ * </ul>
+ *
+ * @since 1.2
+ */
+package java.util.jar;
--- a/jdk/src/java.base/share/classes/java/util/jar/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<!--
-Copyright (c) 1998, 2006, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-</head>
-<body bgcolor="white">
-
-Provides classes for reading and writing the JAR (Java ARchive) file
-format, which is based on the standard ZIP file format with an
-optional manifest file.  The manifest stores meta-information about the
-JAR file contents and is also used for signing JAR files.
-
-
-<h2>Package Specification</h2>
-
-The <code>java.util.jar</code> package is based on the following specifications:
-<ul>
-  <li><b>Info-ZIP file format</b> - The JAR format is based on the Info-ZIP 
-      file format. See 
-      <a href="../zip/package-summary.html#package_description">java.util.zip
-      package description.</a> <p>
-      In JAR files, all file names must be encoded in the UTF-8 encoding.
-  <li><a href="../../../../technotes/guides/jar/jar.html">
-      Manifest and Signature Specification</a> - The manifest format specification.
-</ul>
-
-<!--
-<h2>Related Documentation</h2>
-
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
-</ul>
--->
-
-@since 1.2
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/util/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 1998, 2006, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Contains the collections framework, legacy collection classes,
+ * event model, date and time facilities, internationalization, and
+ * miscellaneous utility classes (a string tokenizer, a random-number
+ * generator, and a bit array).
+ *
+ * <h2>Package Specification</h2>
+ * <ul>
+ *   <li><a href="../../../technotes/guides/collections/overview.html"><b>Collections Framework Overview</b></a>
+ *   <li><a href="../../../technotes/guides/collections/reference.html"><b>
+ *        Collections Framework Annotated Outline</b></a>
+ * </ul>
+ *
+ * <h2>Related Documentation</h2>
+ * For overviews, tutorials, examples, guides, and tool documentation,
+ * please see:
+ * <ul>
+ *     <li><a href="http://docs.oracle.com/javase/tutorial/collections/index.html">
+ *        <b>Collections Framework Tutorial</b></a>
+ *     <li><a
+ *     href="../../../technotes/guides/collections/designfaq.html"><b>Collections
+ *     Framework Design FAQ</b></a>
+ * </ul>
+ *
+ * @since 1.0
+ */
+package java.util;
--- a/jdk/src/java.base/share/classes/java/util/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<!--
-Copyright (c) 1998, 2006, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-</head>
-<body bgcolor="white">
-
-Contains the collections framework, legacy collection classes, event model,
-date and time facilities, internationalization, and miscellaneous utility
-classes (a string tokenizer, a random-number generator, and a bit array).
-
-<h2>Package Specification</h2>
-<ul>
-  <li><a href="../../../technotes/guides/collections/overview.html"><b>Collections Framework Overview</b></a>
-  <li><a href="../../../technotes/guides/collections/reference.html"><b>
-       Collections Framework Annotated Outline</b></a>
-</ul>
-
-<h2>Related Documentation</h2>
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-    <li><a href="http://docs.oracle.com/javase/tutorial/collections/index.html">
-       <b>Collections Framework Tutorial</b></a>
-    <li><a
-    href="../../../technotes/guides/collections/designfaq.html"><b>Collections
-    Framework Design FAQ</b></a>
-</ul>
-
-@since 1.0
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/util/regex/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2000, 2006, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Classes for matching character sequences against patterns specified
+ * by regular expressions.
+ *
+ * <p> An instance of the {@link java.util.regex.Pattern} class
+ * represents a regular expression that is specified in string form in
+ * a syntax similar to that used by Perl.
+ *
+ * <p> Instances of the {@link java.util.regex.Matcher} class are used
+ * to match character sequences against a given pattern.  Input is
+ * provided to matchers via the {@link java.lang.CharSequence}
+ * interface in order to support matching against characters from a
+ * wide variety of input sources. </p>
+ *
+ * <p> Unless otherwise noted, passing a <tt>null</tt> argument to a
+ * method in any class or interface in this package will cause a
+ * {@link java.lang.NullPointerException NullPointerException} to be
+ * thrown.
+ *
+ * <h2>Related Documentation</h2>
+ *
+ * <p> An excellent tutorial and overview of regular expressions is <a
+ * href="http://www.oreilly.com/catalog/regex/"><i>Mastering Regular
+ * Expressions</i>, Jeffrey E. F. Friedl, O'Reilly and Associates,
+ * 1997.</a> </p>
+ *
+ * @since 1.4
+ * @author Mike McCloskey
+ * @author Mark Reinhold
+ */
+package java.util.regex;
--- a/jdk/src/java.base/share/classes/java/util/regex/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,66 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<!--
-Copyright (c) 2000, 2006, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-</head>
-<body bgcolor="white">
-
-Classes for matching character sequences against patterns specified by regular
-expressions.
-
-<p> An instance of the {@link java.util.regex.Pattern} class represents a
-regular expression that is specified in string form in a syntax similar to
-that used by Perl.
-
-<p> Instances of the {@link java.util.regex.Matcher} class are used to match
-character sequences against a given pattern.  Input is provided to matchers via
-the {@link java.lang.CharSequence} interface in order to support matching
-against characters from a wide variety of input sources. </p>
-
-<p> Unless otherwise noted, passing a <tt>null</tt> argument to a method
-in any class or interface in this package will cause a
-{@link java.lang.NullPointerException NullPointerException} to be thrown.
-
-<h2>Related Documentation</h2>
-
-<p> An excellent tutorial and overview of regular expressions is <a
-href="http://www.oreilly.com/catalog/regex/"><i>Mastering Regular
-Expressions</i>, Jeffrey E. F. Friedl, O'Reilly and Associates, 1997.</a> </p>
-
-<!--
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
-</ul>
--->
-
-@since 1.4
-@author Mike McCloskey
-@author Mark Reinhold
-
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/java/util/spi/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,31 @@
+/*
+ * Copyright (c) 2005, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Service provider classes for the classes in the java.util package.
+ *
+ * @since 1.6
+ */
+package java.util.spi;
--- a/jdk/src/java.base/share/classes/java/util/spi/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<!--
-Copyright (c) 2005, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-</head>
-<body bgcolor="white">
-Service provider classes for the classes in the java.util package.
-<!--
-<h2>Package Specification</h2>
-
-##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT #####
-<ul>
-  <li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a>
-</ul>
-
-<h2>Related Documentation</h2>
-
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
-</ul>
--->
-
-@since 1.6
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/javax/crypto/interfaces/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,68 @@
+/*
+ * Copyright (c) 1999, 2007, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides interfaces for Diffie-Hellman keys as defined in RSA
+ * Laboratories' PKCS #3.
+ *
+ * <P>Note that these interfaces are intended only for key
+ * implementations whose key material is accessible and
+ * available. These interfaces are not intended for key implementations
+ * whose key material resides in inaccessible, protected storage (such
+ * as in a hardware device).
+ *
+ * <P>For more developer information on how to use these interfaces,
+ * including information on how to design <code>Key</code> classes for
+ * hardware devices, please refer to the cryptographic provider
+ * developer guide:
+ *
+ * <ul>
+ *   <li><a href=
+ *     "{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
+ *     <b>How to Implement a Provider for the Java&trade; Cryptography Architecture
+ *     </b></a></li>
+ * </ul>
+ *
+ * <h2>Package Specification</h2>
+ *
+ * <ul>
+ *   <li>PKCS #3: Diffie-Hellman Key-Agreement Standard, Version 1.4,
+ *       November 1993.</li>
+ * </ul>
+ *
+ * <h2>Related Documentation</h2>
+ *
+ * For further documentation, please see:
+ * <ul>
+ *   <li>
+ *     <a href=
+ *       "{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
+ *       <b>Java&trade; Cryptography Architecture API Specification and Reference
+ *       </b></a></li>
+ * </ul>
+ *
+ * @since 1.4
+ */
+package javax.crypto.interfaces;
--- a/jdk/src/java.base/share/classes/javax/crypto/interfaces/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-<!--
-Copyright (c) 1999, 2007, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-
-<body bgcolor="white">
-
-Provides interfaces for Diffie-Hellman keys as defined in
-RSA Laboratories' PKCS #3.
-<P>
-Note that these interfaces are intended only
-for key implementations whose key material
-is accessible and available. These
-interfaces are not intended for key
-implementations whose key material resides
-in inaccessible, protected storage (such as
-in a hardware device).
-<P>
-For more developer information on how to use
-these interfaces, including information on
-how to design <code>Key</code> classes
-for hardware devices, please refer to the
-cryptographic provider developer guide:
-<ul>
-  <li><a href=
-    "{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
-    <b>How to Implement a Provider for the Java&trade; Cryptography Architecture
-    </b></a></li>
-</ul>
-
-<h2>Package Specification</h2>
-
-<ul>
-  <li>PKCS #3: Diffie-Hellman Key-Agreement Standard, Version 1.4,
-      November 1993.</li>
-</ul>
-
-<h2>Related Documentation</h2>
-
-For further documentation, please see:
-<ul>
-  <li>
-    <a href=
-      "{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
-      <b>Java&trade; Cryptography Architecture API Specification and Reference
-      </b></a></li>
-</ul>
-
-@since 1.4
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/javax/crypto/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,68 @@
+/*
+ * Copyright (c) 1999, 2011, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides the classes and interfaces for cryptographic
+ * operations. The cryptographic operations defined in this package
+ * include encryption, key generation and key agreement, and Message
+ * Authentication Code (MAC) generation.
+ *
+ * <p>Support for encryption includes symmetric, asymmetric, block,
+ * and stream ciphers. This package also supports secure streams and
+ * sealed objects.
+ *
+ * <p>Many of the classes provided in this package are provider-based.
+ * The class itself defines a programming interface to which
+ * applications may write.  The implementations themselves may then be
+ * written by independent third-party vendors and plugged in
+ * seamlessly as needed.  Therefore application developers may take
+ * advantage of any number of provider-based implementations without
+ * having to add or rewrite code.
+ *
+ * <ul>
+ *   <li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
+ *     <b>Java&trade; Cryptography Architecture Standard Algorithm Name
+ *     Documentation</b></a></li>
+ * </ul>
+ *
+ * <h2>Related Documentation</h2>
+ *
+ * For further documentation, please see:
+ * <ul>
+ *   <li>
+ *     <a href=
+ *       "{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
+ *       <b>Java&trade; Cryptography Architecture (JCA) Reference Guide
+ *       </b></a></li>
+ *   <li>
+ *     <a href=
+ *       "{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
+ *       <b>How to Implement a Provider in the Java&trade; Cryptography
+ *          Architecture </b></a></li>
+ * </ul>
+ *
+ * @since 1.4
+ */
+package javax.crypto;
--- a/jdk/src/java.base/share/classes/javax/crypto/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-<!--
-Copyright (c) 1999, 2015, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-
-<body bgcolor="white">
-
-Provides the classes and interfaces for cryptographic operations. The
-cryptographic operations defined in this package include encryption,
-key generation and key agreement, and Message Authentication Code
-(MAC) generation.
-
-<p>Support for encryption includes symmetric, asymmetric, block, and
-stream ciphers. This package also supports secure streams and sealed
-objects.
-
-<p>Many of the classes provided in this package are provider-based.  The
-class itself defines a programming interface to which applications may
-write.  The implementations themselves may then be written by
-independent third-party vendors and plugged in seamlessly as needed.
-Therefore application developers may take advantage of any number of
-provider-based implementations without having to add or rewrite code.
-
-<h2>Package Specification</h2>
-
-<ul>
-  <li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
-    <b>Java&trade;
-    Cryptography Architecture Standard Algorithm Name
-    Documentation</b></a></li>
-</ul>
-
-<h2>Related Documentation</h2>
-
-For further documentation, please see:
-<ul>
-  <li>
-    <a href=
-      "{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
-      <b>Java&trade;
-       Cryptography Architecture (JCA) Reference Guide
-      </b></a></li>
-  <li>
-    <a href=
-      "{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
-      <b>How to Implement a Provider in the
-      Java&trade; Cryptography Architecture
-      </b></a></li>
-</ul>
-
-@since 1.4
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/javax/crypto/spec/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,74 @@
+/*
+ * Copyright (c) 1999, 2007, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides classes and interfaces for key specifications and
+ * algorithm parameter specifications.
+ *
+ * <p>A key specification is a transparent representation of the key
+ * material that constitutes a key. A key may be specified in an
+ * algorithm-specific way, or in an algorithm-independent encoding
+ * format (such as ASN.1).  This package contains key specifications
+ * for Diffie-Hellman public and private keys, as well as key
+ * specifications for DES, Triple DES, and PBE secret keys.
+ *
+ * <p>An algorithm parameter specification is a transparent
+ * representation of the sets of parameters used with an
+ * algorithm. This package contains algorithm parameter specifications
+ * for parameters used with the Diffie-Hellman, DES, Triple DES, PBE,
+ * RC2 and RC5 algorithms.
+ *
+ *
+ * <ul>
+ * <li>PKCS #3: Diffie-Hellman Key-Agreement Standard, Version 1.4,
+ * November 1993.</li>
+ * <li>PKCS #5: Password-Based Encryption Standard, Version 1.5,
+ * November 1993.</li>
+ * <li>Federal Information Processing Standards Publication (FIPS PUB) 46-2:
+ * Data Encryption Standard (DES) </li>
+ * </ul>
+ *
+ * <h2>Related Documentation</h2>
+ *
+ * For documentation that includes information about algorithm
+ * parameter and key specifications, please see:
+ *
+ * <ul>
+ * <li>
+ *  <a href=
+ *    "{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
+ *    <b>Java&trade; Cryptography Architecture API Specification and Reference
+ *    </b></a></li>
+ * <li>
+ *  <a href=
+ *    "{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
+ *    <b>How to Implement a Provider for the
+ *    Java&trade; Cryptography Architecture
+ *    </b></a></li>
+ * </ul>
+ *
+ * @since 1.4
+ */
+package javax.crypto.spec;
--- a/jdk/src/java.base/share/classes/javax/crypto/spec/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,77 +0,0 @@
-<!--
-Copyright (c) 1999, 2007, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-
-<body bgcolor="white">
-
-Provides classes and interfaces for key specifications and algorithm
-parameter specifications.
-
-<p>A key specification is a transparent representation of the key
-material that constitutes a key. A key may be specified in an
-algorithm-specific way, or in an algorithm-independent encoding format
-(such as ASN.1).  This package contains key specifications for
-Diffie-Hellman public and private keys, as well as key specifications for DES,
-Triple DES, and PBE secret keys.
-
-<p>An algorithm parameter specification is a transparent representation
-of the sets of parameters used with an algorithm. This package contains
-algorithm parameter specifications for parameters used with the
-Diffie-Hellman, DES, Triple DES, PBE, RC2 and RC5 algorithms.
-
-<h2>Package Specification</h2>
-
-<ul>
-  <li>PKCS #3: Diffie-Hellman Key-Agreement Standard, Version 1.4,
-  November 1993.</li>
-  <li>PKCS #5: Password-Based Encryption Standard, Version 1.5,
-  November 1993.</li>
-  <li>Federal Information Processing Standards Publication (FIPS PUB) 46-2:
-  Data Encryption Standard (DES) </li>
-</ul>
-
-<h2>Related Documentation</h2>
-
-For documentation that includes information about algorithm parameter
-and key specifications, please see:
-<ul>
-  <li>
-    <a href=
-      "{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
-      <b>Java&trade; Cryptography Architecture API Specification and Reference
-      </b></a></li>
-  <li>
-    <a href=
-      "{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
-      <b>How to Implement a Provider for the
-      Java&trade; Cryptography Architecture
-      </b></a></li>
-</ul>
-
-@since 1.4
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/javax/net/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,33 @@
+/*
+ * Copyright (c) 1999, 2001, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides classes for networking applications. These classes include
+ * factories for creating sockets. Using socket factories you can
+ * encapsulate socket creation and configuration behavior.
+ *
+ * @since 1.4
+ */
+package javax.net;
--- a/jdk/src/java.base/share/classes/javax/net/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<!--
-Copyright (c) 1999, 2001, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-</head>
-<body bgcolor="white">
-
-Provides classes for networking applications. These classes include
-factories for creating sockets. Using socket factories you can encapsulate
-socket creation and configuration behavior.
-<!--
-<h2>Package Specification</h2>
-
-##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT #####
-<ul>
-  <li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a>
-</ul>
-
-<h2>Related Documentation</h2>
-
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
-</ul>
-
--->
-
-@since 1.4
-</body>
-</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/java.base/share/classes/javax/net/ssl/package-info.java	Fri May 22 10:45:59 2015 -0700
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 1999, 2011, 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+/**
+ * Provides classes for the secure socket package. Using the secure
+ * socket classes, you can communicate using SSL or a related security
+ * protocol to reliably detect any errors introduced into the network
+ * byte stream and to optionally encrypt the data and/or authenticate
+ * the communicating peers.
+ *
+ * <ul>
+ * <li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
+ * <b>Java&trade; Cryptography Architecture Standard Algorithm Name
+ * Documentation</b></a></li>
+ * </ul>
+ *
+ * @since 1.4
+ */
+package javax.net.ssl;
--- a/jdk/src/java.base/share/classes/javax/net/ssl/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-<!--
-Copyright (c) 1999, 2011, 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.  Oracle designates this
-particular file as subject to the "Classpath" exception as provided
-by Oracle in the LICENSE file that accompanied this code.
-
-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.
--->
-
-</head>
-<body bgcolor="white">
-
-Provides classes for the secure socket package. Using the secure socket
-classes, you can communicate using SSL or a related security protocol
-to reliably detect any errors introduced into the network byte stream
-and to optionally encrypt the data and/or authenticate the communicating peers.
-
-<h2>Package Specification</h2>
-
-<ul>
-  <li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
-    <b>Java&trade; Cryptography Architecture Standard Algorithm Name
-    Documentation</b></a></li>
-</ul>
-
-<!--
-<h2>Related Documentation</h2>
-
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-<ul>
-  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
-</ul>
-
--->
-
-@since 1.4
-</body>
-</html>
--- a/jdk/src/java.base/share/classes/sun/reflect/package.html	Fri May 22 10:33:27 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,187 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
-<HTML>
-<HEAD>
-<!--
-
- Copyright (c) 2001, 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.  Oracle designates this
- particular file as subject to the "Classpath" exception as provided
- by Oracle in the LICENSE file that accompanied this code.
-
- 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.
- 
--->
-</HEAD>
-<BODY BGCOLOR="white">
-<P>
-
-<B> Licensee impact of JDK 1.4 reflection changes </B>
-
-</P>
-<P>
-
-Sun's JDK 1.4 contains a new implementation of java.lang.reflect which
-offers substantially higher performance than previous JDKs' native
-code. Licensees can at their discretion port these changes. There are
-no public API or documentation changes associated with the new
-reflection implementation aside from a few minor clarifications in the
-specifications of Method.invoke(), Constructor.newInstance(), and a
-few methods in java.lang.reflect.Field.
-
-</P>
-<P>
-
-The bulk of the new implementation is Java programming language code
-which generates bytecodes, and is therefore portable. If licensees
-desire to port it, the following JVM changes are required:
-
-<OL>
-<LI> The following four new JVM entry points must be added:
-
- <UL>
- <LI> JVM_GetClassDeclaredConstructors
- <LI> JVM_GetClassDeclaredFields
- <LI> JVM_GetClassDeclaredMethods
- <LI> JVM_GetClassAccessFlags
- </UL>
-
-The first three return the declared constructors, fields, and methods
-for a given class, with an option to return only the public ones. They
-are similar in functionality to the earlier GetClassConstructors,
-GetClassFields, and GetClassMethods.  JVM_GetClassDeclaredFields and
-JVM_GetClassDeclaredMethods must intern the Strings for the names of
-the Field and Method objects returned. The fouth returns the access
-flags for a given class as marked in the class file, as opposed to in
-the InnerClasses attribute if the class is an inner class, and
-therefore differs from JVM_GetClassModifiers for inner classes (most
-importantly, protected inner classes; see 4471811.)
-
-<LI> The JVM's link resolver must be modified to allow all field and
-method references from subclasses of sun.reflect.MagicAccessorImpl to
-any other class (even to private members of other classes) to
-succeed. This allows setAccessible() and its associated checks to be
-implemented in Java.
-
-<LI> The code which calls the verifier must skip verification for all
-subclasses of sun.reflect.MagicAccessorImpl. (It was originally
-intended that only a subset of the stub classes used for serialization
-would not pass the verifier, specifically, those subclassing
-SerializationConstructorAccessorImpl; see 4486457 for a case where
-this does not work.)
-
-<LI> The stack walker for security checks must be modified to skip not
-only all Method.invoke() frames, but also any frames for which the
-class is a subclass of sun.reflect.MethodAccessorImpl.
-
-<LI> The JVM entry points JVM_InvokeMethod and
-JVM_NewInstanceFromConstructor are currently still used because the
-first invocation of the bytecode-based reflection is currently slower
-than the original native code. The security checks they perform can,
-however, be disabled, as they are now performed by Java programming
-language code.
-
-</OL>
-
-</P>
-<P>
-
-The following changes were discovered to be necessary for backward
-compatibility with certain applications (see bug 4474172):
-
-<OL>
-
-<LI> The existing JVM entry point JVM_LatestUserDefinedLoader
-(typically used in applications which rely on the 1.1 security
-framework) must skip reflection-related frames in its stack walk:
-specifically all frames associated with subclasses of
-sun.reflect.MethodAccessorImpl and
-sun.reflect.ConstructorAccessorImpl.
-
-<LI> The new reflection implementation can cause class loading to
-occur in previously-unexpected places (namely during reflective
-calls).  This can cause class loaders which contain subtle bugs to
-break.  In general it is not possible to guarantee complete backward
-bug compatibility, but one kind of bug has been observed more than
-once: the inability of a user-defined loader to handle delegation to
-it for a class it has already loaded. The new reflection
-implementation is predicated on delegation working properly, as it
-loads stub classes into newly-fabricated class loaders of type
-sun.reflect.DelegatingClassLoader, one stub class per loader, to allow
-unloading of the stub classes to occur more quickly. To handle this
-kind of bug, the JVM's internal class lookup mechanism must be
-slightly modified to check for instances of
-sun.reflect.DelegatingClassLoader as the incoming class loader and
-silently traverse the "parent" field once for such loaders before
-entering the bulk of the resolution code. This avoids an upcall to
-Java programming language code which certain loaders can not handle.
-
-</OL>
-
-</P>
-<P>
-
-The following JVM entry points may be deleted:
-
-<UL>
-<LI> JVM_GetClassFields
-<LI> JVM_GetClassMethods
-<LI> JVM_GetClassConstructors
-<LI> JVM_GetClassField
-<LI> JVM_GetClassMethod
-<LI> JVM_GetClassConstructor
-<LI> JVM_NewInstance
-<LI> JVM_GetField
-<LI> JVM_GetPrimitiveField
-<LI> JVM_SetField
-<LI> JVM_SetPrimitiveField
-</UL>
-
-</P>
-<P>
-
-To keep using the previous reflection implementation, licensees should
-not take changes from Sun's JDK 1.4 relating specifically to the
-implementation of reflection in the following classes/methods and
-any associated native code:
-
-<UL>
-<LI> java.lang.Class.newInstance0
-<LI> java.lang.Class.getClassLoader0
-<LI> java.lang.Class.getFields
-<LI> java.lang.Class.getMethods
-<LI> java.lang.Class.getDeclaredFields
-<LI> java.lang.Class.getDeclaredMethods
-<LI> java.lang.Class.getFields0
-<LI> java.lang.Class.getMethods0
-<LI> java.lang.Class.getConstructors0
-<LI> java.lang.Class.getField0
-<LI> java.lang.Class.getMethod0
-<LI> java.lang.Class.getConstructor0
-<LI> java.lang.ClassLoader.getCallerClassLoader
-<LI> java.lang.System.getCallerClass
-<LI> java.lang.reflect.AccessibleObject
-<LI> java.lang.reflect.Constructor
-<LI> java.lang.reflect.Field
-<LI> java.lang.reflect.Method
-<LI> java.lang.reflect.Modifier
-<LI> sun.misc.ClassReflector
-</UL>
-
-</P>
-</HTML>