From 0de6f9f413b3e86afee4a188dfdbe5c474a97f51 Mon Sep 17 00:00:00 2001
From: Joe Darcy
+ * 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.
+ *
+ *
+ * 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.
+ *
+ *
+ * NOTE: 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.)
+ *
+ *
+ * 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.
+ *
+ *
+ * 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".
+ *
+ *
+ * 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".
+ *
+ *
+ * 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.
+ *
+ *
-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.
-
-
-The pack methods may be used by application developers
-who wish to deploy large JARs on the web. The unpack methods may be used
-by deployment applications such as Java Web Start and Java Plugin.
-
-
-In typical use, the packed output should be further compressed using
-a suitable tool such as gzip or 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.
-
-
-NOTE: 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.)
-
-
-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.
-
-
-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".
-
-
-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".
-
-
-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.
-
- 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 referent.
+ * 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.
+ *
+ * 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.
+ *
+ * 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.
+ *
+ * Each reference-object type is implemented by a subclass of the abstract
-base 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.
-
- 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 Only developers who are defining new selector providers or
+ * asynchronous channel providers should need to make direct use of
+ * this package. 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;
diff --git a/jdk/src/java.base/share/classes/java/nio/channels/spi/package.html b/jdk/src/java.base/share/classes/java/nio/channels/spi/package.html
deleted file mode 100644
index a6f8cbfdcb3..00000000000
--- a/jdk/src/java.base/share/classes/java/nio/channels/spi/package.html
+++ /dev/null
@@ -1,45 +0,0 @@
-
-
-
-
- Only developers who are defining new selector providers or asynchronous
-channel providers should need to make direct use of this package. Unless otherwise noted, passing a 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
-
-
-
diff --git a/jdk/src/java.base/share/classes/java/nio/charset/package-info.java b/jdk/src/java.base/share/classes/java/nio/charset/package-info.java
new file mode 100644
index 00000000000..e18f568004a
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/nio/charset/package-info.java
@@ -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.
+ *
+ * A charset is named mapping between sequences of
+ * sixteen-bit Unicode characters and sequences of bytes, in the sense
+ * defined in RFC 2278.
+ * A decoder is an engine which transforms bytes in a specific
+ * charset into characters, and an encoder is an engine which
+ * transforms characters into bytes. Encoders and decoders operate on
+ * byte and character buffers. They are collectively referred to as
+ * coders.
+ *
+ * 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.
+ *
+ * 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.
+ *
+ * Support for new charsets can be made available via the
+ * interface defined in the {@link
+ * java.nio.charset.spi.CharsetProvider} class in the {@link
+ * java.nio.charset.spi} package.
+ *
+ * Unless otherwise noted, passing a 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;
diff --git a/jdk/src/java.base/share/classes/java/nio/charset/package.html b/jdk/src/java.base/share/classes/java/nio/charset/package.html
deleted file mode 100644
index 69b160b8139..00000000000
--- a/jdk/src/java.base/share/classes/java/nio/charset/package.html
+++ /dev/null
@@ -1,88 +0,0 @@
-
-
-
-
- Class name Description A charset is named mapping between sequences of sixteen-bit Unicode
-characters and sequences of bytes, in the sense defined in RFC 2278. A
-decoder is an engine which transforms bytes in a specific charset into
-characters, and an encoder is an engine which transforms characters into
-bytes. Encoders and decoders operate on byte and character buffers. They are
-collectively referred to as coders.
-
- 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.
-
- 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.
-
- Support for new charsets can be made available via the interface defined in
-the {@link java.nio.charset.spi.CharsetProvider} class in the {@link
-java.nio.charset.spi} package.
-
- Unless otherwise noted, passing a 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
-
-
-
diff --git a/jdk/src/java.base/share/classes/java/nio/charset/spi/package-info.java b/jdk/src/java.base/share/classes/java/nio/charset/spi/package-info.java
new file mode 100644
index 00000000000..8e5e81da703
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/nio/charset/spi/package-info.java
@@ -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.
+ *
+ * Only developers who are defining new charsets should need to
+ * make direct use of this package. 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;
diff --git a/jdk/src/java.base/share/classes/java/nio/charset/spi/package.html b/jdk/src/java.base/share/classes/java/nio/charset/spi/package.html
deleted file mode 100644
index a7b7ab18879..00000000000
--- a/jdk/src/java.base/share/classes/java/nio/charset/spi/package.html
+++ /dev/null
@@ -1,45 +0,0 @@
-
-
-
-
- Only developers who are defining new charsets should need to make direct
-use of this package. Unless otherwise noted, passing a 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
-
-
-
diff --git a/jdk/src/java.base/share/classes/java/nio/package-info.java b/jdk/src/java.base/share/classes/java/nio/package-info.java
new file mode 100644
index 00000000000..374e0bb59a9
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/nio/package-info.java
@@ -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.
+ *
+ *
+ * The central abstractions of the NIO APIs are: Buffers, which are containers for data;
+ * Charsets and their
+ * associated decoders and encoders, Channels of
+ * various types, which represent connections Selectors and selection keys, which
+ * together with The java.nio 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 buffer is a container for a fixed amount of data of a
+ * specific primitive type. In addition to its content a buffer has a
+ * position, which is the index of the next element to be read
+ * or written, and a limit, 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 clearing, flipping, and rewinding, for
+ * marking the current position, and for resetting the
+ * position to the previous mark.
+ *
+ * There is a buffer class for each non-boolean primitive type.
+ * Each class defines a family of get and put methods
+ * for moving data out of and in to a buffer, methods for
+ * compacting, duplicating, and slicing a buffer,
+ * and static methods for allocating a new buffer as well as
+ * for wrapping an existing array into a buffer.
+ *
+ * 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:
+ *
+ * A byte buffer can be allocated as a direct buffer, in which
+ * case the Java virtual machine will make a best effort to perform
+ * native I/O operations directly upon it. A byte buffer can be created by {@link
+ * java.nio.channels.FileChannel#map mapping} 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. A byte buffer provides access to its content as either a
+ * heterogeneous or homogeneous sequence of binary data of any
+ * non-boolean primitive type, in either big-endian or little-endian
+ * byte order. Unless otherwise noted, passing a 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;
diff --git a/jdk/src/java.base/share/classes/java/nio/package.html b/jdk/src/java.base/share/classes/java/nio/package.html
deleted file mode 100644
index 1ce7131f869..00000000000
--- a/jdk/src/java.base/share/classes/java/nio/package.html
+++ /dev/null
@@ -1,139 +0,0 @@
-
-
-
-
- The central abstractions of the NIO APIs are: Buffers, which are containers for data;
- Charsets and their
- associated decoders and encoders, Channels of
- various types, which represent connections Selectors and selection keys, which together with The java.nio 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.
-
-
-
-
- Buffers Description A buffer is a container for a fixed amount of data of a specific
-primitive type. In addition to its content a buffer has a position,
-which is the index of the next element to be read or written, and a
-limit, 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 clearing, flipping, and rewinding, for
-marking the current position, and for resetting the position to
-the previous mark.
-
- There is a buffer class for each non-boolean primitive type. Each class
-defines a family of get and put methods for moving data out of
-and in to a buffer, methods for compacting, duplicating, and
-slicing a buffer, and static methods for allocating a new buffer
-as well as for wrapping an existing array into a buffer.
-
- 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:
-
- A byte buffer can be allocated as a
- direct buffer, in which case the Java virtual machine will make a
- best effort to perform native I/O operations directly upon it. A byte buffer can be created by {@link
- java.nio.channels.FileChannel#map mapping} 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. A byte buffer provides access to its content as either a heterogeneous
- or homogeneous sequence of binary data
- of any non-boolean primitive type, in either big-endian or little-endian byte order. Unless otherwise noted, passing a 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
-
-
-
diff --git a/jdk/src/java.base/share/classes/java/text/package-info.java b/jdk/src/java.base/share/classes/java/text/package-info.java
new file mode 100644
index 00000000000..b4c411844bd
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/text/package-info.java
@@ -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.
+ *
+ * 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:
+ *
+ *
-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:
-
+ * In JAR files, all file names must be encoded in the UTF-8 encoding.
+ *
- In JAR files, all file names must be encoded in the UTF-8 encoding.
- 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.
+ *
+ * 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. Unless otherwise noted, passing a null argument to a
+ * method in any class or interface in this package will cause a
+ * {@link java.lang.NullPointerException NullPointerException} to be
+ * thrown.
+ *
+ * An excellent tutorial and overview of regular expressions is Mastering Regular
+ * Expressions, Jeffrey E. F. Friedl, O'Reilly and Associates,
+ * 1997. 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.
-
- 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. Unless otherwise noted, passing a null argument to a method
-in any class or interface in this package will cause a
-{@link java.lang.NullPointerException NullPointerException} to be thrown.
-
- An excellent tutorial and overview of regular expressions is Mastering Regular
-Expressions, Jeffrey E. F. Friedl, O'Reilly and Associates, 1997. 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).
+ *
+ * For more developer information on how to use these interfaces,
+ * including information on how to design
-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).
-
-For more developer information on how to use
-these interfaces, including information on
-how to design Support for encryption includes symmetric, asymmetric, block,
+ * and stream ciphers. This package also supports secure streams and
+ * sealed objects.
+ *
+ * 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.
+ *
+ * Support for encryption includes symmetric, asymmetric, block, and
-stream ciphers. This package also supports secure streams and sealed
-objects.
-
- 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.
-
- 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.
+ *
+ * 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.
+ *
+ *
+ * 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.
-
- 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.
-
-
-
- Licensee impact of JDK 1.4 reflection changes
-
-
-
-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.
-
-
-
-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:
-
- Package Specification
+ * Network Transfer Format Specification :
+ * http://jcp.org/en/jsr/detail?id=200
+ *
+ * Related Documentation
+ * For overviews, tutorials, examples, guides, and tool documentation, please
+ * see:
+ *
+ *
+ *
+ *
+ * Package Specification
-Network Transfer Format Specification :
-http://jcp.org/en/jsr/detail?id=200
-
- Related Documentation
-For overviews, tutorials, examples, guides, and tool documentation, please
-see:
-
-
-
-
-
-
-
diff --git a/jdk/src/java.base/share/classes/com/sun/net/ssl/package-info.java b/jdk/src/java.base/share/classes/com/sun/net/ssl/package-info.java
new file mode 100644
index 00000000000..eb59e238164
--- /dev/null
+++ b/jdk/src/java.base/share/classes/com/sun/net/ssl/package-info.java
@@ -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;
diff --git a/jdk/src/java.base/share/classes/com/sun/net/ssl/package.html b/jdk/src/java.base/share/classes/com/sun/net/ssl/package.html
deleted file mode 100644
index 20352c2b117..00000000000
--- a/jdk/src/java.base/share/classes/com/sun/net/ssl/package.html
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
-
-
-
-
-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).
-
-
-
-
diff --git a/jdk/src/java.base/share/classes/java/io/package-info.java b/jdk/src/java.base/share/classes/java/io/package-info.java
new file mode 100644
index 00000000000..cf1b699cd0d
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/io/package-info.java
@@ -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.
+ *
+ * Package Specification
+ *
+ *
+ * Related Documentation
+ *
+ * For overviews, tutorials, examples, guides, and tool documentation,
+ * please see:
+ *
+ *
+ *
+ * @since 1.0
+ */
+package java.io;
diff --git a/jdk/src/java.base/share/classes/java/io/package.html b/jdk/src/java.base/share/classes/java/io/package.html
deleted file mode 100644
index 5d80e56da9d..00000000000
--- a/jdk/src/java.base/share/classes/java/io/package.html
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-
-
-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
-NullPointerException to be thrown.
-
-Package Specification
-
-
-Related Documentation
-
-For overviews, tutorials, examples, guides, and tool documentation,
-please see:
-
-
-@since 1.0
-
-
diff --git a/jdk/src/java.base/share/classes/java/lang/ref/package-info.java b/jdk/src/java.base/share/classes/java/lang/ref/package-info.java
new file mode 100644
index 00000000000..a6273a92183
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/lang/ref/package-info.java
@@ -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.
+ *
+ *Package Specification
+ *
+ * A reference object 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: soft, weak,
+ * and phantom. 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.
+ *
+ * Notification
+ *
+ * A program may request to be notified of changes in an object's
+ * reachability by registering an appropriate reference
+ * object with a reference queue 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 enqueued. 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.
+ *
+ * Automatically-cleared references
+ *
+ * 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.
+ *
+ *
+ * Reachability
+ *
+ * Going from strongest to weakest, the different levels of
+ * reachability reflect the life cycle of an object. They are
+ * operationally defined as follows:
+ *
+ *
+ *
+ *
+ *
+ * @author Mark Reinhold
+ * @since 1.2
+ */
+package java.lang.ref;
diff --git a/jdk/src/java.base/share/classes/java/lang/ref/package.html b/jdk/src/java.base/share/classes/java/lang/ref/package.html
deleted file mode 100644
index f22a455f6ac..00000000000
--- a/jdk/src/java.base/share/classes/java/lang/ref/package.html
+++ /dev/null
@@ -1,147 +0,0 @@
-
-
-
-
-
-
-
-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.
-
-
-Package Specification
-
-A reference object 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: soft, weak, and phantom. 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.
-
-{@link java.lang.ref.Reference} class. An instance of one of
-these subclasses encapsulates a single reference to a particular object, called
-the referent. Every reference object provides methods for getting and
-clearing the reference. Aside from the clearing operation reference objects
-are otherwise immutable, so no 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.
-
-
-Notification
-
-A program may request to be notified of changes in an object's reachability by
-registering an appropriate reference object with a reference
-queue 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 enqueued. 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.
-
-{@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.
-
-
-Automatically-cleared references
-
-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.
-
-
-
-Reachability
-
-Going from strongest to weakest, the different levels of reachability reflect
-the life cycle of an object. They are operationally defined as follows:
-
-
-
-
-
-
-@author Mark Reinhold
-@since 1.2
-
-
-
-
diff --git a/jdk/src/java.base/share/classes/java/nio/channels/spi/package-info.java b/jdk/src/java.base/share/classes/java/nio/channels/spi/package-info.java
new file mode 100644
index 00000000000..84365567a89
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/nio/channels/spi/package-info.java
@@ -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.
+ *
+ *
+ *
+ *
+ *
+ * Class name Description
+ * {@link java.nio.charset.Charset}
+ * A named mapping between characters
and bytes
+ * {@link java.nio.charset.CharsetDecoder}
+ * Decodes bytes into characters
+ * {@link java.nio.charset.CharsetEncoder}
+ * Encodes characters into bytes
+ * {@link java.nio.charset.CoderResult}
+ * Describes coder results
+ *
+ * {@link java.nio.charset.CodingErrorAction}
+ * Describes actions to take when
coding errors are detected
-
-
-
-
- {@link java.nio.charset.Charset}
- A named mapping between characters
and bytes
- {@link java.nio.charset.CharsetDecoder}
- Decodes bytes into characters
- {@link java.nio.charset.CharsetEncoder}
- Encodes characters into bytes
- {@link java.nio.charset.CoderResult}
- Describes coder results
-
-{@link java.nio.charset.CodingErrorAction}
- Describes actions to take when
coding errors are detected
+ *
+ *
+ *
+ *
which
+ * translate between bytes and Unicode characters;
to entities
+ * capable of performing I/O operations; and
selectable channels define a multiplexed,
+ * non-blocking
I/O facility.
+ *
+ *
+ *
+ * Buffers Description
+ * {@link java.nio.Buffer}
+ * Position, limit, and capacity;
+ *
clear, flip, rewind, and mark/reset
+ * {@link java.nio.ByteBuffer}
+ * Get/put, compact, views; allocate, wrap
+ * {@link java.nio.MappedByteBuffer}
+ * A byte buffer mapped to a file
+ * {@link java.nio.CharBuffer}
+ * Get/put, compact; allocate, wrap
+ * {@link java.nio.DoubleBuffer}
+ * ' '
+ * {@link java.nio.FloatBuffer}
+ * ' '
+ * {@link java.nio.IntBuffer}
+ * ' '
+ * {@link java.nio.LongBuffer}
+ * ' '
+ * {@link java.nio.ShortBuffer}
+ * ' '
+ * {@link java.nio.ByteOrder}
+ * Typesafe enumeration for byte orders
+ *
+ *
+ *
+ *
-
-
-
-
which translate between
- bytes and Unicode characters;
to entities capable of
- performing I/O operations; and
- selectable channels define a multiplexed, non-blocking
- I/O facility.
-
-
-
-
- {@link java.nio.Buffer}
- Position, limit, and capacity;
-
clear, flip, rewind, and mark/reset
- {@link java.nio.ByteBuffer}
- Get/put, compact, views; allocate, wrap
- {@link java.nio.MappedByteBuffer}
- A byte buffer mapped to a file
- {@link java.nio.CharBuffer}
- Get/put, compact; allocate, wrap
- {@link java.nio.DoubleBuffer}
- ' '
- {@link java.nio.FloatBuffer}
- ' '
- {@link java.nio.IntBuffer}
- ' '
- {@link java.nio.LongBuffer}
- ' '
- {@link java.nio.ShortBuffer}
- ' '
-{@link java.nio.ByteOrder}
- Typesafe enumeration for byte orders
-
-
-
-
+ *
+ *
+ * @since 1.1
+ */
+package java.text;
diff --git a/jdk/src/java.base/share/classes/java/text/package.html b/jdk/src/java.base/share/classes/java/text/package.html
deleted file mode 100644
index 3e9e51f15c7..00000000000
--- a/jdk/src/java.base/share/classes/java/text/package.html
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-
-
-
-
-
-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.
-
-
-
-
-@since 1.1
-
-
diff --git a/jdk/src/java.base/share/classes/java/text/spi/package-info.java b/jdk/src/java.base/share/classes/java/text/spi/package-info.java
new file mode 100644
index 00000000000..3b8fa8bc9a1
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/text/spi/package-info.java
@@ -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;
diff --git a/jdk/src/java.base/share/classes/java/text/spi/package.html b/jdk/src/java.base/share/classes/java/text/spi/package.html
deleted file mode 100644
index fa08ec1fb35..00000000000
--- a/jdk/src/java.base/share/classes/java/text/spi/package.html
+++ /dev/null
@@ -1,50 +0,0 @@
-
-
-
-
-
-
-
-Service provider classes for the classes in the java.text package.
-
-
-@since 1.6
-
-
diff --git a/jdk/src/java.base/share/classes/java/util/jar/package-info.java b/jdk/src/java.base/share/classes/java/util/jar/package-info.java
new file mode 100644
index 00000000000..2a7431b9577
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/util/jar/package-info.java
@@ -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.
+ *
+ * Package Specification
+ *
+ * The java.util.jar package is based on the following
+ * specifications:
+ *
+ *
+ *
+ *
+ * @since 1.2
+ */
+package java.util.jar;
diff --git a/jdk/src/java.base/share/classes/java/util/jar/package.html b/jdk/src/java.base/share/classes/java/util/jar/package.html
deleted file mode 100644
index 5c3a366122c..00000000000
--- a/jdk/src/java.base/share/classes/java/util/jar/package.html
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
-
-
-
-
-
-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.
-
-
-Package Specification
-
-The java.util.jar package is based on the following specifications:
-
-
-
-
-
-@since 1.2
-
-
diff --git a/jdk/src/java.base/share/classes/java/util/package-info.java b/jdk/src/java.base/share/classes/java/util/package-info.java
new file mode 100644
index 00000000000..ab706e0d179
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/util/package-info.java
@@ -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).
+ *
+ * Package Specification
+ *
+ *
+ * Related Documentation
+ * For overviews, tutorials, examples, guides, and tool documentation,
+ * please see:
+ *
+ *
+ * @since 1.0
+ */
+package java.util;
diff --git a/jdk/src/java.base/share/classes/java/util/package.html b/jdk/src/java.base/share/classes/java/util/package.html
deleted file mode 100644
index eb77a146b0f..00000000000
--- a/jdk/src/java.base/share/classes/java/util/package.html
+++ /dev/null
@@ -1,55 +0,0 @@
-
-
-
-
-
-
-
-
-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).
-
-Package Specification
-
-
-Related Documentation
-For overviews, tutorials, examples, guides, and tool documentation, please see:
-
-
-@since 1.0
-
-
diff --git a/jdk/src/java.base/share/classes/java/util/regex/package-info.java b/jdk/src/java.base/share/classes/java/util/regex/package-info.java
new file mode 100644
index 00000000000..2907f10c003
--- /dev/null
+++ b/jdk/src/java.base/share/classes/java/util/regex/package-info.java
@@ -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.
+ *
+ * Related Documentation
+ *
+ * Related Documentation
-
-Key classes for
+ * hardware devices, please refer to the cryptographic provider
+ * developer guide:
+ *
+ * Package Specification
+ *
+ *
+ *
+ *
+ * Related Documentation
+ *
+ * For further documentation, please see:
+ *
+ *
+ * @since 1.4
+ */
+package javax.crypto.interfaces;
diff --git a/jdk/src/java.base/share/classes/javax/crypto/interfaces/package.html b/jdk/src/java.base/share/classes/javax/crypto/interfaces/package.html
deleted file mode 100644
index c43000e80a7..00000000000
--- a/jdk/src/java.base/share/classes/javax/crypto/interfaces/package.html
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
-
-
-
-
-
-Provides interfaces for Diffie-Hellman keys as defined in
-RSA Laboratories' PKCS #3.
-Key classes
-for hardware devices, please refer to the
-cryptographic provider developer guide:
-Package Specification
-
-
-
-
-Related Documentation
-
-For further documentation, please see:
-
-
-@since 1.4
-
-
diff --git a/jdk/src/java.base/share/classes/javax/crypto/package-info.java b/jdk/src/java.base/share/classes/javax/crypto/package-info.java
new file mode 100644
index 00000000000..754b5f643c8
--- /dev/null
+++ b/jdk/src/java.base/share/classes/javax/crypto/package-info.java
@@ -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.
+ *
+ * Related Documentation
+ *
+ * For further documentation, please see:
+ *
+ *
+ *
+ * @since 1.4
+ */
+package javax.crypto;
diff --git a/jdk/src/java.base/share/classes/javax/crypto/package.html b/jdk/src/java.base/share/classes/javax/crypto/package.html
deleted file mode 100644
index c1d46ff528c..00000000000
--- a/jdk/src/java.base/share/classes/javax/crypto/package.html
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
-
-
-
-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.
-
-Package Specification
-
-
-
-Related Documentation
-
-For further documentation, please see:
-
-
-
-@since 1.4
-
-
diff --git a/jdk/src/java.base/share/classes/javax/crypto/spec/package-info.java b/jdk/src/java.base/share/classes/javax/crypto/spec/package-info.java
new file mode 100644
index 00000000000..a9b4589321e
--- /dev/null
+++ b/jdk/src/java.base/share/classes/javax/crypto/spec/package-info.java
@@ -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.
+ *
+ *
+ *
+ *
+ * Related Documentation
+ *
+ * For documentation that includes information about algorithm
+ * parameter and key specifications, please see:
+ *
+ *
+ *
+ *
+ * @since 1.4
+ */
+package javax.crypto.spec;
diff --git a/jdk/src/java.base/share/classes/javax/crypto/spec/package.html b/jdk/src/java.base/share/classes/javax/crypto/spec/package.html
deleted file mode 100644
index 7f563fbb372..00000000000
--- a/jdk/src/java.base/share/classes/javax/crypto/spec/package.html
+++ /dev/null
@@ -1,77 +0,0 @@
-
-
-
-
-
-
-
-Provides classes and interfaces for key specifications and algorithm
-parameter specifications.
-
-Package Specification
-
-
-
-
-Related Documentation
-
-For documentation that includes information about algorithm parameter
-and key specifications, please see:
-
-
-
-@since 1.4
-
-
diff --git a/jdk/src/java.base/share/classes/javax/net/package-info.java b/jdk/src/java.base/share/classes/javax/net/package-info.java
new file mode 100644
index 00000000000..71de9e40091
--- /dev/null
+++ b/jdk/src/java.base/share/classes/javax/net/package-info.java
@@ -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;
diff --git a/jdk/src/java.base/share/classes/javax/net/package.html b/jdk/src/java.base/share/classes/javax/net/package.html
deleted file mode 100644
index 35845a1830a..00000000000
--- a/jdk/src/java.base/share/classes/javax/net/package.html
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
-
-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
-
-
diff --git a/jdk/src/java.base/share/classes/javax/net/ssl/package-info.java b/jdk/src/java.base/share/classes/javax/net/ssl/package-info.java
new file mode 100644
index 00000000000..9fd6868587e
--- /dev/null
+++ b/jdk/src/java.base/share/classes/javax/net/ssl/package-info.java
@@ -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.
+ *
+ *
+ *
+ * @since 1.4
+ */
+package javax.net.ssl;
diff --git a/jdk/src/java.base/share/classes/javax/net/ssl/package.html b/jdk/src/java.base/share/classes/javax/net/ssl/package.html
deleted file mode 100644
index d75e1d397a0..00000000000
--- a/jdk/src/java.base/share/classes/javax/net/ssl/package.html
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
-
-
-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.
-
-Package Specification
-
-
-
-
-
-@since 1.4
-
-
diff --git a/jdk/src/java.base/share/classes/sun/reflect/package.html b/jdk/src/java.base/share/classes/sun/reflect/package.html
deleted file mode 100644
index 18ff61624bb..00000000000
--- a/jdk/src/java.base/share/classes/sun/reflect/package.html
+++ /dev/null
@@ -1,187 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-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.)
-
-
- -The following changes were discovered to be necessary for backward -compatibility with certain applications (see bug 4474172): - -
- -The following JVM entry points may be deleted: - -
- -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: - -