This commit is contained in:
Phil Race 2017-05-17 11:01:09 -07:00
commit 7eb1822889
202 changed files with 2707 additions and 1692 deletions

View File

@ -411,3 +411,4 @@ a7942c3b1e59495dbf51dc7c41aab355fcd253d7 jdk-9+165
5d2b48f1f0a322aca719b49ff02ab421705bffc7 jdk-9+166
7828aedcb525df40b7c8122bcc3f997c75ebaf7f jdk-9+167
e78da9db6299b3fcba49300d52e2359e82fdd218 jdk-9+168
177436a54ca13730ffc725a6e5dbfcd9486f3da3 jdk-9+169

View File

@ -291,9 +291,21 @@ endif
################################################################################
ifneq ($(filter images, $(MAKECMDGOALS)), )
$(eval $(call SetupCopyFiles, COPY_TO_TEST_IMAGE, \
SRC := $(SUPPORT_OUTPUTDIR)/demos/image, \
DEST := $(TEST_IMAGE_DIR)/jdk/demos, \
FILES := $(call DoubleDollar, $(call CacheFind, $(SUPPORT_OUTPUTDIR)/demos/image)), \
))
IMAGES_TARGETS := $(COPY_TO_TEST_IMAGE)
endif
################################################################################
# Hook to include the corresponding custom file, if present.
$(eval $(call IncludeCustomExtension, jdk, CompileDemos.gmk))
all: $(TARGETS)
images: $(IMAGES_TARGETS)
.PHONY: all

View File

@ -23,21 +23,33 @@
# questions.
#
default: all
include $(SPEC)
include MakeBase.gmk
include JavaCompilation.gmk
include SetupJavaCompilers.gmk
################################################################################
TOOLS_CLASSES_DIR := $(BUILDTOOLS_OUTPUTDIR)/tools_jigsaw_classes
$(eval $(call SetupJavaCompilation,BUILD_JIGSAW_TOOLS, \
SETUP := GENERATE_USINGJDKBYTECODE, \
SRC := $(JDK_TOPDIR)/make/src/classes, \
INCLUDES := build/tools/deps \
build/tools/docs \
build/tools/jigsaw, \
COPY := .properties .html, \
BIN := $(TOOLS_CLASSES_DIR), \
ADD_JAVAC_FLAGS := \
--add-modules jdk.jdeps \
--add-exports java.base/jdk.internal.module=ALL-UNNAMED \
--add-exports jdk.jdeps/com.sun.tools.jdeps=ALL-UNNAMED \
))
TARGETS += $(BUILD_JIGSAW_TOOLS)
################################################################################
all: $(TARGETS)

View File

@ -46,6 +46,7 @@ $(eval $(call SetupJavaCompilation,BUILD_TOOLS_JDK, \
SETUP := GENERATE_OLDBYTECODE, \
SRC := $(BUILD_TOOLS_SRC_DIRS), \
EXCLUDES := build/tools/deps \
build/tools/docs \
build/tools/jigsaw, \
BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes))

View File

@ -49,4 +49,7 @@ TOOL_ADD_PACKAGES_ATTRIBUTE := $(BUILD_JAVA) $(JAVA_FLAGS_SMALL) \
--add-exports java.base/jdk.internal.module=ALL-UNNAMED \
build.tools.jigsaw.AddPackagesAttribute
TOOL_GEN_DOCS_BUNDLE_PAGE := $(BUILD_JAVA) -esa -ea -cp $(TOOLS_CLASSES_DIR) \
build.tools.docs.GenDocsBundlePage
endif # _MODULE_TOOLS_GMK

View File

@ -0,0 +1,186 @@
/*
* Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. 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.
*/
package build.tools.docs;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.lang.module.ModuleFinder;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* Build tool to generate the docs bundle index page.
*/
public class GenDocsBundlePage {
private static String DOCS_BUNDLE_PAGE = "docs-bundle-page.html";
private static String MODULE_GROUPS_PROPS = "docs-module-groups.properties";
private static String USAGE =
"GenDocsBundlePage --output <file path> --title <title>" +
" [--template <template>]";
public static void main(String... args) throws IOException {
String title = null;
Path outputfile = null;
Path template = null;
for (int i=0; i < args.length; i++) {
String option = args[i];
if (option.equals("--output")) {
outputfile = Paths.get(getArgument(args, option, ++i));
} else if (option.equals("--title")) {
title = getArgument(args, option, ++i);
} else if (option.equals("--template")) {
template = Paths.get(getArgument(args, option, ++i));
} else if (option.startsWith("-")) {
throw new IllegalArgumentException("Invalid option: " + option);
}
}
if (outputfile == null) {
System.err.println("ERROR: must specify --output option");
System.exit(1);
}
if (title == null) {
System.err.println("ERROR: must specify --title option");
System.exit(1);
}
try (InputStream is = readTemplate(template);
BufferedReader reader = new BufferedReader(new InputStreamReader(is)))
{
new GenDocsBundlePage(title, outputfile).run(reader);
}
}
private static String getArgument(String[] args, String option, int index) {
if (index < args.length) {
return args[index];
}
throw new IllegalArgumentException("Argument must be specified for " + option);
}
private static InputStream readTemplate(Path template) throws IOException {
if (template != null) {
return Files.newInputStream(template);
} else {
return GenDocsBundlePage.class.getResourceAsStream(DOCS_BUNDLE_PAGE);
}
}
private static final String HEADER_TITLE = "@HEADER_TITLE@";
final Path outputfile;
final String title;
final Map<String, String> moduleGroups;
GenDocsBundlePage(String title, Path outputfile) throws IOException
{
this.outputfile = outputfile;
this.title = title;
this.moduleGroups = moduleGroups();
}
static Map<String, String> moduleGroups() throws IOException {
ModuleFinder finder = ModuleFinder.ofSystem();
Map<String, String> groups = new HashMap<>();
try (InputStream in = GenDocsBundlePage.class.getResourceAsStream(MODULE_GROUPS_PROPS)) {
Properties props = new Properties();
props.load(in);
for (String key: props.stringPropertyNames()) {
Set<String> mods = Stream.of(props.getProperty(key).split("\\s+"))
.filter(mn -> finder.find(mn).isPresent())
.map(String::trim)
.collect(Collectors.toSet());
// divide into 3 columns: Java SE, JDK, JavaFX
StringBuilder sb = new StringBuilder();
sb.append(mods.stream()
.filter(mn -> mn.startsWith("java."))
.sorted()
.map(GenDocsBundlePage::toHRef)
.collect(Collectors.joining("\n")));
sb.append("</td>\n<td>")
.append(mods.stream()
.filter(mn -> mn.startsWith("jdk."))
.sorted()
.map(GenDocsBundlePage::toHRef)
.collect(Collectors.joining("\n")));
sb.append("</td>\n<td>");
if (mods.stream().anyMatch(mn -> mn.startsWith("javafx."))) {
sb.append(mods.stream()
.filter(mn -> mn.startsWith("javafx."))
.sorted()
.map(GenDocsBundlePage::toHRef)
.collect(Collectors.joining("\n")));
}
String name = "@" + key.toUpperCase(Locale.ENGLISH) + "@";
groups.put(name, sb.toString());
}
}
return groups;
}
static String toHRef(String mn) {
return String.format("<a href=\"api/%s-summary.html\">%s</a><br>", mn, mn);
}
void run(BufferedReader reader) throws IOException {
if (Files.notExists(outputfile.getParent())) {
Files.createDirectories(outputfile.getParent());
}
try (BufferedWriter bw = Files.newBufferedWriter(outputfile, StandardCharsets.UTF_8);
PrintWriter writer = new PrintWriter(bw)) {
reader.lines().map(this::genOutputLine)
.forEach(writer::println);
}
}
String genOutputLine(String line) {
if (line.contains(HEADER_TITLE)) {
line = line.replace(HEADER_TITLE, title);
}
if (line.contains("@")) {
for (Map.Entry<String,String> e: moduleGroups.entrySet()) {
if (line.contains(e.getKey())) {
line = line.replace(e.getKey(), e.getValue());
}
}
}
return line;
}
}

View File

@ -0,0 +1,146 @@
<!--
Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation. 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>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html;" charset="utf-8">
<style type="text/css">
table {
border-collapse: collapse;
}
table {
border: 1px solid black;
}
th ,td {
border: 0px solid black;
}
thead th {
background-color: #DDD;
}
tbody > tr:nth-child(even) {
background-color: #EEE
}
tbody > tr:nth-child(odd) {
background-color: #FFF
}
th, td {
font-family: sans-serif; /* could eventually be DejaVu */
font-size: small;
padding: 5px 10px;
vertical-align:top;
}
td a {
text-decoration: none;
}
tr th {
text-align:left;
}
caption {
font-size: smaller;
font-weight: bold;
}
</style>
<title>@HEADER_TITLE@</title>
</head>
<body>
<h1>@HEADER_TITLE@</h1>
<ul>
<li><a href="api/index.html">JDK API Specification</a></li>
<li>Java Language Specification</li>
<li>Java Virtual Machine Specification</li>
</ul>
<table>
<caption>Modules</caption>
<thead>
<tr>
<th scope="col">Group</th>
<th scope="col">Java SE</th>
<th scope="col">JDK</th>
<th scope="col">JavaFX</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">Foundation</th>
<td>@CORE_MODULES@</td>
</tr>
<tr>
<th scope="row">Security</th>
<td>@SECURITY_MODULES@</td>
</tr>
<tr>
<th scope="row">Instrumentation and<br>Management</th>
<td>@INSTRUMENT_MGMT_MODULES@</td>
</tr>
<tr>
<th scope="row">Integration</th>
<td>@INTEGRATION_MODULES@</td>
</tr>
<tr>
<th scope="row">User Interface</th>
<td>@UI_TOOLKITS_MODULES@</td>
</tr>
<tr>
<th scope="row">Compiler and Scripting</th>
<td>@COMPILER_SCRIPTING_MODULES@</td>
</tr>
<tr>
<th scope="row">Debugging</th>
<td>@DEBUG_MODULES@</td>
</tr>
<tr>
<th scope="row">Tools and Tool APIs</th>
<td>@TOOL_MODULES@</td>
</tr>
<tr>
<th scope="row">Incubating Features</th>
<td>@INCUBATOR_MODULES@</td>
</tr>
<tr>
<th scope="row">Java EE</th>
<td>@JAVA_EE_MODULES@</td>
</tr>
<tr>
<th scope="row"></th>
<th scope="row">Outside Java SE</th>
<th scope="row">JDK</th>
<th scope="row">JavaFX</th>
</tr>
<tr>
<th scope="row">Others</th>
<td>@OTHER_MODULES@</td>
</tr>
</tbody>
</table>
<p>
<hr/>
<a href="legal/cpyr.html">Copyright</a>&copy; 1993, 2017, Oracle and/or its affiliates. All rights reserved.</p>
</body>
</html>

View File

@ -0,0 +1,101 @@
# Module Grouping for the docs bundle page
#
core_modules=\
java.base \
jdk.charsets \
jdk.localedata \
jdk.net \
jdk.sctp \
jdk.zipfs
java_ee_modules=\
java.activation \
java.corba \
java.transaction \
java.xml.bind \
java.xml.ws \
java.xml.ws.annotation
security_modules=\
java.security.jgss \
java.security.sasl \
java.xml.crypto \
jdk.security.auth \
jdk.security.jgss \
jdk.crypto.cryptoki \
jdk.crypto.ec \
jdk.crypto.mscapi \
jdk.crypto.ucrypto
instrument_mgmt_modules=\
java.instrument \
java.management \
java.management.rmi \
jdk.jfr \
jdk.management \
jdk.management.agent \
jdk.management.cmm \
jdk.management.jfr \
jdk.management.resource \
integration_modules=\
java.logging \
java.naming \
java.prefs \
java.rmi \
java.sql \
java.sql.rowset \
java.xml \
jdk.httpserver \
jdk.naming.dns \
jdk.naming.rmi
ui_toolkits_modules=\
java.datatransfer \
java.desktop \
javafx.base \
javafx.controls \
javafx.fxml \
javafx.graphics \
javafx.media \
javafx.swing \
javafx.web \
jdk.accessibility
other_modules=\
java.jnlp \
java.smartcardio \
jdk.jsobject \
jdk.xml.dom
debug_modules=\
jdk.jdi \
jdk.jdwp.agent
tool_modules=\
jdk.attach \
jdk.editpad \
jdk.jartool \
jdk.javadoc \
jdk.jcmd \
jdk.jconsole \
jdk.jdeps \
jdk.jlink \
jdk.jshell \
jdk.jstatd \
jdk.pack \
jdk.policytool \
jdk.packager.services \
jdk.rmic
compiler_scripting_modules=\
java.compiler \
java.scripting \
jdk.compiler \
jdk.dynalink \
jdk.scripting.nashorn \
jdk.scripting.nashorn.shell
incubator_modules=\
jdk.incubator.httpclient

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -59,8 +59,9 @@ package java.io;
* far left-hand column.
*
* <blockquote>
* <table border="1" cellspacing="0" cellpadding="8"
* summary="Bit values and bytes">
* <table class="plain">
* <caption style="display:none">Bit values and bytes</caption>
* <tbody>
* <tr>
* <th colspan="9"><span style="font-weight:normal">
* All characters in the range {@code '\u005Cu0001'} to
@ -71,7 +72,7 @@ package java.io;
* <th colspan="8" id="bit_a">Bit Values</th>
* </tr>
* <tr>
* <th id="byte1_a">Byte 1</th>
* <th id="byte1_a" style="text-align:left">Byte 1</th>
* <td style="text-align:center">0
* <td colspan="7" style="text-align:center">bits 6-0
* </tr>
@ -86,14 +87,14 @@ package java.io;
* <th colspan="8" id="bit_b">Bit Values</th>
* </tr>
* <tr>
* <th id="byte1_b">Byte 1</th>
* <th id="byte1_b" style="text-align:left">Byte 1</th>
* <td style="text-align:center">1
* <td style="text-align:center">1
* <td style="text-align:center">0
* <td colspan="5" style="text-align:center">bits 10-6
* </tr>
* <tr>
* <th id="byte2_a">Byte 2</th>
* <th id="byte2_a" style="text-align:left">Byte 2</th>
* <td style="text-align:center">1
* <td style="text-align:center">0
* <td colspan="6" style="text-align:center">bits 5-0
@ -108,7 +109,7 @@ package java.io;
* <th colspan="8"id="bit_c">Bit Values</th>
* </tr>
* <tr>
* <th id="byte1_c">Byte 1</th>
* <th id="byte1_c" style="text-align:left">Byte 1</th>
* <td style="text-align:center">1
* <td style="text-align:center">1
* <td style="text-align:center">1
@ -116,17 +117,18 @@ package java.io;
* <td colspan="4" style="text-align:center">bits 15-12
* </tr>
* <tr>
* <th id="byte2_b">Byte 2</th>
* <th id="byte2_b" style="text-align:left">Byte 2</th>
* <td style="text-align:center">1
* <td style="text-align:center">0
* <td colspan="6" style="text-align:center">bits 11-6
* </tr>
* <tr>
* <th id="byte3">Byte 3</th>
* <th id="byte3" style="text-align:left">Byte 3</th>
* <td style="text-align:center">1
* <td style="text-align:center">0
* <td colspan="6" style="text-align:center">bits 5-0
* </tr>
* </tbody>
* </table>
* </blockquote>
* <p>

View File

@ -216,7 +216,8 @@ import sun.reflect.misc.ReflectUtil;
* @see java.io.DataInput
* @see java.io.ObjectOutputStream
* @see java.io.Serializable
* @see <a href="../../../platform/serialization/spec/input.html"> Object Serialization Specification, Section 3, Object Input Classes</a>
* @see <a href="{@docRoot}/../specs/serialization/input.html">
* Object Serialization Specification, Section 3, Object Input Classes</a>
* @since 1.1
*/
public class ObjectInputStream

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2014, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -156,7 +156,8 @@ import sun.reflect.misc.ReflectUtil;
* @see java.io.ObjectInputStream
* @see java.io.Serializable
* @see java.io.Externalizable
* @see <a href="../../../platform/serialization/spec/output.html">Object Serialization Specification, Section 2, Object Output Classes</a>
* @see <a href="{@docRoot}/../specs/serialization/output.html">
* Object Serialization Specification, Section 2, Object Output Classes</a>
* @since 1.1
*/
public class ObjectOutputStream

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -62,13 +62,14 @@ import static java.io.ObjectStreamField.*;
* loaded in this Java VM can be found/created using the lookup method.
*
* <p>The algorithm to compute the SerialVersionUID is described in
* <a href="../../../platform/serialization/spec/class.html#4100">Object
* Serialization Specification, Section 4.6, Stream Unique Identifiers</a>.
* <a href="{@docRoot}/../specs/serialization/class.html#stream-unique-identifiers">
* Object Serialization Specification, Section 4.6, Stream Unique Identifiers</a>.
*
* @author Mike Warres
* @author Roger Riggs
* @see ObjectStreamField
* @see <a href="../../../platform/serialization/spec/class.html">Object Serialization Specification, Section 4, Class Descriptors</a>
* @see <a href="{@docRoot}/../specs/serialization/class.html">
* Object Serialization Specification, Section 4, Class Descriptors</a>
* @since 1.1
*/
public class ObjectStreamClass implements Serializable {

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1994, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1994, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -136,8 +136,12 @@ public class RandomAccessFile implements DataOutput, DataInput, Closeable {
* in which the file is to be opened. The permitted values and their
* meanings are:
*
* <table summary="Access mode permitted values and meanings">
* <table class="striped">
* <caption style="display:none">Access mode permitted values and meanings</caption>
* <thead>
* <tr><th style="text-align:left">Value</th><th style="text-align:left">Meaning</th></tr>
* </thead>
* <tbody>
* <tr><td style="vertical-align:top">{@code "r"}</td>
* <td> Open for reading only. Invoking any of the {@code write}
* methods of the resulting object will cause an
@ -153,6 +157,7 @@ public class RandomAccessFile implements DataOutput, DataInput, Closeable {
* <td> Open for reading and writing, as with {@code "rw"}, and also
* require that every update to the file's content be written
* synchronously to the underlying storage device.</td></tr>
* </tbody>
* </table>
*
* The {@code "rws"} and {@code "rwd"} modes work much like the {@link

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -44,12 +44,16 @@ import java.util.StringTokenizer;
* and for each provides a description of what the permission allows
* and a discussion of the risks of granting code the permission.
*
* <table border=1 cellpadding=5 summary="Permission target name, what the permission allows, and associated risks">
* <table class="striped">
* <caption style="display:none">Permission target name, what the permission allows, and associated risks</caption>
* <thead>
* <tr>
* <th>Permission Target Name</th>
* <th>What the Permission Allows</th>
* <th>Risks of Allowing this Permission</th>
* </tr>
* </thead>
* <tbody>
*
* <tr>
* <td>enableSubclassImplementation</td>
@ -79,7 +83,7 @@ import java.util.StringTokenizer;
* <td>Code could remove a configured filter and remove protections
* already established.</td>
* </tr>
*
* </tbody>
* </table>
*
* @see java.security.BasicPermission

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -33,7 +33,8 @@
*
* <h2>Package Specification</h2>
* <ul>
* <li><a href="../../../platform/serialization/spec/serialTOC.html"> Java Object Serialization Specification </a>
* <li><a href="{@docRoot}/../specs/serialization/index.html">
* Java Object Serialization Specification </a>
* </ul>
*
* <h2>Related Documentation</h2>
@ -41,7 +42,8 @@
* For overviews, tutorials, examples, guides, and tool documentation,
* please see:
* <ul>
* <li><a href="../../../technotes/guides/serialization">Serialization Enhancements</a>
* <li>{@extLink serialver_tool_reference The serialver tool}</li>
* <li>{@extLink serialization_guide Serialization Documentation}</li>
* </ul>
*
* @since 1.0

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -123,7 +123,7 @@ public interface CharSequence {
*
* <p>The stream binds to this sequence when the terminal stream operation
* commences (specifically, for mutable sequences the spliterator for the
* stream is <a href="../Spliterator.html#binding"><em>late-binding</em></a>).
* stream is <a href="../util/Spliterator.html#binding"><em>late-binding</em></a>).
* If the sequence is modified during that operation then the result is
* undefined.
*
@ -173,7 +173,7 @@ public interface CharSequence {
*
* <p>The stream binds to this sequence when the terminal stream operation
* commences (specifically, for mutable sequences the spliterator for the
* stream is <a href="../Spliterator.html#binding"><em>late-binding</em></a>).
* stream is <a href="../util/Spliterator.html#binding"><em>late-binding</em></a>).
* If the sequence is modified during that operation then the result is
* undefined.
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2002, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -9566,7 +9566,9 @@ class Character implements java.io.Serializable, Comparable<Character> {
* Determines if the specified character is ISO-LATIN-1 white space.
* This method returns {@code true} for the following five
* characters only:
* <table summary="truechars">
* <table class="borderless">
* <caption style="display:none">truechars</caption>
* <tbody>
* <tr><td>{@code '\t'}</td> <td>{@code U+0009}</td>
* <td>{@code HORIZONTAL TABULATION}</td></tr>
* <tr><td>{@code '\n'}</td> <td>{@code U+000A}</td>
@ -9577,6 +9579,7 @@ class Character implements java.io.Serializable, Comparable<Character> {
* <td>{@code CARRIAGE RETURN}</td></tr>
* <tr><td>{@code ' '}</td> <td>{@code U+0020}</td>
* <td>{@code SPACE}</td></tr>
* </tbody>
* </table>
*
* @param ch the character to be tested.

View File

@ -724,18 +724,23 @@ public final class Class<T> implements java.io.Serializable,
* one or more '{@code [}' characters representing the depth of the array
* nesting. The encoding of element type names is as follows:
*
* <blockquote><table summary="Element types and encodings">
* <tr><th> Element Type <th> &nbsp;&nbsp;&nbsp; <th> Encoding
* <tr><td> boolean <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> Z
* <tr><td> byte <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> B
* <tr><td> char <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> C
* <blockquote><table class="borderless">
* <caption style="display:none">Element types and encodings</caption>
* <thead>
* <tr><th style="padding-right:3em;"> Element Type <th> Encoding
* </thead>
* <tbody>
* <tr><td> boolean <td style="text-align:center"> Z
* <tr><td> byte <td style="text-align:center"> B
* <tr><td> char <td style="text-align:center"> C
* <tr><td> class or interface
* <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> L<i>classname</i>;
* <tr><td> double <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> D
* <tr><td> float <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> F
* <tr><td> int <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> I
* <tr><td> long <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> J
* <tr><td> short <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> S
* <td style="text-align:center"> L<i>classname</i>;
* <tr><td> double <td style="text-align:center"> D
* <tr><td> float <td style="text-align:center"> F
* <tr><td> int <td style="text-align:center"> I
* <tr><td> long <td style="text-align:center"> J
* <tr><td> short <td style="text-align:center"> S
* </tbody>
* </table></blockquote>
*
* <p> The class or interface name <i>classname</i> is the binary name of

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1994, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1994, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -255,9 +255,12 @@ public final class Double extends Number implements Comparable<Double> {
*
* </ul>
*
* <table border>
* <table class="plain">
* <caption>Examples</caption>
* <thead>
* <tr><th>Floating-point Value</th><th>Hexadecimal String</th>
* </thead>
* <tbody>
* <tr><td>{@code 1.0}</td> <td>{@code 0x1.0p0}</td>
* <tr><td>{@code -1.0}</td> <td>{@code -0x1.0p0}</td>
* <tr><td>{@code 2.0}</td> <td>{@code 0x1.0p1}</td>
@ -272,6 +275,7 @@ public final class Double extends Number implements Comparable<Double> {
* <td>{@code 0x0.fffffffffffffp-1022}</td>
* <tr><td>{@code Double.MIN_VALUE}</td>
* <td>{@code 0x0.0000000000001p-1022}</td>
* </tbody>
* </table>
* @param d the {@code double} to be converted.
* @return a hex string representation of the argument.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1994, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1994, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -256,9 +256,12 @@ public final class Float extends Number implements Comparable<Float> {
*
* </ul>
*
* <table border>
* <table class="plain">
* <caption>Examples</caption>
* <thead>
* <tr><th>Floating-point Value</th><th>Hexadecimal String</th>
* </thead>
* <tbody>
* <tr><td>{@code 1.0}</td> <td>{@code 0x1.0p0}</td>
* <tr><td>{@code -1.0}</td> <td>{@code -0x1.0p0}</td>
* <tr><td>{@code 2.0}</td> <td>{@code 0x1.0p1}</td>
@ -273,6 +276,7 @@ public final class Float extends Number implements Comparable<Float> {
* <td>{@code 0x0.fffffep-126}</td>
* <tr><td>{@code Float.MIN_VALUE}</td>
* <td>{@code 0x0.000002p-126}</td>
* </tbody>
* </table>
* @param f the {@code float} to be converted.
* @return a hex string representation of the argument.

View File

@ -31,16 +31,13 @@ import java.util.Spliterators;
import java.util.function.Consumer;
/**
* Implementing this interface allows an object to be the target of
* the "for-each loop" statement. See
* <strong>
* <a href="{@docRoot}/../technotes/guides/language/foreach.html">For-each Loop</a>
* </strong>
* Implementing this interface allows an object to be the target of the enhanced
* {@code for} statement (sometimes called the "for-each loop" statement).
*
* @param <T> the type of elements returned by the iterator
*
* @since 1.5
* @jls 14.14.2 The enhanced for statement
* @jls 14.14.2 The enhanced {@code for} statement
*/
public interface Iterable<T> {
/**

View File

@ -84,7 +84,7 @@ import sun.security.util.SecurityConstants;
* started. The boot layer contains module {@code java.base} and is the only
* layer in the Java virtual machine with a module named "{@code java.base}".
* The modules in the boot layer are mapped to the bootstrap class loader and
* other class loaders that are <a href="../ClassLoader.html#builtinLoaders">
* other class loaders that are <a href="ClassLoader.html#builtinLoaders">
* built-in</a> into the Java virtual machine. The boot layer will often be
* the {@link #parents() parent} when creating additional layers. </p>
*

View File

@ -43,13 +43,17 @@ import java.lang.module.ModuleFinder;
* target names, and for each provides a description of what the permission
* allows and a discussion of the risks of granting code the permission.
*
* <table border=1 cellpadding=5 summary="permission target name,
* what the target allows,and associated risks">
* <table class="striped">
* <caption style="display:none">permission target name,
* what the target allows, and associated risks</caption>
* <thead>
* <tr>
* <th>Permission Target Name</th>
* <th>What the Permission Allows</th>
* <th>Risks of Allowing this Permission</th>
* </tr>
* </thead>
* <tbody>
*
* <tr>
* <td>createClassLoader</td>
@ -383,6 +387,7 @@ import java.lang.module.ModuleFinder;
* {@linkplain ModuleFinder#ofSystem system modules} in the runtime image.</td>
* </tr>
*
* </tbody>
* </table>
*
* @implNote

View File

@ -203,7 +203,7 @@ public final class String
* Class String is special cased within the Serialization Stream Protocol.
*
* A String instance is written into an ObjectOutputStream according to
* <a href="{@docRoot}/../platform/serialization/spec/output.html">
* <a href="{@docRoot}/../specs/serialization/protocol.html#stream-elements">
* Object Serialization Specification, Section 6.2, "Stream Elements"</a>
*/
private static final ObjectStreamField[] serialPersistentFields =
@ -335,7 +335,7 @@ public final class String
* subarray.
*
* <p> Each {@code byte} in the subarray is converted to a {@code char} as
* specified in the method above.
* specified in the {@link #String(byte[],int) String(byte[],int)} constructor.
*
* @deprecated This method does not properly convert bytes into characters.
* As of JDK&nbsp;1.1, the preferred way to do this is via the
@ -390,7 +390,7 @@ public final class String
/**
* Allocates a new {@code String} containing characters constructed from
* an array of 8-bit integer values. Each character <i>c</i>in the
* an array of 8-bit integer values. Each character <i>c</i> in the
* resulting string is constructed from the corresponding component
* <i>b</i> in the byte array such that:
*
@ -2203,12 +2203,16 @@ public final class String
* <p> The string {@code "boo:and:foo"}, for example, yields the
* following results with these parameters:
*
* <blockquote><table cellpadding=1 cellspacing=0 summary="Split example showing regex, limit, and result">
* <blockquote><table class="plain">
* <caption style="display:none">Split example showing regex, limit, and result</caption>
* <thead>
* <tr>
* <th>Regex</th>
* <th>Limit</th>
* <th>Result</th>
* </tr>
* </thead>
* <tbody>
* <tr><td style="text-align:center">:</td>
* <td style="text-align:center">2</td>
* <td>{@code { "boo", "and:foo" }}</td></tr>
@ -2227,6 +2231,7 @@ public final class String
* <tr><td style="text-align:center">o</td>
* <td style="text-align:center">0</td>
* <td>{@code { "b", "", ":and:f" }}</td></tr>
* </tbody>
* </table></blockquote>
*
* <p> An invocation of this method of the form
@ -2326,15 +2331,20 @@ public final class String
* <p> The string {@code "boo:and:foo"}, for example, yields the following
* results with these expressions:
*
* <blockquote><table cellpadding=1 cellspacing=0 summary="Split examples showing regex and result">
* <blockquote><table class="plain">
* <caption style="display:none">Split examples showing regex and result</caption>
* <thead>
* <tr>
* <th>Regex</th>
* <th>Result</th>
* </tr>
* </thead>
* <tbody>
* <tr><td style="text-align:center">:</td>
* <td>{@code { "boo", "and", "foo" }}</td></tr>
* <tr><td style="text-align:center">o</td>
* <td>{@code { "b", "", ":and:f" }}</td></tr>
* </tbody>
* </table></blockquote>
*
*
@ -2445,13 +2455,17 @@ public final class String
* {@code String} may be a different length than the original {@code String}.
* <p>
* Examples of lowercase mappings are in the following table:
* <table border="1" summary="Lowercase mapping examples showing language code of locale, upper case, lower case, and description">
* <table class="plain">
* <caption style="display:none">Lowercase mapping examples showing language code of locale, upper case, lower case, and description</caption>
* <thead>
* <tr>
* <th>Language Code of Locale</th>
* <th>Upper Case</th>
* <th>Lower Case</th>
* <th>Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td>tr (Turkish)</td>
* <td>&#92;u0130</td>
@ -2480,6 +2494,7 @@ public final class String
* <img src="doc-files/sigma1.gif" alt="sigma"></td>
* <td>lowercased all chars in String</td>
* </tr>
* </tbody>
* </table>
*
* @param locale use the case transformation rules for this locale
@ -2526,13 +2541,17 @@ public final class String
* <p>
* Examples of locale-sensitive and 1:M case mappings are in the following table.
*
* <table border="1" summary="Examples of locale-sensitive and 1:M case mappings. Shows Language code of locale, lower case, upper case, and description.">
* <table class="plain">
* <caption style="display:none">Examples of locale-sensitive and 1:M case mappings. Shows Language code of locale, lower case, upper case, and description.</caption>
* <thead>
* <tr>
* <th>Language Code of Locale</th>
* <th>Lower Case</th>
* <th>Upper Case</th>
* <th>Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td>tr (Turkish)</td>
* <td>&#92;u0069</td>
@ -2557,6 +2576,7 @@ public final class String
* <td>FAHRVERGN&Uuml;GEN</td>
* <td></td>
* </tr>
* </tbody>
* </table>
* @param locale use the case transformation rules for this locale
* @return the {@code String}, converted to uppercase.

View File

@ -575,9 +575,13 @@ public final class System {
* system properties, a set of system properties is first created and
* initialized. This set of system properties always includes values
* for the following keys:
* <table summary="Shows property keys and associated values">
* <table class="striped">
* <caption style="display:none">Shows property keys and associated values</caption>
* <thead>
* <tr><th>Key</th>
* <th>Description of Associated Value</th></tr>
* </thead>
* <tbody>
* <tr><td><code>java.version</code></td>
* <td>Java Runtime Environment version which may be interpreted
* as a {@link Runtime.Version}</td></tr>
@ -636,6 +640,7 @@ public final class System {
* <td>User's home directory</td></tr>
* <tr><td><code>user.dir</code></td>
* <td>User's current working directory</td></tr>
* </tbody>
* </table>
* <p>
* Multiple paths in a system property value are separated by the path
@ -647,9 +652,13 @@ public final class System {
*
* @implNote In addition to the standard system properties, the system
* properties may include the following keys:
* <table summary="Shows property keys and associated values">
* <table class="striped">
* <caption style="display:none">Shows property keys and associated values</caption>
* <thead>
* <tr><th>Key</th>
* <th>Description of Associated Value</th></tr>
* </thead>
* <tbody>
* <tr><td>{@code jdk.module.path}</td>
* <td>The application module path</td></tr>
* <tr><td>{@code jdk.module.upgrade.path}</td>
@ -658,6 +667,7 @@ public final class System {
* <td>The module name of the initial/main module</td></tr>
* <tr><td>{@code jdk.module.main.class}</td>
* <td>The main class name of the initial module</td></tr>
* </tbody>
* </table>
*
* @return the system properties

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -149,8 +149,12 @@ import java.util.Arrays;
* capture argument (corresponding to the receiver) must be non-null.
*
* <p>A type Q is considered adaptable to S as follows:
* <table summary="adaptable types">
* <table class="borderless">
* <caption style="display:none">adaptable types</caption>
* <thead>
* <tr><th>Q</th><th>S</th><th>Link-time checks</th><th>Invocation-time checks</th></tr>
* </thead>
* <tbody>
* <tr>
* <td>Primitive</td><td>Primitive</td>
* <td>Q can be converted to S via a primitive widening conversion</td>
@ -176,6 +180,7 @@ import java.util.Arrays;
* <br>for return types: none</td>
* <td>Cast from Q to S</td>
* </tr>
* </tbody>
* </table>
*
* @apiNote These linkage methods are designed to support the evaluation
@ -213,7 +218,9 @@ import java.util.Arrays;
* methods.
* @since 1.8
*/
public class LambdaMetafactory {
public final class LambdaMetafactory {
private LambdaMetafactory() {}
/** Flag for alternate metafactories indicating the lambda object
* must be serializable */

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -81,8 +81,12 @@ import static java.lang.invoke.MethodHandleStatics.*;
* The <a href="MethodHandles.Lookup.html#lookups">Lookup Factory Methods</a>
* correspond to all major use cases for methods, constructors, and fields.
* These use cases may be distinguished using small integers as follows:
* <table border=1 cellpadding=5 summary="reference kinds">
* <table class="striped">
* <caption style="display:none">reference kinds</caption>
* <thead>
* <tr><th>reference kind</th><th>descriptive name</th><th>scope</th><th>member</th><th>behavior</th></tr>
* </thead>
* <tbody>
* <tr>
* <td>{@code 1}</td><td>{@code REF_getField}</td><td>{@code class}</td>
* <td>{@code FT f;}</td><td>{@code (T) this.f;}</td>
@ -119,6 +123,7 @@ import static java.lang.invoke.MethodHandleStatics.*;
* <td>{@code 9}</td><td>{@code REF_invokeInterface}</td><td>{@code interface}</td>
* <td>{@code T m(A*);}</td><td>{@code (T) this.m(arg*);}</td>
* </tr>
* </tbody>
* </table>
* @since 1.8
*/

View File

@ -278,12 +278,16 @@ public class MethodHandles {
* (Bytecode behaviors are described in section 5.4.3.5 of the Java Virtual Machine Specification.)
* Here is a summary of the correspondence between these factory methods and
* the behavior of the resulting method handles:
* <table border=1 cellpadding=5 summary="lookup method behaviors">
* <table class="striped">
* <caption style="display:none">lookup method behaviors</caption>
* <thead>
* <tr>
* <th><a id="equiv"></a>lookup expression</th>
* <th>member</th>
* <th>bytecode behavior</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td>{@link java.lang.invoke.MethodHandles.Lookup#findGetter lookup.findGetter(C.class,"f",FT.class)}</td>
* <td>{@code FT f;}</td><td>{@code (T) this.f;}</td>
@ -340,6 +344,7 @@ public class MethodHandles {
* <td>{@link java.lang.invoke.MethodHandles.Lookup#findClass lookup.findClass("C")}</td>
* <td>{@code class C { ... }}</td><td>{@code C.class;}</td>
* </tr>
* </tbody>
* </table>
*
* Here, the type {@code C} is the class or interface being searched for a member,
@ -1655,7 +1660,7 @@ assertEquals(""+l, (String) MH_this.invokeExact(subl)); // Listie method
* (If the trailing array argument is the only argument,
* the given receiver value will be bound to it.)
* <p>
* This is equivalent to the following code:
* This is almost equivalent to the following code, with some differences noted below:
* <blockquote><pre>{@code
import static java.lang.invoke.MethodHandles.*;
import static java.lang.invoke.MethodType.*;
@ -1668,7 +1673,10 @@ return mh1;
* where {@code defc} is either {@code receiver.getClass()} or a super
* type of that class, in which the requested method is accessible
* to the lookup class.
* (Note that {@code bindTo} does not preserve variable arity.)
* (Unlike {@code bind}, {@code bindTo} does not preserve variable arity.
* Also, {@code bindTo} may throw a {@code ClassCastException} in instances where {@code bind} would
* throw an {@code IllegalAccessException}, as in the case where the member is {@code protected} and
* the receiver is restricted by {@code findVirtual} to the lookup class.)
* @param receiver the object from which the method is accessed
* @param name the name of the method
* @param type the type of the method, with the receiver argument omitted

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -105,10 +105,13 @@ import sun.reflect.annotation.AnnotationType;
* <p>The table below summarizes which kind of annotation presence
* different methods in this interface examine.
*
* <table border>
* <table class="plain">
* <caption>Overview of kind of presence detected by different AnnotatedElement methods</caption>
* <thead>
* <tr><th colspan=2></th><th colspan=4>Kind of Presence</th>
* <tr><th colspan=2>Method</th><th>Directly Present</th><th>Indirectly Present</th><th>Present</th><th>Associated</th>
* </thead>
* <tbody>
* <tr><td style="text-align:right">{@code T}</td><td>{@link #getAnnotation(Class) getAnnotation(Class&lt;T&gt;)}
* <td></td><td></td><td>X</td><td></td>
* </tr>
@ -127,6 +130,7 @@ import sun.reflect.annotation.AnnotationType;
* <tr><td style="text-align:right">{@code T[]}</td><td>{@link #getDeclaredAnnotationsByType(Class) getDeclaredAnnotationsByType(Class&lt;T&gt;)}
* <td>X</td><td>X</td><td></td><td></td>
* </tr>
* </tbody>
* </table>
*
* <p>For an invocation of {@code get[Declared]AnnotationsByType( Class <

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -32,12 +32,16 @@ package java.lang.reflect;
* provides a summary description of what the permission allows,
* and discusses the risks of granting code the permission.
*
* <table border=1 cellpadding=5 summary="Table shows permission target name, what the permission allows, and associated risks">
* <table class="striped">
* <caption style="display:none">Table shows permission target name, what the permission allows, and associated risks</caption>
* <thead>
* <tr>
* <th>Permission Target Name</th>
* <th>What the Permission Allows</th>
* <th>Risks of Allowing this Permission</th>
* </tr>
* </thead>
* <tbody>
*
* <tr>
* <td>suppressAccessChecks</td>
@ -58,6 +62,7 @@ package java.lang.reflect;
* help in its attempt to compromise security in the system.</td>
* </tr>
*
* </tbody>
* </table>
*
* @see java.security.Permission

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -120,15 +120,19 @@ import java.util.Arrays;
* preferred scale for representing a result. The preferred
* scale for each operation is listed in the table below.
*
* <table border>
* <table class="plain">
* <caption><b>Preferred Scales for Results of Arithmetic Operations
* </b></caption>
* <thead>
* <tr><th>Operation</th><th>Preferred Scale of Result</th></tr>
* </thead>
* <tbody>
* <tr><td>Add</td><td>max(addend.scale(), augend.scale())</td>
* <tr><td>Subtract</td><td>max(minuend.scale(), subtrahend.scale())</td>
* <tr><td>Multiply</td><td>multiplier.scale() + multiplicand.scale()</td>
* <tr><td>Divide</td><td>dividend.scale() - divisor.scale()</td>
* <tr><td>Square root</td><td>radicand.scale()/2</td>
* </tbody>
* </table>
*
* These scales are the ones used by the methods which return exact

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -51,8 +51,9 @@ package java.math;
* proper {@code MathContext}. A summary table showing the results
* of these rounding operations for all rounding modes appears below.
*
*<table border>
*<table class="plain">
* <caption><b>Summary of Rounding Operations Under Different Rounding Modes</b></caption>
* <thead>
* <tr><th></th><th colspan=8>Result of rounding input to one digit with the given
* rounding mode</th>
* <tr style="vertical-align:top">
@ -64,6 +65,8 @@ package java.math;
* <th>{@code HALF_DOWN}</th>
* <th>{@code HALF_EVEN}</th>
* <th>{@code UNNECESSARY}</th>
* </thead>
* <tbody>
*
* <tr style="text-align:right"><td>5.5</td> <td>6</td> <td>5</td> <td>6</td> <td>5</td> <td>6</td> <td>5</td> <td>6</td> <td>throw {@code ArithmeticException}</td>
* <tr style="text-align:right"><td>2.5</td> <td>3</td> <td>2</td> <td>3</td> <td>2</td> <td>3</td> <td>2</td> <td>2</td> <td>throw {@code ArithmeticException}</td>
@ -75,7 +78,8 @@ package java.math;
* <tr style="text-align:right"><td>-1.6</td> <td>-2</td> <td>-1</td> <td>-1</td> <td>-2</td> <td>-2</td> <td>-2</td> <td>-2</td> <td>throw {@code ArithmeticException}</td>
* <tr style="text-align:right"><td>-2.5</td> <td>-3</td> <td>-2</td> <td>-2</td> <td>-3</td> <td>-3</td> <td>-2</td> <td>-2</td> <td>throw {@code ArithmeticException}</td>
* <tr style="text-align:right"><td>-5.5</td> <td>-6</td> <td>-5</td> <td>-5</td> <td>-6</td> <td>-6</td> <td>-5</td> <td>-6</td> <td>throw {@code ArithmeticException}</td>
*</table>
* </tbody>
* </table>
*
*
* <p>This {@code enum} is intended to replace the integer-based
@ -100,10 +104,13 @@ public enum RoundingMode {
* value.
*
*<p>Example:
*<table border>
*<table class="plain">
* <caption><b>Rounding mode UP Examples</b></caption>
*<thead>
*<tr style="vertical-align:top"><th>Input Number</th>
* <th>Input rounded to one digit<br> with {@code UP} rounding
*</thead>
*<tbody>
*<tr style="text-align:right"><td>5.5</td> <td>6</td>
*<tr style="text-align:right"><td>2.5</td> <td>3</td>
*<tr style="text-align:right"><td>1.6</td> <td>2</td>
@ -114,6 +121,7 @@ public enum RoundingMode {
*<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
*<tr style="text-align:right"><td>-2.5</td> <td>-3</td>
*<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
*</tbody>
*</table>
*/
UP(BigDecimal.ROUND_UP),
@ -124,10 +132,13 @@ public enum RoundingMode {
* rounding mode never increases the magnitude of the calculated value.
*
*<p>Example:
*<table border>
*<table class="plain">
* <caption><b>Rounding mode DOWN Examples</b></caption>
*<thead>
*<tr style="vertical-align:top"><th>Input Number</th>
* <th>Input rounded to one digit<br> with {@code DOWN} rounding
*</thead>
*<tbody>
*<tr style="text-align:right"><td>5.5</td> <td>5</td>
*<tr style="text-align:right"><td>2.5</td> <td>2</td>
*<tr style="text-align:right"><td>1.6</td> <td>1</td>
@ -138,6 +149,7 @@ public enum RoundingMode {
*<tr style="text-align:right"><td>-1.6</td> <td>-1</td>
*<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
*<tr style="text-align:right"><td>-5.5</td> <td>-5</td>
*</tbody>
*</table>
*/
DOWN(BigDecimal.ROUND_DOWN),
@ -149,10 +161,13 @@ public enum RoundingMode {
* that this rounding mode never decreases the calculated value.
*
*<p>Example:
*<table border>
*<table class="plain">
* <caption><b>Rounding mode CEILING Examples</b></caption>
*<thead>
*<tr style="vertical-align:top"><th>Input Number</th>
* <th>Input rounded to one digit<br> with {@code CEILING} rounding
*</thead>
*<tbody>
*<tr style="text-align:right"><td>5.5</td> <td>6</td>
*<tr style="text-align:right"><td>2.5</td> <td>3</td>
*<tr style="text-align:right"><td>1.6</td> <td>2</td>
@ -163,6 +178,7 @@ public enum RoundingMode {
*<tr style="text-align:right"><td>-1.6</td> <td>-1</td>
*<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
*<tr style="text-align:right"><td>-5.5</td> <td>-5</td>
*</tbody>
*</table>
*/
CEILING(BigDecimal.ROUND_CEILING),
@ -174,10 +190,13 @@ public enum RoundingMode {
* this rounding mode never increases the calculated value.
*
*<p>Example:
*<table border>
*<table class="plain">
* <caption><b>Rounding mode FLOOR Examples</b></caption>
*<thead>
*<tr style="vertical-align:top"><th>Input Number</th>
* <th>Input rounded to one digit<br> with {@code FLOOR} rounding
*</thead>
*<tbody>
*<tr style="text-align:right"><td>5.5</td> <td>5</td>
*<tr style="text-align:right"><td>2.5</td> <td>2</td>
*<tr style="text-align:right"><td>1.6</td> <td>1</td>
@ -188,6 +207,7 @@ public enum RoundingMode {
*<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
*<tr style="text-align:right"><td>-2.5</td> <td>-3</td>
*<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
*</tbody>
*</table>
*/
FLOOR(BigDecimal.ROUND_FLOOR),
@ -201,10 +221,13 @@ public enum RoundingMode {
* mode commonly taught at school.
*
*<p>Example:
*<table border>
*<table class="plain">
* <caption><b>Rounding mode HALF_UP Examples</b></caption>
*<thead>
*<tr style="vertical-align:top"><th>Input Number</th>
* <th>Input rounded to one digit<br> with {@code HALF_UP} rounding
*</thead>
*<tbody>
*<tr style="text-align:right"><td>5.5</td> <td>6</td>
*<tr style="text-align:right"><td>2.5</td> <td>3</td>
*<tr style="text-align:right"><td>1.6</td> <td>2</td>
@ -215,6 +238,7 @@ public enum RoundingMode {
*<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
*<tr style="text-align:right"><td>-2.5</td> <td>-3</td>
*<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
*</tbody>
*</table>
*/
HALF_UP(BigDecimal.ROUND_HALF_UP),
@ -227,10 +251,13 @@ public enum RoundingMode {
* {@code RoundingMode.DOWN}.
*
*<p>Example:
*<table border>
*<table class="plain">
* <caption><b>Rounding mode HALF_DOWN Examples</b></caption>
*<thead>
*<tr style="vertical-align:top"><th>Input Number</th>
* <th>Input rounded to one digit<br> with {@code HALF_DOWN} rounding
*</thead>
*<tbody>
*<tr style="text-align:right"><td>5.5</td> <td>5</td>
*<tr style="text-align:right"><td>2.5</td> <td>2</td>
*<tr style="text-align:right"><td>1.6</td> <td>2</td>
@ -241,6 +268,7 @@ public enum RoundingMode {
*<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
*<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
*<tr style="text-align:right"><td>-5.5</td> <td>-5</td>
*</tbody>
*</table>
*/
HALF_DOWN(BigDecimal.ROUND_HALF_DOWN),
@ -260,10 +288,13 @@ public enum RoundingMode {
* arithmetic in Java.
*
*<p>Example:
*<table border>
*<table class="plain">
* <caption><b>Rounding mode HALF_EVEN Examples</b></caption>
*<thead>
*<tr style="vertical-align:top"><th>Input Number</th>
* <th>Input rounded to one digit<br> with {@code HALF_EVEN} rounding
*</thead>
*<tbody>
*<tr style="text-align:right"><td>5.5</td> <td>6</td>
*<tr style="text-align:right"><td>2.5</td> <td>2</td>
*<tr style="text-align:right"><td>1.6</td> <td>2</td>
@ -274,6 +305,7 @@ public enum RoundingMode {
*<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
*<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
*<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
*</tbody>
*</table>
*/
HALF_EVEN(BigDecimal.ROUND_HALF_EVEN),
@ -284,10 +316,13 @@ public enum RoundingMode {
* specified on an operation that yields an inexact result, an
* {@code ArithmeticException} is thrown.
*<p>Example:
*<table border>
*<table class="plain">
* <caption><b>Rounding mode UNNECESSARY Examples</b></caption>
*<thead>
*<tr style="vertical-align:top"><th>Input Number</th>
* <th>Input rounded to one digit<br> with {@code UNNECESSARY} rounding
*</thead>
*<tbody>
*<tr style="text-align:right"><td>5.5</td> <td>throw {@code ArithmeticException}</td>
*<tr style="text-align:right"><td>2.5</td> <td>throw {@code ArithmeticException}</td>
*<tr style="text-align:right"><td>1.6</td> <td>throw {@code ArithmeticException}</td>
@ -298,6 +333,7 @@ public enum RoundingMode {
*<tr style="text-align:right"><td>-1.6</td> <td>throw {@code ArithmeticException}</td>
*<tr style="text-align:right"><td>-2.5</td> <td>throw {@code ArithmeticException}</td>
*<tr style="text-align:right"><td>-5.5</td> <td>throw {@code ArithmeticException}</td>
*</tbody>
*</table>
*/
UNNECESSARY(BigDecimal.ROUND_UNNECESSARY);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -41,12 +41,12 @@ import java.io.ObjectStreamException;
* Textual representation of IPv4 address used as input to methods
* takes one of the following forms:
*
* <blockquote><table cellpadding=0 cellspacing=0 summary="layout">
* <tr><td>{@code d.d.d.d}</td></tr>
* <tr><td>{@code d.d.d}</td></tr>
* <tr><td>{@code d.d}</td></tr>
* <tr><td>{@code d}</td></tr>
* </table></blockquote>
* <blockquote><ul style="list-style-type:none">
* <li>{@code d.d.d.d}</li>
* <li>{@code d.d.d}</li>
* <li>{@code d.d}</li>
* <li>{@code d}</li>
* </ul></blockquote>
*
* <p> When four parts are specified, each is interpreted as a byte of
* data and assigned, from left to right, to the four bytes of an IPv4

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -49,9 +49,9 @@ import java.util.Arrays;
* the hexadecimal values of the eight 16-bit pieces of the
* address. This is the full form. For example,
*
* <blockquote><table cellpadding=0 cellspacing=0 summary="layout">
* <tr><td>{@code 1080:0:0:0:8:800:200C:417A}<td></tr>
* </table></blockquote>
* <blockquote><ul style="list-style-type:none">
* <li>{@code 1080:0:0:0:8:800:200C:417A}</li>
* </ul></blockquote>
*
* <p> Note that it is not necessary to write the leading zeros in
* an individual field. However, there must be at least one numeral
@ -66,9 +66,9 @@ import java.util.Arrays;
* The "::" can also be used to compress the leading and/or trailing
* zeros in an address. For example,
*
* <blockquote><table cellpadding=0 cellspacing=0 summary="layout">
* <tr><td>{@code 1080::8:800:200C:417A}<td></tr>
* </table></blockquote>
* <blockquote><ul style="list-style-type:none">
* <li>{@code 1080::8:800:200C:417A}</li>
* </ul></blockquote>
*
* <li><p> An alternative form that is sometimes more convenient
* when dealing with a mixed environment of IPv4 and IPv6 nodes is
@ -77,35 +77,35 @@ import java.util.Arrays;
* are the decimal values of the four low-order 8-bit pieces of the
* standard IPv4 representation address, for example,
*
* <blockquote><table cellpadding=0 cellspacing=0 summary="layout">
* <tr><td>{@code ::FFFF:129.144.52.38}<td></tr>
* <tr><td>{@code ::129.144.52.38}<td></tr>
* </table></blockquote>
* <blockquote><ul style="list-style-type:none">
* <li>{@code ::FFFF:129.144.52.38}</li>
* <li>{@code ::129.144.52.38}</li>
* </ul></blockquote>
*
* <p> where "::FFFF:d.d.d.d" and "::d.d.d.d" are, respectively, the
* general forms of an IPv4-mapped IPv6 address and an
* IPv4-compatible IPv6 address. Note that the IPv4 portion must be
* in the "d.d.d.d" form. The following forms are invalid:
*
* <blockquote><table cellpadding=0 cellspacing=0 summary="layout">
* <tr><td>{@code ::FFFF:d.d.d}<td></tr>
* <tr><td>{@code ::FFFF:d.d}<td></tr>
* <tr><td>{@code ::d.d.d}<td></tr>
* <tr><td>{@code ::d.d}<td></tr>
* </table></blockquote>
* <blockquote><ul style="list-style-type:none">
* <li>{@code ::FFFF:d.d.d}</li>
* <li>{@code ::FFFF:d.d}</li>
* <li>{@code ::d.d.d}</li>
* <li>{@code ::d.d}</li>
* </ul></blockquote>
*
* <p> The following form:
*
* <blockquote><table cellpadding=0 cellspacing=0 summary="layout">
* <tr><td>{@code ::FFFF:d}<td></tr>
* </table></blockquote>
* <blockquote><ul style="list-style-type:none">
* <li>{@code ::FFFF:d}</li>
* </ul></blockquote>
*
* <p> is valid, however it is an unconventional representation of
* the IPv4-compatible IPv6 address,
*
* <blockquote><table cellpadding=0 cellspacing=0 summary="layout">
* <tr><td>{@code ::255.255.0.d}<td></tr>
* </table></blockquote>
* <blockquote><ul style="list-style-type:none">
* <li>{@code ::255.255.0.d}</li>
* </ul></blockquote>
*
* <p> while "::d" corresponds to the general IPv6 address
* "0:0:0:0:0:0:0:d".</li>
@ -119,9 +119,10 @@ import java.util.Arrays;
* <h4> Special IPv6 address </h4>
*
* <blockquote>
* <table cellspacing=2 summary="Description of IPv4-mapped address">
* <tr><th valign=top><i>IPv4-mapped address</i></th>
* <td>Of the form::ffff:w.x.y.z, this IPv6 address is used to
* <table class="borderless">
* <caption style="display:none">Description of IPv4-mapped address</caption>
* <tr><th style="vertical-align:top; padding-right:2px"><i>IPv4-mapped address</i></th>
* <td>Of the form ::ffff:w.x.y.z, this IPv6 address is used to
* represent an IPv4 address. It allows the native program to
* use the same address data structure and also the same
* socket when communicating with both IPv4 and IPv6 nodes.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -72,7 +72,9 @@ import sun.net.util.IPAddressUtil;
*
* <h3> Address types </h3>
*
* <blockquote><table cellspacing=2 summary="Description of unicast and multicast address types">
* <blockquote><table class="borderless">
* <caption style="display:none">Description of unicast and multicast address types</caption>
* <tbody>
* <tr><th valign=top><i>unicast</i></th>
* <td>An identifier for a single interface. A packet sent to
* a unicast address is delivered to the interface identified by
@ -96,6 +98,7 @@ import sun.net.util.IPAddressUtil;
* <td>An identifier for a set of interfaces (typically belonging
* to different nodes). A packet sent to a multicast address is
* delivered to all interfaces identified by that address.</td></tr>
* </tbody>
* </table></blockquote>
*
* <h4> IP address scope </h4>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -47,12 +47,16 @@ import java.util.StringTokenizer;
* and for each provides a description of what the permission allows
* and a discussion of the risks of granting code the permission.
*
* <table border=1 cellpadding=5 summary="Permission target name, what the permission allows, and associated risks">
* <table class="striped">
* <caption style="display:none">Permission target name, what the permission allows, and associated risks</caption>
* <thead>
* <tr>
* <th>Permission Target Name</th>
* <th>What the Permission Allows</th>
* <th>Risks of Allowing this Permission</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td>allowHttpTrace</td>
* <td>The ability to use the HTTP TRACE method in HttpURLConnection.</td>
@ -151,6 +155,7 @@ import java.util.StringTokenizer;
* creating a ProtectionDomain/CodeSource for a class even though
* that class really didn't come from that location.</td>
* </tr>
</tbody>
* </table>
*
* @see java.security.BasicPermission

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -83,11 +83,11 @@ import java.lang.NullPointerException; // for javadoc
* not begin with a slash character ({@code '/'}). Opaque URIs are not
* subject to further parsing. Some examples of opaque URIs are:
*
* <blockquote><table cellpadding=0 cellspacing=0 summary="layout">
* <tr><td>{@code mailto:java-net@java.sun.com}<td></tr>
* <tr><td>{@code news:comp.lang.java}<td></tr>
* <tr><td>{@code urn:isbn:096139210x}</td></tr>
* </table></blockquote>
* <blockquote><ul style="list-style-type:none">
* <li>{@code mailto:java-net@java.sun.com}</li>
* <li>{@code news:comp.lang.java}</li>
* <li>{@code urn:isbn:096139210x}</li>
* </ul></blockquote>
*
* <p> A <i>hierarchical</i> URI is either an absolute URI whose
* scheme-specific part begins with a slash character, or a relative URI, that
@ -132,8 +132,12 @@ import java.lang.NullPointerException; // for javadoc
*
* <p> All told, then, a URI instance has the following nine components:
*
* <blockquote><table summary="Describes the components of a URI:scheme,scheme-specific-part,authority,user-info,host,port,path,query,fragment">
* <blockquote><table class="borderless">
* <caption style="display:none">Describes the components of a URI:scheme,scheme-specific-part,authority,user-info,host,port,path,query,fragment</caption>
* <thead>
* <tr><th><i>Component</i></th><th><i>Type</i></th></tr>
* </thead>
* <tbody>
* <tr><td>scheme</td><td>{@code String}</td></tr>
* <tr><td>scheme-specific-part&nbsp;&nbsp;&nbsp;&nbsp;</td><td>{@code String}</td></tr>
* <tr><td>authority</td><td>{@code String}</td></tr>
@ -143,6 +147,7 @@ import java.lang.NullPointerException; // for javadoc
* <tr><td>path</td><td>{@code String}</td></tr>
* <tr><td>query</td><td>{@code String}</td></tr>
* <tr><td>fragment</td><td>{@code String}</td></tr>
* </tbody>
* </table></blockquote>
*
* In a given instance any particular component is either <i>undefined</i> or
@ -248,7 +253,9 @@ import java.lang.NullPointerException; // for javadoc
* which are taken from that specification, are used below to describe these
* constraints:
*
* <blockquote><table cellspacing=2 summary="Describes categories alpha,digit,alphanum,unreserved,punct,reserved,escaped,and other">
* <blockquote><table>
* <caption style="display:none">Describes categories alpha,digit,alphanum,unreserved,punct,reserved,escaped,and other</caption>
* <tbody>
* <tr><th valign=top><i>alpha</i></th>
* <td>The US-ASCII alphabetic characters,
* {@code 'A'}&nbsp;through&nbsp;{@code 'Z'}
@ -279,6 +286,7 @@ import java.lang.NullPointerException; // for javadoc
* java.lang.Character#isSpaceChar(char) Character.isSpaceChar}
* method)&nbsp;&nbsp;<i>(<b>Deviation from RFC 2396</b>, which is
* limited to US-ASCII)</i></td></tr>
* </tbody>
* </table></blockquote>
*
* <p><a id="legal-chars"></a> The set of all legal URI characters consists of

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -54,13 +54,18 @@ import sun.security.action.GetPropertyAction;
* read from and to write to the resource referenced by the URL. In
* general, creating a connection to a URL is a multistep process:
*
* <div style="text-align:center"><table style="margin:0 auto" border=2 summary="Describes the process of creating a connection to a URL: openConnection() and connect() over time.">
* <div style="text-align:center"><table class="plain" style="margin:0 auto">
* <caption style="display:none">Describes the process of creating a connection to a URL: openConnection() and connect() over time.</caption>
* <thead>
* <tr><th>{@code openConnection()}</th>
* <th>{@code connect()}</th></tr>
* </thead>
* <tbody>
* <tr><td>Manipulate parameters that affect the connection to the remote
* resource.</td>
* <td>Interact with the resource; query header fields and
* contents.</td></tr>
* </tbody>
* </table>
* ----------------------------&gt;
* <br>time</div>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2013, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -72,9 +72,12 @@ import java.security.Permission;
* separated by '/' characters. <i>path</i> may also be empty. The path is specified
* in a similar way to the path in {@link java.io.FilePermission}. There are
* three different ways as the following examples show:
* <table border>
* <table class="plain">
* <caption>URL Examples</caption>
* <thead>
* <tr><th>Example url</th><th>Description</th></tr>
* </thead>
* <tbody>
* <tr><td style="white-space:nowrap;">http://www.oracle.com/a/b/c.html</td>
* <td>A url which identifies a specific (single) resource</td>
* </tr>
@ -90,6 +93,7 @@ import java.security.Permission;
* example).
* </td>
* </tr>
* </tbody>
* </table>
* <p>
* The '*' and '-' may only be specified in the final segment of a path and must be
@ -246,9 +250,12 @@ public final class URLPermission extends Permission {
* <li>otherwise, return false</li>
* </ul>
* <p>Some examples of how paths are matched are shown below:
* <table border>
* <table class="plain">
* <caption>Examples of Path Matching</caption>
* <thead>
* <tr><th>this's path</th><th>p's path</th><th>match</th></tr>
* </thead>
* <tbody>
* <tr><td>/a/b</td><td>/a/b</td><td>yes</td></tr>
* <tr><td>/a/b/*</td><td>/a/b/c</td><td>yes</td></tr>
* <tr><td>/a/b/*</td><td>/a/b/c/d</td><td>no</td></tr>
@ -256,6 +263,7 @@ public final class URLPermission extends Permission {
* <tr><td>/a/b/-</td><td>/a/b/c/d/e</td><td>yes</td></tr>
* <tr><td>/a/b/-</td><td>/a/b/c/*</td><td>yes</td></tr>
* <tr><td>/a/b/*</td><td>/a/b/c/-</td><td>no</td></tr>
* </tbody>
* </table>
*/
public boolean implies(Permission p) {

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -60,11 +60,15 @@ import java.util.concurrent.TimeUnit;
* default group is not configured then the pooled threads of the default group
* are {@link Thread#isDaemon daemon} threads.
*
* <table border summary="System properties">
* <table class="striped">
* <caption style="display:none:">System properties</caption>
* <thead>
* <tr>
* <th>System property</th>
* <th>Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@code java.nio.channels.DefaultThreadPool.threadFactory} </td>
* <td> The value of this property is taken to be the fully-qualified name
@ -86,6 +90,7 @@ import java.util.concurrent.TimeUnit;
* unspecified error to be thrown during the construction of the default
* group. </td>
* </tr>
* </tbody>
* </table>
*
* <a id="threading"></a><h2>Threading</h2>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -133,8 +133,12 @@ public abstract class AsynchronousFileChannel
* <p> In addition to {@code READ} and {@code WRITE}, the following options
* may be present:
*
* <table border=1 cellpadding=5 summary="">
* <table class="striped">
* <caption style="display:none">additional options</caption>
* <thead>
* <tr> <th>Option</th> <th>Description</th> </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link StandardOpenOption#TRUNCATE_EXISTING TRUNCATE_EXISTING} </td>
* <td> When opening an existing file, the file is first truncated to a
@ -186,6 +190,7 @@ public abstract class AsynchronousFileChannel
* href="../file/package-summary.html#integrity"> Synchronized I/O file
* integrity</a>). </td>
* </tr>
* </tbody>
* </table>
*
* <p> An implementation may also support additional options.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -52,11 +52,15 @@ import java.io.IOException;
* <p> Socket options are configured using the {@link #setOption(SocketOption,Object)
* setOption} method. Channels of this type support the following options:
* <blockquote>
* <table border summary="Socket options">
* <table class="striped">
* <caption style="display:none">Socket options</caption>
* <thead>
* <tr>
* <th>Option Name</th>
* <th>Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </td>
* <td> The size of the socket receive buffer </td>
@ -65,6 +69,7 @@ import java.io.IOException;
* <td> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </td>
* <td> Re-use address </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
* Additional (implementation specific) options may also be supported.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -62,11 +62,15 @@ import java.nio.ByteBuffer;
* <p> Socket options are configured using the {@link #setOption(SocketOption,Object)
* setOption} method. Asynchronous socket channels support the following options:
* <blockquote>
* <table border summary="Socket options">
* <table class="striped">
* <caption style="display:none">Socket options</caption>
* <thead>
* <tr>
* <th>Option Name</th>
* <th>Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </td>
* <td> The size of the socket send buffer </td>
@ -87,6 +91,7 @@ import java.nio.ByteBuffer;
* <td> {@link java.net.StandardSocketOptions#TCP_NODELAY TCP_NODELAY} </td>
* <td> Disable the Nagle algorithm </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
* Additional (implementation specific) options may also be supported.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -57,11 +57,15 @@ import java.nio.channels.spi.SelectorProvider;
* setOption} method. A datagram channel to an Internet Protocol socket supports
* the following options:
* <blockquote>
* <table border summary="Socket options">
* <table class="striped">
* <caption style="display:none">Socket options</caption>
* <thead>
* <tr>
* <th>Option Name</th>
* <th>Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </td>
* <td> The size of the socket send buffer </td>
@ -97,6 +101,7 @@ import java.nio.channels.spi.SelectorProvider;
* IP_MULTICAST_LOOP} </td>
* <td> Loopback for Internet Protocol (IP) multicast datagrams </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
* Additional (implementation specific) options may also be supported.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -174,8 +174,12 @@ public abstract class FileChannel
* <p> In the addition to {@code READ} and {@code WRITE}, the following
* options may be present:
*
* <table border=1 cellpadding=5 summary="">
* <table class="striped">
* <caption style="display:none">additional options</caption>
* <thead>
* <tr> <th>Option</th> <th>Description</th> </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link StandardOpenOption#APPEND APPEND} </td>
* <td> If this option is present then the file is opened for writing and
@ -237,6 +241,7 @@ public abstract class FileChannel
* href="../file/package-summary.html#integrity"> Synchronized I/O file
* integrity</a>). </td>
* </tr>
* </tbody>
* </table>
*
* <p> An implementation may also support additional options.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -46,11 +46,15 @@ import java.nio.channels.spi.SelectorProvider;
* <p> Socket options are configured using the {@link #setOption(SocketOption,Object)
* setOption} method. Server-socket channels support the following options:
* <blockquote>
* <table border summary="Socket options">
* <table class="striped">
* <caption style="display:none">Socket options</caption>
* <thead>
* <tr>
* <th>Option Name</th>
* <th>Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </td>
* <td> The size of the socket receive buffer </td>
@ -59,6 +63,7 @@ import java.nio.channels.spi.SelectorProvider;
* <td> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </td>
* <td> Re-use address </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
* Additional (implementation specific) options may also be supported.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -66,11 +66,15 @@ import java.nio.channels.spi.SelectorProvider;
* <p> Socket options are configured using the {@link #setOption(SocketOption,Object)
* setOption} method. Socket channels support the following options:
* <blockquote>
* <table border summary="Socket options">
* <table class="striped">
* <caption style="display:none">Socket options</caption>
* <thead>
* <tr>
* <th>Option Name</th>
* <th>Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </td>
* <td> The size of the socket send buffer </td>
@ -96,6 +100,7 @@ import java.nio.channels.spi.SelectorProvider;
* <td> {@link java.net.StandardSocketOptions#TCP_NODELAY TCP_NODELAY} </td>
* <td> Disable the Nagle algorithm </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
* Additional (implementation specific) options may also be supported.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -147,8 +147,12 @@ import sun.security.action.GetPropertyAction;
* implementation to see if any other charsets are supported. The behavior
* of such optional charsets may differ between implementations.
*
* <blockquote><table style="width:80%" summary="Description of standard charsets">
* <blockquote><table class="striped" style="width:80%">
* <caption style="display:none">Description of standard charsets</caption>
* <thead>
* <tr><th style="text-align:left">Charset</th><th style="text-align:left">Description</th></tr>
* </thead>
* <tbody>
* <tr><td style="vertical-align:top">{@code US-ASCII}</td>
* <td>Seven-bit ASCII, a.k.a. {@code ISO646-US},
* a.k.a. the Basic Latin block of the Unicode character set</td></tr>
@ -165,6 +169,7 @@ import sun.security.action.GetPropertyAction;
* <tr><td style="vertical-align:top">{@code UTF-16}</td>
* <td>Sixteen-bit UCS Transformation Format,
* byte&nbsp;order identified by an optional byte-order mark</td></tr>
* </tbody>
* </table></blockquote>
*
* <p> The {@code UTF-8} charset is specified by <a

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -315,7 +315,9 @@ public abstract class FileSystem
* that resembles regular expressions but with a simpler syntax. For example:
*
* <blockquote>
* <table border="0" summary="Pattern Language">
* <table class="borderless">
* <caption style="display:none">Pattern Language</caption>
* <tbody>
* <tr>
* <td>{@code *.java}</td>
* <td>Matches a path that represents a file name ending in {@code .java}</td>
@ -348,7 +350,7 @@ public abstract class FileSystem
* platform (note that the backslash is escaped; as a string literal in the
* Java Language the pattern would be <code>"C:&#92;&#92;&#92;&#92;*"</code>) </td>
* </tr>
*
* </tbody>
* </table>
* </blockquote>
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -233,8 +233,12 @@ public final class Files {
* <p> In the addition to {@code READ} and {@code WRITE}, the following
* options may be present:
*
* <table border=1 cellpadding=5 summary="Options">
* <table class="striped">
* <caption style="display:none">Options</caption>
* <thead>
* <tr> <th>Option</th> <th>Description</th> </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link StandardOpenOption#APPEND APPEND} </td>
* <td> If this option is present then the file is opened for writing and
@ -294,6 +298,7 @@ public final class Files {
* href="package-summary.html#integrity"> Synchronized I/O file
* integrity</a>). </td>
* </tr>
* </tbody>
* </table>
*
* <p> An implementation may also support additional implementation specific
@ -1188,8 +1193,12 @@ public final class Files {
*
* <p> The {@code options} parameter may include any of the following:
*
* <table border=1 cellpadding=5 summary="">
* <table class="striped">
* <caption style="display:none">Options</caption>
* <thead>
* <tr> <th>Option</th> <th>Description</th> </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link StandardCopyOption#REPLACE_EXISTING REPLACE_EXISTING} </td>
* <td> If the target file exists, then the target file is replaced if it
@ -1215,6 +1224,7 @@ public final class Files {
* new link. In other words, the {@code COPY_ATTRIBUTES} option may be
* ignored when copying a symbolic link. </td>
* </tr>
* </tbody>
* </table>
*
* <p> An implementation of this interface may support additional
@ -1306,8 +1316,12 @@ public final class Files {
*
* <p> The {@code options} parameter may include any of the following:
*
* <table border=1 cellpadding=5 summary="">
* <table class="striped">
* <caption style="display:none">Options</caption>
* <thead>
* <tr> <th>Option</th> <th>Description</th> </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link StandardCopyOption#REPLACE_EXISTING REPLACE_EXISTING} </td>
* <td> If the target file exists, then the target file is replaced if it
@ -1326,6 +1340,7 @@ public final class Files {
* example, when the target location is on a different {@code FileStore}
* and would require that the file be copied, or target location is
* associated with a different provider to this object. </td>
* </tbody>
* </table>
*
* <p> An implementation of this interface may support additional
@ -1909,7 +1924,9 @@ public final class Files {
* attributes} parameter:
*
* <blockquote>
* <table border="0" summary="Possible values">
* <table class="borderless">
* <caption style="display:none">Possible values</caption>
* <tbody>
* <tr>
* <td> {@code "*"} </td>
* <td> Read all {@link BasicFileAttributes basic-file-attributes}. </td>
@ -1927,6 +1944,7 @@ public final class Files {
* <td> {@code "posix:permissions,owner,size"} </td>
* <td> Reads the POSIX file permissions, owner, and file size. </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -33,13 +33,16 @@ import java.security.BasicPermission;
* <p> The following table provides a summary description of what the permission
* allows, and discusses the risks of granting code the permission.
*
* <table border=1 cellpadding=5
* summary="Table shows permission target name, what the permission allows, and associated risks">
* <table class="striped">
* <caption style="display:none">Table shows permission target name, what the permission allows, and associated risks</caption>
* <thead>
* <tr>
* <th>Permission Target Name</th>
* <th>What the Permission Allows</th>
* <th>Risks of Allowing this Permission</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td>hard</td>
* <td> Ability to add an existing file to a directory. This is sometimes
@ -55,6 +58,7 @@ import java.security.BasicPermission;
* linking to any file or directory in the file system thus allowing the
* attacker to access to all files. </td>
* </tr>
* </tbody>
* </table>
*
* @since 1.7

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -94,11 +94,15 @@ import java.io.IOException;
* <p> Where dynamic access to file attributes is required, the attributes
* supported by this attribute view are as follows:
* <blockquote>
* <table border="1" cellpadding="8" summary="Supported attributes">
* <table class="striped">
* <caption style="display:none">Supported attributes</caption>
* <thead>
* <tr>
* <th> Name </th>
* <th> Type </th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> "acl" </td>
* <td> {@link List}&lt;{@link AclEntry}&gt; </td>
@ -107,6 +111,7 @@ import java.io.IOException;
* <td> "owner" </td>
* <td> {@link UserPrincipal} </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -41,11 +41,15 @@ import java.io.IOException;
* <p> Where dynamic access to file attributes is required, the attributes
* supported by this attribute view have the following names and types:
* <blockquote>
* <table border="1" cellpadding="8" summary="Supported attributes">
* <table class="striped">
* <caption style="display:none">Supported attributes</caption>
* <thead>
* <tr>
* <th> Name </th>
* <th> Type </th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> "lastModifiedTime" </td>
* <td> {@link FileTime} </td>
@ -82,6 +86,7 @@ import java.io.IOException;
* <td> "fileKey" </td>
* <td> {@link Object} </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -41,11 +41,15 @@ import java.io.IOException;
* BasicFileAttributeView}, and in addition, the following attributes are
* supported:
* <blockquote>
* <table border="1" cellpadding="8" summary="Supported attributes">
* <table class="striped">
* <caption style="display:none">Supported attributes</caption>
* <thead>
* <tr>
* <th> Name </th>
* <th> Type </th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> readonly </td>
* <td> {@link Boolean} </td>
@ -62,6 +66,7 @@ import java.io.IOException;
* <td> archive </td>
* <td> {@link Boolean} </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -74,11 +74,15 @@ import java.io.IOException;
* BasicFileAttributeView} and {@link FileOwnerAttributeView}, and in addition,
* the following attributes are supported:
* <blockquote>
* <table border="1" cellpadding="8" summary="Supported attributes">
* <table class="striped">
* <caption style="display:none">Supported attributes</caption>
* <thead>
* <tr>
* <th> Name </th>
* <th> Type </th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td> "permissions" </td>
* <td> {@link Set}&lt;{@link PosixFilePermission}&gt; </td>
@ -87,6 +91,7 @@ import java.io.IOException;
* <td> "group" </td>
* <td> {@link GroupPrincipal} </td>
* </tr>
* </tbody>
* </table>
* </blockquote>
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -919,8 +919,12 @@ public abstract class FileSystemProvider {
* according to all of access modes specified in the {@code modes} parameter
* as follows:
*
* <table border=1 cellpadding=5 summary="">
* <table class="striped">
* <caption style="display:none">Access Modes</caption>
* <thead>
* <tr> <th>Value</th> <th>Description</th> </tr>
* </thead>
* <tbody>
* <tr>
* <td> {@link AccessMode#READ READ} </td>
* <td> Checks that the file exists and that the Java virtual machine has
@ -940,6 +944,7 @@ public abstract class FileSystemProvider {
* virtual machine has permission to search the directory in order to
* access file or subdirectories. </td>
* </tr>
* </tbody>
* </table>
*
* <p> If the {@code modes} parameter is of length zero, then the existence

View File

@ -75,9 +75,9 @@ import java.util.Objects;
* <li>{@code DSA} (1024, 2048)</li>
* </ul>
* These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameterGenerator">
* "{@docRoot}/../specs/security/standard-names.html#algorithmparametergenerator-algorithms">
* AlgorithmParameterGenerator section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other algorithms are supported.
*
@ -150,8 +150,8 @@ public class AlgorithmParameterGenerator {
* @param algorithm the name of the algorithm this
* parameter generator is associated with.
* See the AlgorithmParameterGenerator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameterGenerator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#algorithmparametergenerator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return the new {@code AlgorithmParameterGenerator} object
@ -195,8 +195,8 @@ public class AlgorithmParameterGenerator {
* @param algorithm the name of the algorithm this
* parameter generator is associated with.
* See the AlgorithmParameterGenerator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameterGenerator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#algorithmparametergenerator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the string name of the Provider.
@ -245,8 +245,8 @@ public class AlgorithmParameterGenerator {
* @param algorithm the string name of the algorithm this
* parameter generator is associated with.
* See the AlgorithmParameterGenerator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameterGenerator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#algorithmparametergenerator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the {@code Provider} object.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -57,9 +57,9 @@ import java.util.Objects;
* <li>{@code DSA}</li>
* </ul>
* These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameters">
* "{@docRoot}/../specs/security/standard-names.html#algorithmparameters-algorithms">
* AlgorithmParameters section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other algorithms are supported.
*
@ -137,8 +137,8 @@ public class AlgorithmParameters {
*
* @param algorithm the name of the algorithm requested.
* See the AlgorithmParameters section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameters">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#algorithmparameters-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return the new parameter object
@ -182,8 +182,8 @@ public class AlgorithmParameters {
*
* @param algorithm the name of the algorithm requested.
* See the AlgorithmParameters section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameters">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#algorithmparameters-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the name of the provider.
@ -232,8 +232,8 @@ public class AlgorithmParameters {
*
* @param algorithm the name of the algorithm requested.
* See the AlgorithmParameters section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameters">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#algorithmparameters-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the name of the provider.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -188,7 +188,7 @@ import java.util.Objects;
* @implSpec
* By convention, a provider should name its primary DRBG implementation
* with the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#SecureRandom">
* "{@docRoot}/../specs/security/standard-names.html#securerandom-number-generation-algorithms">
* standard {@code SecureRandom} algorithm name</a> "DRBG".
*
* @implNote
@ -263,14 +263,19 @@ public class DrbgParameters {
* Capability effective = ((DrbgParametes.Initiate) s.getParameters())
* .getCapability();</pre>
* </blockquote>
* <table border=1 summary="requested and effective capabilities">
* <table class="plain">
* <caption style="display:none">requested and effective capabilities</caption>
* <thead>
* <tr>
* <th>Requested Value</th>
* <th>Possible Effective Values</th>
* </tr>
* </thead>
* <tbody>
* <tr><td>NONE</td><td>NONE, RESEED_ONLY, PR_AND_RESEED</td></tr>
* <tr><td>RESEED_ONLY</td><td>RESEED_ONLY, PR_AND_RESEED</td></tr>
* <tr><td>PR_AND_RESEED</td><td>PR_AND_RESEED</td></tr>
* </tbody>
* </table>
* <p>
* A DRBG implementation supporting prediction resistance must also

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2014, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -82,7 +82,7 @@ package java.security;
* <p> A Key should use KeyRep as its serialized representation.
* Note that a serialized Key may contain sensitive information
* which should not be exposed in untrusted environments. See the
* <a href="../../../platform/serialization/spec/security.html">
* <a href="{@docRoot}/../specs/serialization/security.html">
* Security Appendix</a>
* of the Serialization Specification for more information.
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -75,9 +75,9 @@ import sun.security.jca.GetInstance.Instance;
* <li>{@code RSA}</li>
* </ul>
* These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyFactory">
* "{@docRoot}/../specs/security/standard-names.html#keyfactory-algorithms">
* KeyFactory section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other algorithms are supported.
*
@ -163,8 +163,8 @@ public class KeyFactory {
*
* @param algorithm the name of the requested key algorithm.
* See the KeyFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keyfactory-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return the new {@code KeyFactory} object
@ -197,8 +197,8 @@ public class KeyFactory {
*
* @param algorithm the name of the requested key algorithm.
* See the KeyFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keyfactory-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the name of the provider.
@ -239,8 +239,8 @@ public class KeyFactory {
*
* @param algorithm the name of the requested key algorithm.
* See the KeyFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keyfactory-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the provider.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -114,9 +114,9 @@ import sun.security.util.Debug;
* <li>{@code RSA} (1024, 2048, 4096)</li>
* </ul>
* These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyPairGenerator">
* "{@docRoot}/../specs/security/standard-names.html#keypairgenerator-algorithms">
* KeyPairGenerator section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other algorithms are supported.
*
@ -142,8 +142,8 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
*
* @param algorithm the standard string name of the algorithm.
* See the KeyPairGenerator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyPairGenerator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keypairgenerator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*/
protected KeyPairGenerator(String algorithm) {
@ -153,8 +153,8 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
/**
* Returns the standard name of the algorithm for this key pair generator.
* See the KeyPairGenerator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyPairGenerator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keypairgenerator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return the standard string name of the algorithm.
@ -205,8 +205,8 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
*
* @param algorithm the standard string name of the algorithm.
* See the KeyPairGenerator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyPairGenerator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keypairgenerator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return the new {@code KeyPairGenerator} object
@ -264,8 +264,8 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
*
* @param algorithm the standard string name of the algorithm.
* See the KeyPairGenerator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyPairGenerator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keypairgenerator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the string name of the provider.
@ -306,8 +306,8 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
*
* @param algorithm the standard string name of the algorithm.
* See the KeyPairGenerator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyPairGenerator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keypairgenerator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the provider.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -42,7 +42,7 @@ import javax.crypto.spec.SecretKeySpec;
*
* Note that a serialized Key may contain sensitive information
* which should not be exposed in untrusted environments. See the
* <a href="../../../platform/serialization/spec/security.html">
* <a href="{@docRoot}/../specs/serialization/security.html">
* Security Appendix</a>
* of the Serialization Specification for more information.
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -176,9 +176,9 @@ import sun.security.util.Debug;
* <li>{@code PKCS12}</li>
* </ul>
* This type is described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyStore">
* "{@docRoot}/../specs/security/standard-names.html#keystore-types">
* KeyStore section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other types are supported.
*
@ -291,9 +291,8 @@ public class KeyStore {
* @param protectionAlgorithm the encryption algorithm name, for
* example, {@code PBEWithHmacSHA256AndAES_256}.
* See the Cipher section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Cipher">
* Java Cryptography Architecture Standard Algorithm Name
* Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#cipher-algorithm-names">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard encryption algorithm names.
* @param protectionParameters the encryption algorithm parameter
* specification, which may be {@code null}
@ -854,8 +853,8 @@ public class KeyStore {
*
* @param type the type of keystore.
* See the KeyStore section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyStore">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keystore-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard keystore types.
*
* @return a keystore object of the specified type
@ -895,8 +894,8 @@ public class KeyStore {
*
* @param type the type of keystore.
* See the KeyStore section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyStore">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keystore-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard keystore types.
*
* @param provider the name of the provider.
@ -941,8 +940,8 @@ public class KeyStore {
*
* @param type the type of keystore.
* See the KeyStore section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyStore">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keystore-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard keystore types.
*
* @param provider the provider.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -89,9 +89,9 @@ import javax.crypto.SecretKey;
* <li>{@code SHA-256}</li>
* </ul>
* These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#MessageDigest">
* "{@docRoot}/../specs/security/standard-names.html#messagedigest-algorithms">
* MessageDigest section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other algorithms are supported.
*
@ -123,8 +123,8 @@ public abstract class MessageDigest extends MessageDigestSpi {
*
* @param algorithm the standard name of the digest algorithm.
* See the MessageDigest section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#MessageDigest">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#messagedigest-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*/
protected MessageDigest(String algorithm) {
@ -154,8 +154,8 @@ public abstract class MessageDigest extends MessageDigestSpi {
*
* @param algorithm the name of the algorithm requested.
* See the MessageDigest section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#MessageDigest">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#messagedigest-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return a {@code MessageDigest} object that implements the
@ -209,8 +209,8 @@ public abstract class MessageDigest extends MessageDigestSpi {
*
* @param algorithm the name of the algorithm requested.
* See the MessageDigest section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#MessageDigest">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#messagedigest-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the name of the provider.
@ -262,8 +262,8 @@ public abstract class MessageDigest extends MessageDigestSpi {
*
* @param algorithm the name of the algorithm requested.
* See the MessageDigest section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#MessageDigest">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#messagedigest-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the provider.
@ -497,8 +497,8 @@ public abstract class MessageDigest extends MessageDigestSpi {
* implementation details. The name should be a standard
* Java Security name (such as "SHA", "MD5", and so on).
* See the MessageDigest section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#MessageDigest">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#messagedigest-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return the name of the algorithm

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -365,8 +365,8 @@ public abstract class Policy {
*
* @param type the specified Policy type. See the Policy section in the
* <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Policy">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#policy-types">
* Java Security Standard Algorithm Names Specification</a>
* for a list of standard Policy types.
*
* @param params parameters for the Policy, which may be null.
@ -419,8 +419,8 @@ public abstract class Policy {
*
* @param type the specified Policy type. See the Policy section in the
* <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Policy">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#policy-types">
* Java Security Standard Algorithm Names Specification</a>
* for a list of standard Policy types.
*
* @param params parameters for the Policy, which may be null.
@ -485,8 +485,8 @@ public abstract class Policy {
*
* @param type the specified Policy type. See the Policy section in the
* <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Policy">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#policy-types">
* Java Security Standard Algorithm Names Specification</a>
* for a list of standard Policy types.
*
* @param params parameters for the Policy, which may be null.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -61,17 +61,21 @@ import java.util.function.Function;
* security framework. Services of this type cannot be added, removed,
* or modified by applications.
* The following attributes are automatically placed in each Provider object:
* <table cellspacing=4>
* <table class="plain">
* <caption><b>Attributes Automatically Placed in a Provider Object</b></caption>
* <thead>
* <tr><th>Name</th><th>Value</th>
* </thead>
* <tbody>
* <tr><td>{@code Provider.id name}</td>
* <td>{@code String.valueOf(provider.getName())}</td>
* <td>{@code String.valueOf(provider.getName())}</td>
* <tr><td>{@code Provider.id version}</td>
* <td>{@code String.valueOf(provider.getVersionStr())}</td>
* <tr><td>{@code Provider.id info}</td>
<td>{@code String.valueOf(provider.getInfo())}</td>
* <td>{@code String.valueOf(provider.getInfo())}</td>
* <tr><td>{@code Provider.id className}</td>
* <td>{@code provider.getClass().getName()}</td>
* </tbody>
* </table>
*
* <p>Each provider has a name and a version string. A provider normally

View File

@ -126,7 +126,7 @@ import sun.security.util.Debug;
* @implSpec
* A {@code SecureRandom} service provider can advertise that it is thread-safe
* by setting the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Service">service
* "{@docRoot}/../specs/security/standard-names.html#service-attributes">service
* provider attribute</a> "ThreadSafe" to "true" when registering the provider.
* Otherwise, this class will instead synchronize access to the following
* methods of the {@code SecureRandomSpi} implementation:
@ -203,8 +203,8 @@ public class SecureRandom extends java.util.Random {
* the {@link Security#getProviders() Security.getProviders()} method.
*
* <p> See the {@code SecureRandom} section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#SecureRandom">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#securerandom-number-generation-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard RNG algorithm names.
*/
public SecureRandom() {
@ -244,8 +244,8 @@ public class SecureRandom extends java.util.Random {
* the {@link Security#getProviders() Security.getProviders()} method.
*
* <p> See the {@code SecureRandom} section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#SecureRandom">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#securerandom-number-generation-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard RNG algorithm names.
*
* @param seed the seed.
@ -341,8 +341,8 @@ public class SecureRandom extends java.util.Random {
*
* @param algorithm the name of the RNG algorithm.
* See the {@code SecureRandom} section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#SecureRandom">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#securerandom-number-generation-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard RNG algorithm names.
*
* @return the new {@code SecureRandom} object
@ -380,8 +380,8 @@ public class SecureRandom extends java.util.Random {
*
* @param algorithm the name of the RNG algorithm.
* See the {@code SecureRandom} section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#SecureRandom">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#securerandom-number-generation-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard RNG algorithm names.
*
* @param provider the name of the provider.
@ -424,8 +424,8 @@ public class SecureRandom extends java.util.Random {
*
* @param algorithm the name of the RNG algorithm.
* See the {@code SecureRandom} section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#SecureRandom">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#securerandom-number-generation-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard RNG algorithm names.
*
* @param provider the provider.
@ -478,8 +478,8 @@ public class SecureRandom extends java.util.Random {
*
* @param algorithm the name of the RNG algorithm.
* See the {@code SecureRandom} section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#SecureRandom">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#securerandom-number-generation-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard RNG algorithm names.
*
* @param params the {@code SecureRandomParameters}
@ -528,8 +528,8 @@ public class SecureRandom extends java.util.Random {
*
* @param algorithm the name of the RNG algorithm.
* See the {@code SecureRandom} section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#SecureRandom">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#securerandom-number-generation-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard RNG algorithm names.
*
* @param params the {@code SecureRandomParameters}
@ -581,8 +581,8 @@ public class SecureRandom extends java.util.Random {
*
* @param algorithm the name of the RNG algorithm.
* See the {@code SecureRandom} section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#SecureRandom">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#securerandom-number-generation-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard RNG algorithm names.
*
* @param params the {@code SecureRandomParameters}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -65,7 +65,7 @@ package java.security;
* will synchronize access to each of the applicable engine methods
* (see {@link SecureRandom} for the list of methods). However, if a
* {@code SecureRandomSpi} implementation is thread-safe, the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Service">
* "{@docRoot}/../specs/security/standard-names.html#service-attributes">
* service provider attribute</a> "ThreadSafe" should be set to "true" during
* its registration, as follows:
* <blockquote><pre>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -281,8 +281,8 @@ public final class Security {
/**
* Gets a specified property for an algorithm. The algorithm name
* should be a standard name. See the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* One possible use is by specialized algorithm parsers, which may map
@ -511,8 +511,8 @@ public final class Security {
* </ul>
*
* <p> See the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard cryptographic service names, standard
* algorithm names and standard attribute names.
*
@ -582,8 +582,8 @@ public final class Security {
* </ul>
*
* <p> See the <a href=
* "../../../technotes/guides/security/StandardNames.html">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard cryptographic service names, standard
* algorithm names and standard attribute names.
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -45,12 +45,16 @@ import java.util.StringTokenizer;
* target names, and for each provides a description of what the permission
* allows and a discussion of the risks of granting code the permission.
*
* <table border=1 cellpadding=5 summary="target name,what the permission allows, and associated risks">
* <table class="striped">
* <caption style="display:none">target name, what the permission allows, and associated risks</caption>
* <thead>
* <tr>
* <th>Permission Target Name</th>
* <th>What the Permission Allows</th>
* <th>Risks of Allowing this Permission</th>
* </tr>
* </thead>
* <tbody>
*
* <tr>
* <td>authProvider.{provider name}</td>
@ -196,6 +200,7 @@ import java.util.StringTokenizer;
* described under the "removeProvider.{provider name}" permission.</td>
* </tr>
*
* </tbody>
* </table>
*
* <P>
@ -204,13 +209,17 @@ import java.util.StringTokenizer;
* {@link IdentityScope}, {@link Signer}. Use of them is discouraged. See the
* applicable classes for more information.
*
* <table border=1 cellpadding=5 summary="target name,what the permission allows, and associated risks">
* <table class="striped">
* <caption style="display:none">target name, what the permission allows, and associated risks</caption>
* <thead>
* <tr>
* <th>Permission Target Name</th>
* <th>What the Permission Allows</th>
* <th>Risks of Allowing this Permission</th>
* </tr>
* </thead>
*
* <tbody>
* <tr>
* <td>insertProvider.{provider name}</td>
* <td>Addition of a new provider, with the specified name</td>
@ -308,6 +317,7 @@ import java.util.StringTokenizer;
* data encrypted under that session key.</td>
* </tr>
*
* </tbody>
* </table>
*
* @implNote

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -106,9 +106,9 @@ import sun.security.jca.GetInstance.Instance;
* <li>{@code SHA256withRSA}</li>
* </ul>
* These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Signature">
* "{@docRoot}/../specs/security/standard-names.html#signature-algorithms">
* Signature section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other algorithms are supported.
*
@ -164,8 +164,8 @@ public abstract class Signature extends SignatureSpi {
*
* @param algorithm the standard string name of the algorithm.
* See the Signature section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Signature">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#signature-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*/
protected Signature(String algorithm) {
@ -209,8 +209,8 @@ public abstract class Signature extends SignatureSpi {
*
* @param algorithm the standard name of the algorithm requested.
* See the Signature section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Signature">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#signature-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return the new {@code Signature} object
@ -332,8 +332,8 @@ public abstract class Signature extends SignatureSpi {
*
* @param algorithm the name of the algorithm requested.
* See the Signature section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Signature">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#signature-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the name of the provider.
@ -385,8 +385,8 @@ public abstract class Signature extends SignatureSpi {
*
* @param algorithm the name of the algorithm requested.
* See the Signature section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Signature">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#signature-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the provider.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -91,9 +91,9 @@ import java.util.List;
* <li>{@code PkiPath}</li>
* </ul>
* These encodings are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings">
* "{@docRoot}/../specs/security/standard-names.html#certpath-encodings">
* CertPath Encodings section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other encodings are supported.
* <p>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -72,9 +72,9 @@ import sun.security.jca.GetInstance.Instance;
* <li>{@code PKIX}</li>
* </ul>
* This algorithm is described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder">
* "{@docRoot}/../specs/security/standard-names.html#certpathbuilder-algorithms">
* CertPathBuilder section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other algorithms are supported.
*
@ -152,8 +152,8 @@ public class CertPathBuilder {
*
* @param algorithm the name of the requested {@code CertPathBuilder}
* algorithm. See the CertPathBuilder section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certpathbuilder-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return a {@code CertPathBuilder} object that implements the
@ -190,8 +190,8 @@ public class CertPathBuilder {
*
* @param algorithm the name of the requested {@code CertPathBuilder}
* algorithm. See the CertPathBuilder section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certpathbuilder-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the name of the provider.
@ -233,8 +233,8 @@ public class CertPathBuilder {
*
* @param algorithm the name of the requested {@code CertPathBuilder}
* algorithm. See the CertPathBuilder section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certpathbuilder-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the provider.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -74,9 +74,9 @@ import sun.security.jca.GetInstance.Instance;
* <li>{@code PKIX}</li>
* </ul>
* This algorithm is described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator">
* "{@docRoot}/../specs/security/standard-names.html#certpathvalidator-algorithms">
* CertPathValidator section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other algorithms are supported.
*
@ -152,9 +152,9 @@ public class CertPathValidator {
* {@link Security#getProviders() Security.getProviders()}.
*
* @param algorithm the name of the requested {@code CertPathValidator}
* algorithm. See the CertPathValidator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* algorithm. See the CertPathValidator section in the <a href=
* "{@docRoot}/../specs/security/standard-names.html#certpathvalidator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @return a {@code CertPathValidator} object that implements the
@ -190,9 +190,9 @@ public class CertPathValidator {
* the {@link Security#getProviders() Security.getProviders()} method.
*
* @param algorithm the name of the requested {@code CertPathValidator}
* algorithm. See the CertPathValidator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* algorithm. See the CertPathValidator section in the <a href=
* "{@docRoot}/../specs/security/standard-names.html#certpathvalidator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the name of the provider.
@ -235,8 +235,8 @@ public class CertPathValidator {
*
* @param algorithm the name of the requested {@code CertPathValidator}
* algorithm. See the CertPathValidator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certpathvalidator-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
*
* @param provider the provider.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -67,9 +67,9 @@ import sun.security.jca.GetInstance.Instance;
* <li>{@code Collection}</li>
* </ul>
* This type is described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore">
* "{@docRoot}/../specs/security/standard-names.html#certstore-types">
* CertStore section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other types are supported.
*
@ -212,8 +212,8 @@ public class CertStore {
*
* @param type the name of the requested {@code CertStore} type.
* See the CertStore section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certstore-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard types.
*
* @param params the initialization parameters (may be {@code null}).
@ -276,8 +276,8 @@ public class CertStore {
*
* @param type the requested {@code CertStore} type.
* See the CertStore section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certstore-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard types.
*
* @param params the initialization parameters (may be {@code null}).
@ -337,8 +337,8 @@ public class CertStore {
*
* @param type the requested {@code CertStore} type.
* See the CertStore section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certstore-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard types.
*
* @param params the initialization parameters (may be {@code null}).

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -74,8 +74,8 @@ public abstract class Certificate implements java.io.Serializable {
*
* @param type the standard name of the certificate type.
* See the CertificateFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertificateFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certificatefactory-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard certificate types.
*/
protected Certificate(String type) {

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -101,11 +101,11 @@ import sun.security.jca.GetInstance.Instance;
* <li>{@code PkiPath}</li>
* </ul>
* The type and encodings are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertificateFactory">
* "{@docRoot}/../specs/security/standard-names.html#certificatefactory-types">
* CertificateFactory section</a> and the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings">
* "{@docRoot}/../specs/security/standard-names.html#certpath-encodings">
* CertPath Encodings section</a> of the
* Java Cryptography Architecture Standard Algorithm Name Documentation.
* Java Security Standard Algorithm Names Specification.
* Consult the release documentation for your implementation to see if any
* other types or encodings are supported.
*
@ -172,8 +172,8 @@ public class CertificateFactory {
*
* @param type the name of the requested certificate type.
* See the CertificateFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertificateFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certificatefactory-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard certificate types.
*
* @return a certificate factory object for the specified type
@ -213,8 +213,8 @@ public class CertificateFactory {
*
* @param type the certificate type.
* See the CertificateFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertificateFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certificatefactory-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard certificate types.
*
* @param provider the name of the provider.
@ -260,8 +260,8 @@ public class CertificateFactory {
*
* @param type the certificate type.
* See the CertificateFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertificateFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certificatefactory-types">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard certificate types.
* @param provider the provider.
*
@ -359,8 +359,8 @@ public class CertificateFactory {
* Returns an iteration of the {@code CertPath} encodings supported
* by this certificate factory, with the default encoding first. See
* the CertPath Encodings section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certpath-encodings">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard encoding names and their formats.
* <p>
* Attempts to modify the returned {@code Iterator} via its
@ -399,8 +399,8 @@ public class CertificateFactory {
* the data read from the {@code InputStream} inStream. The data
* is assumed to be in the specified encoding. See
* the CertPath Encodings section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certpath-encodings">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard encoding names and their formats.
*
* @param inStream an {@code InputStream} containing the data

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -183,8 +183,8 @@ public abstract class CertificateFactorySpi {
* Returns an iteration of the {@code CertPath} encodings supported
* by this certificate factory, with the default encoding first. See
* the CertPath Encodings section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#certpath-encodings">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard encoding names.
* <p>
* Attempts to modify the returned {@code Iterator} via its

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -152,10 +152,14 @@ public interface X509Extension {
* by periods.
*
* <p>For example:<br>
* <table border=groove summary="Examples of OIDs and extension names">
* <table class="plain">
* <caption style="display:none">Examples of OIDs and extension names</caption>
* <thead>
* <tr>
* <th>OID <em>(Object Identifier)</em></th>
* <th>Extension Name</th></tr>
* </thead>
* <tbody>
* <tr><td>2.5.29.14</td>
* <td>SubjectKeyIdentifier</td></tr>
* <tr><td>2.5.29.15</td>
@ -176,6 +180,7 @@ public interface X509Extension {
* <td>AuthorityKeyIdentifier</td></tr>
* <tr><td>2.5.29.36</td>
* <td>PolicyConstraints</td></tr>
* </tbody>
* </table>
*
* @param oid the Object Identifier value for the extension.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -39,10 +39,9 @@
* Certificate Revocation List (CRL) Profile
* <li>RFC 2560: X.509 Internet Public Key Infrastructure Online Certificate
* Status Protocol - OCSP
* <li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
* <b>Java&trade;
* Cryptography Architecture Standard Algorithm Name
* Documentation</b></a></li>
* <li><a href="{@docRoot}/../specs/security/standard-names.html">
* <b>Java&trade; Security Standard Algorithm Names Specification
* </b></a></li>
* </ul>
*
* <h2>Related Documentation</h2>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -53,10 +53,9 @@
* <li>PKCS #8: Private-Key Information Syntax Standard, Version 1.2,
* November 1993</li>
*
* <li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
* <b>Java&trade;
* Cryptography Architecture Standard Algorithm Name
* Documentation</b></a></li>
* <li><a href="{@docRoot}/../specs/security/standard-names.html">
* <b>Java&trade; Security Standard Algorithm Names Specification
* </b></a></li>
* </ul>
*
* <h2>Related Documentation</h2>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -67,8 +67,8 @@ public abstract class EncodedKeySpec implements KeySpec {
* array are copied to protect against subsequent modification.
* @param algorithm the algorithm name of the encoded key
* See the KeyFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keyfactory-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
* @throws NullPointerException if {@code encodedKey}
* or {@code algorithm} is null.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -85,8 +85,8 @@ public class PKCS8EncodedKeySpec extends EncodedKeySpec {
* the array are copied to protect against subsequent modification.
* @param algorithm the algorithm name of the encoded private key
* See the KeyFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keyfactory-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
* @throws NullPointerException if {@code encodedKey}
* or {@code algorithm} is null.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -75,8 +75,8 @@ public class X509EncodedKeySpec extends EncodedKeySpec {
* array are copied to protect against subsequent modification.
* @param algorithm the algorithm name of the encoded public key
* See the KeyFactory section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyFactory">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* "{@docRoot}/../specs/security/standard-names.html#keyfactory-algorithms">
* Java Security Standard Algorithm Names Specification</a>
* for information about standard algorithm names.
* @throws NullPointerException if {@code encodedKey}
* or {@code algorithm} is null.

View File

@ -172,19 +172,22 @@ import sun.util.locale.provider.ResourceBundleBasedAdapter;
* are not localized.
*
* <blockquote>
* <table border=0 cellspacing=3 cellpadding=0 summary="Chart showing symbol,
* location, localized, and meaning.">
* <tr style="background-color: rgb(204, 204, 255);">
* <table class="striped">
* <caption style="display:none">Chart showing symbol, location, localized, and meaning.</caption>
* <thead>
* <tr>
* <th style="text-align:left">Symbol
* <th style="text-align:left">Location
* <th style="text-align:left">Localized?
* <th style="text-align:left">Meaning
* </thead>
* <tbody>
* <tr style="vertical-align:top">
* <td><code>0</code>
* <td>Number
* <td>Yes
* <td>Digit
* <tr style="vertical-align: top; background-color: rgb(238, 238, 255);">
* <tr style="vertical-align: top">
* <td><code>#</code>
* <td>Number
* <td>Yes
@ -194,7 +197,7 @@ import sun.util.locale.provider.ResourceBundleBasedAdapter;
* <td>Number
* <td>Yes
* <td>Decimal separator or monetary decimal separator
* <tr style="vertical-align: top; background-color: rgb(238, 238, 255);">
* <tr style="vertical-align: top">
* <td><code>-</code>
* <td>Number
* <td>Yes
@ -204,7 +207,7 @@ import sun.util.locale.provider.ResourceBundleBasedAdapter;
* <td>Number
* <td>Yes
* <td>Grouping separator
* <tr style="vertical-align: top; background-color: rgb(238, 238, 255);">
* <tr style="vertical-align: top">
* <td><code>E</code>
* <td>Number
* <td>Yes
@ -215,7 +218,7 @@ import sun.util.locale.provider.ResourceBundleBasedAdapter;
* <td>Subpattern boundary
* <td>Yes
* <td>Separates positive and negative subpatterns
* <tr style="vertical-align: top; background-color: rgb(238, 238, 255);">
* <tr style="vertical-align: top">
* <td><code>%</code>
* <td>Prefix or suffix
* <td>Yes
@ -225,7 +228,7 @@ import sun.util.locale.provider.ResourceBundleBasedAdapter;
* <td>Prefix or suffix
* <td>Yes
* <td>Multiply by 1000 and show as per mille value
* <tr style="vertical-align: top; background-color: rgb(238, 238, 255);">
* <tr style="vertical-align: top">
* <td><code>&#164;</code> (<code>&#92;u00A4</code>)
* <td>Prefix or suffix
* <td>No
@ -241,6 +244,7 @@ import sun.util.locale.provider.ResourceBundleBasedAdapter;
* for example, <code>"'#'#"</code> formats 123 to
* <code>"#123"</code>. To create a single quote
* itself, use two in a row: <code>"# o''clock"</code>.
* </tbody>
* </table>
* </blockquote>
*

View File

@ -146,11 +146,15 @@ import java.util.Locale;
* shown in the table are illegal. A <i>SubformatPattern</i> must
* be a valid pattern string for the {@code Format} subclass used.
*
* <table border=1 summary="Shows how FormatType and FormatStyle values map to Format instances">
* <table class="plain">
* <caption style="display:none">Shows how FormatType and FormatStyle values map to Format instances</caption>
* <thead>
* <tr>
* <th id="ft" class="TableHeadingColor">FormatType
* <th id="fs" class="TableHeadingColor">FormatStyle
* <th id="sc" class="TableHeadingColor">Subformat Created
* </thead>
* <tbody>
* <tr>
* <td headers="ft"><i>(none)</i>
* <td headers="fs"><i>(none)</i>
@ -213,6 +217,7 @@ import java.util.Locale;
* <td headers="ft"><code>choice</code>
* <td headers="fs"><i>SubformatPattern</i>
* <td headers="sc">{@code new} {@link ChoiceFormat#ChoiceFormat(String) ChoiceFormat}{@code (subformatPattern)}
* </tbody>
* </table>
*
* <h4>Usage Information</h4>
@ -766,11 +771,15 @@ public class MessageFormat extends Format {
* argument is <i>unavailable</i> if <code>arguments</code> is
* <code>null</code> or has fewer than argumentIndex+1 elements.
*
* <table border=1 summary="Examples of subformat,argument,and formatted text">
* <table class="plain">
* <caption style="display:none">Examples of subformat,argument,and formatted text</caption>
* <thead>
* <tr>
* <th>Subformat
* <th>Argument
* <th>Formatted Text
* </thead>
* <tbody>
* <tr>
* <td><i>any</i>
* <td><i>unavailable</i>
@ -805,6 +814,7 @@ public class MessageFormat extends Format {
* <td><code>null</code>
* <td><i>any</i>
* <td><code>argument.toString()</code>
* </tbody>
* </table>
* <p>
* If <code>pos</code> is non-null, and refers to

View File

@ -92,18 +92,22 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <code>'A'</code> to <code>'Z'</code> and from <code>'a'</code> to
* <code>'z'</code> are reserved):
* <blockquote>
* <table border=0 cellspacing=3 cellpadding=0 summary="Chart shows pattern letters, date/time component, presentation, and examples.">
* <tr style="background-color: rgb(204, 204, 255);">
* <table class="striped">
* <caption style="display:none">Chart shows pattern letters, date/time component, presentation, and examples.</caption>
* <thead>
* <tr>
* <th style="text-align:left">Letter
* <th style="text-align:left">Date or Time Component
* <th style="text-align:left">Presentation
* <th style="text-align:left">Examples
* </thead>
* <tbody>
* <tr>
* <td><code>G</code>
* <td>Era designator
* <td><a href="#text">Text</a>
* <td><code>AD</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>y</code>
* <td>Year
* <td><a href="#year">Year</a>
@ -113,7 +117,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Week year
* <td><a href="#year">Year</a>
* <td><code>2009</code>; <code>09</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>M</code>
* <td>Month in year (context sensitive)
* <td><a href="#month">Month</a>
@ -123,7 +127,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Month in year (standalone form)
* <td><a href="#month">Month</a>
* <td><code>July</code>; <code>Jul</code>; <code>07</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>w</code>
* <td>Week in year
* <td><a href="#number">Number</a>
@ -133,7 +137,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Week in month
* <td><a href="#number">Number</a>
* <td><code>2</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>D</code>
* <td>Day in year
* <td><a href="#number">Number</a>
@ -143,7 +147,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Day in month
* <td><a href="#number">Number</a>
* <td><code>10</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>F</code>
* <td>Day of week in month
* <td><a href="#number">Number</a>
@ -153,7 +157,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Day name in week
* <td><a href="#text">Text</a>
* <td><code>Tuesday</code>; <code>Tue</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>u</code>
* <td>Day number of week (1 = Monday, ..., 7 = Sunday)
* <td><a href="#number">Number</a>
@ -163,7 +167,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Am/pm marker
* <td><a href="#text">Text</a>
* <td><code>PM</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>H</code>
* <td>Hour in day (0-23)
* <td><a href="#number">Number</a>
@ -173,7 +177,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Hour in day (1-24)
* <td><a href="#number">Number</a>
* <td><code>24</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>K</code>
* <td>Hour in am/pm (0-11)
* <td><a href="#number">Number</a>
@ -183,7 +187,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Hour in am/pm (1-12)
* <td><a href="#number">Number</a>
* <td><code>12</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>m</code>
* <td>Minute in hour
* <td><a href="#number">Number</a>
@ -193,7 +197,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Second in minute
* <td><a href="#number">Number</a>
* <td><code>55</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>S</code>
* <td>Millisecond
* <td><a href="#number">Number</a>
@ -203,7 +207,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Time zone
* <td><a href="#timezone">General time zone</a>
* <td><code>Pacific Standard Time</code>; <code>PST</code>; <code>GMT-08:00</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>Z</code>
* <td>Time zone
* <td><a href="#rfc822timezone">RFC 822 time zone</a>
@ -213,6 +217,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* <td>Time zone
* <td><a href="#iso8601timezone">ISO 8601 time zone</a>
* <td><code>-08</code>; <code>-0800</code>; <code>-08:00</code>
* </tbody>
* </table>
* </blockquote>
* Pattern letters are usually repeated, as their number determines the
@ -370,43 +375,48 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* the U.S. locale. The given date and time are 2001-07-04 12:08:56 local time
* in the U.S. Pacific Time time zone.
* <blockquote>
* <table border=0 cellspacing=3 cellpadding=0 summary="Examples of date and time patterns interpreted in the U.S. locale">
* <tr style="background-color: rgb(204, 204, 255);">
* <table class="striped">
* <caption style="display:none">Examples of date and time patterns interpreted in the U.S. locale</caption>
* <thead>
* <tr>
* <th style="text-align:left">Date and Time Pattern
* <th style="text-align:left">Result
* </thead>
* <tbody>
* <tr>
* <td><code>"yyyy.MM.dd G 'at' HH:mm:ss z"</code>
* <td><code>2001.07.04 AD at 12:08:56 PDT</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>"EEE, MMM d, ''yy"</code>
* <td><code>Wed, Jul 4, '01</code>
* <tr>
* <td><code>"h:mm a"</code>
* <td><code>12:08 PM</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>"hh 'o''clock' a, zzzz"</code>
* <td><code>12 o'clock PM, Pacific Daylight Time</code>
* <tr>
* <td><code>"K:mm a, z"</code>
* <td><code>0:08 PM, PDT</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>"yyyyy.MMMMM.dd GGG hh:mm aaa"</code>
* <td><code>02001.July.04 AD 12:08 PM</code>
* <tr>
* <td><code>"EEE, d MMM yyyy HH:mm:ss Z"</code>
* <td><code>Wed, 4 Jul 2001 12:08:56 -0700</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>"yyMMddHHmmssZ"</code>
* <td><code>010704120856-0700</code>
* <tr>
* <td><code>"yyyy-MM-dd'T'HH:mm:ss.SSSZ"</code>
* <td><code>2001-07-04T12:08:56.235-0700</code>
* <tr style="background-color: rgb(238, 238, 255);">
* <tr>
* <td><code>"yyyy-MM-dd'T'HH:mm:ss.SSSXXX"</code>
* <td><code>2001-07-04T12:08:56.235-07:00</code>
* <tr>
* <td><code>"YYYY-'W'ww-u"</code>
* <td><code>2001-W27-3</code>
* </tbody>
* </table>
* </blockquote>
*

View File

@ -103,17 +103,18 @@ import sun.util.logging.PlatformLogger;
*
* <p>
* CLDR and LDML identify variants:
* <table cellpadding="2" summary="Variants of Hijrah Calendars">
* <table class="striped">
* <caption style="display:none">Variants of Hijrah Calendars</caption>
* <thead>
* <tr class="tableSubHeadingColor">
* <th class="colFirst" style="text-align:left" >Chronology ID</th>
* <th class="colFirst" style="text-align:left" >Calendar Type</th>
* <th class="colFirst" style="text-align:left" >Locale extension, see {@link java.util.Locale}</th>
* <th class="colLast" style="text-align:left" >Description</th>
* <tr>
* <th style="text-align:left" >Chronology ID</th>
* <th style="text-align:left" >Calendar Type</th>
* <th style="text-align:left" >Locale extension, see {@link java.util.Locale}</th>
* <th style="text-align:left" >Description</th>
* </tr>
* </thead>
* <tbody>
* <tr class="altColor">
* <tr>
* <td>Hijrah-umalqura</td>
* <td>islamic-umalqura</td>
* <td>ca-islamic-umalqura</td>
@ -147,36 +148,37 @@ import sun.util.logging.PlatformLogger;
* <p>
* The Hijrah property resource is a set of properties that describe the calendar.
* The syntax is defined by {@code java.util.Properties#load(Reader)}.
* <table cellpadding="2" summary="Configuration of Hijrah Calendar">
* <table class="striped">
* <caption style="display:none">Configuration of Hijrah Calendar</caption>
* <thead>
* <tr class="tableSubHeadingColor">
* <th class="colFirst" style="text-align:left" > Property Name</th>
* <th class="colFirst" style="text-align:left" > Property value</th>
* <th class="colLast" style="text-align:left" > Description </th>
* <tr>
* <th style="text-align:left" > Property Name</th>
* <th style="text-align:left" > Property value</th>
* <th style="text-align:left" > Description </th>
* </tr>
* </thead>
* <tbody>
* <tr class="altColor">
* <tr>
* <td>id</td>
* <td>Chronology Id, for example, "Hijrah-umalqura"</td>
* <td>The Id of the calendar in common usage</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td>type</td>
* <td>Calendar type, for example, "islamic-umalqura"</td>
* <td>LDML defines the calendar types</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td>version</td>
* <td>Version, for example: "1.8.0_1"</td>
* <td>The version of the Hijrah variant data</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td>iso-start</td>
* <td>ISO start date, formatted as {@code yyyy-MM-dd}, for example: "1900-04-30"</td>
* <td>The ISO date of the first day of the minimum Hijrah year.</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td>yyyy - a numeric 4 digit year, for example "1434"</td>
* <td>The value is a sequence of 12 month lengths,
* for example: "29 30 29 30 29 30 30 30 29 30 29 29"</td>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -70,25 +70,26 @@ import java.time.DateTimeException;
* A definition has therefore been created with two eras - 'Current era' (CE) for
* years on or after 0001-01-01 (ISO), and 'Before current era' (BCE) for years before that.
*
* <table summary="ISO years and eras" cellpadding="2" cellspacing="3" border="0" >
* <table class="striped">
* <caption style="display:none">ISO years and eras</caption>
* <thead>
* <tr class="tableSubHeadingColor">
* <th class="colFirst" style="text-align:left">year-of-era</th>
* <th class="colFirst" style="text-align:left">era</th>
* <th class="colLast" style="text-align:left">proleptic-year</th>
* <tr>
* <th style="text-align:left">year-of-era</th>
* <th style="text-align:left">era</th>
* <th style="text-align:left">proleptic-year</th>
* </tr>
* </thead>
* <tbody>
* <tr class="rowColor">
* <tr>
* <td>2</td><td>CE</td><td>2</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td>1</td><td>CE</td><td>1</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td>1</td><td>BCE</td><td>0</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td>2</td><td>BCE</td><td>-1</td>
* </tr>
* </tbody>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -71,26 +71,27 @@ import java.time.DateTimeException;
* All previous years, zero or earlier in the proleptic count or one and greater
* in the year-of-era count, are part of the 'Before Republic of China' era.
*
* <table summary="Minguo years and eras" cellpadding="2" cellspacing="3" border="0" >
* <table class="striped">
* <caption style="display:none">Minguo years and eras</caption>
* <thead>
* <tr class="tableSubHeadingColor">
* <th class="colFirst" style="text-align:left">year-of-era</th>
* <th class="colFirst" style="text-align:left">era</th>
* <th class="colFirst" style="text-align:left">proleptic-year</th>
* <th class="colLast" style="text-align:left">ISO proleptic-year</th>
* <tr>
* <th style="text-align:left">year-of-era</th>
* <th style="text-align:left">era</th>
* <th style="text-align:left">proleptic-year</th>
* <th style="text-align:left">ISO proleptic-year</th>
* </tr>
* </thead>
* <tbody>
* <tr class="rowColor">
* <tr>
* <td>2</td><td>ROC</td><td>2</td><td>1913</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td>1</td><td>ROC</td><td>1</td><td>1912</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td>1</td><td>BEFORE_ROC</td><td>0</td><td>1911</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td>2</td><td>BEFORE_ROC</td><td>-1</td><td>1910</td>
* </tr>
* </tbody>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -71,26 +71,27 @@ import java.time.DateTimeException;
* All previous years, zero or earlier in the proleptic count or one and greater
* in the year-of-era count, are part of the 'Before Buddhist' era.
*
* <table summary="Buddhist years and eras" cellpadding="2" cellspacing="3" border="0" >
* <table class="striped">
* <caption style="display:none">Buddhist years and eras</caption>
* <thead>
* <tr class="tableSubHeadingColor">
* <th class="colFirst" style="text-align:left">year-of-era</th>
* <th class="colFirst" style="text-align:left">era</th>
* <th class="colFirst" style="text-align:left">proleptic-year</th>
* <th class="colLast" style="text-align:left">ISO proleptic-year</th>
* <tr>
* <th style="text-align:left">year-of-era</th>
* <th style="text-align:left">era</th>
* <th style="text-align:left">proleptic-year</th>
* <th style="text-align:left">ISO proleptic-year</th>
* </tr>
* </thead>
* <tbody>
* <tr class="rowColor">
* <tr>
* <td>2</td><td>BE</td><td>2</td><td>-542</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td>1</td><td>BE</td><td>1</td><td>-543</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td>1</td><td>BEFORE_BE</td><td>0</td><td>-544</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td>2</td><td>BEFORE_BE</td><td>-1</td><td>-545</td>
* </tr>
* </tbody>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -150,105 +150,106 @@ import java.util.Set;
* implementation of {@code java.text.Format}.
*
* <h3 id="predefined">Predefined Formatters</h3>
* <table summary="Predefined Formatters" cellpadding="2" cellspacing="3" border="0" >
* <table class="striped">
* <caption>Predefined Formatters</caption>
* <thead>
* <tr class="tableSubHeadingColor">
* <th class="colFirst" style="text-align:left">Formatter</th>
* <th class="colFirst" style="text-align:left">Description</th>
* <th class="colLast" style="text-align:left">Example</th>
* <tr>
* <th style="text-align:left">Formatter</th>
* <th style="text-align:left">Description</th>
* <th style="text-align:left">Example</th>
* </tr>
* </thead>
* <tbody>
* <tr class="rowColor">
* <tr>
* <td>{@link #ofLocalizedDate ofLocalizedDate(dateStyle)} </td>
* <td> Formatter with date style from the locale </td>
* <td> '2011-12-03'</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td> {@link #ofLocalizedTime ofLocalizedTime(timeStyle)} </td>
* <td> Formatter with time style from the locale </td>
* <td> '10:15:30'</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td> {@link #ofLocalizedDateTime ofLocalizedDateTime(dateTimeStyle)} </td>
* <td> Formatter with a style for date and time from the locale</td>
* <td> '3 Jun 2008 11:05:30'</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td> {@link #ofLocalizedDateTime ofLocalizedDateTime(dateStyle,timeStyle)}
* </td>
* <td> Formatter with date and time styles from the locale </td>
* <td> '3 Jun 2008 11:05'</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td> {@link #BASIC_ISO_DATE}</td>
* <td>Basic ISO date </td> <td>'20111203'</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td> {@link #ISO_LOCAL_DATE}</td>
* <td> ISO Local Date </td>
* <td>'2011-12-03'</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td> {@link #ISO_OFFSET_DATE}</td>
* <td> ISO Date with offset </td>
* <td>'2011-12-03+01:00'</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td> {@link #ISO_DATE}</td>
* <td> ISO Date with or without offset </td>
* <td> '2011-12-03+01:00'; '2011-12-03'</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td> {@link #ISO_LOCAL_TIME}</td>
* <td> Time without offset </td>
* <td>'10:15:30'</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td> {@link #ISO_OFFSET_TIME}</td>
* <td> Time with offset </td>
* <td>'10:15:30+01:00'</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td> {@link #ISO_TIME}</td>
* <td> Time with or without offset </td>
* <td>'10:15:30+01:00'; '10:15:30'</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td> {@link #ISO_LOCAL_DATE_TIME}</td>
* <td> ISO Local Date and Time </td>
* <td>'2011-12-03T10:15:30'</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td> {@link #ISO_OFFSET_DATE_TIME}</td>
* <td> Date Time with Offset
* </td><td>2011-12-03T10:15:30+01:00'</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td> {@link #ISO_ZONED_DATE_TIME}</td>
* <td> Zoned Date Time </td>
* <td>'2011-12-03T10:15:30+01:00[Europe/Paris]'</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td> {@link #ISO_DATE_TIME}</td>
* <td> Date and time with ZoneId </td>
* <td>'2011-12-03T10:15:30+01:00[Europe/Paris]'</td>
* </tr>
* <tr class="altColor">
* <tr>
* <td> {@link #ISO_ORDINAL_DATE}</td>
* <td> Year and day of year </td>
* <td>'2012-337'</td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td> {@link #ISO_WEEK_DATE}</td>
* <td> Year and Week </td>
* <td>2012-W48-6'</td></tr>
* <tr class="altColor">
* <tr>
* <td> {@link #ISO_INSTANT}</td>
* <td> Date and Time of an Instant </td>
* <td>'2011-12-03T10:15:30Z' </td>
* </tr>
* <tr class="rowColor">
* <tr>
* <td> {@link #RFC_1123_DATE_TIME}</td>
* <td> RFC 1123 / RFC 822 </td>
* <td>'Tue, 3 Jun 2008 11:05:30 GMT'</td>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -136,15 +136,19 @@ import sun.util.locale.provider.LocaleResources;
* <p>
* For example:
*
* <table cellpadding="0" cellspacing="3" border="0" style="text-align: left; width: 50%;">
* <table class=striped style="text-align: left; width: 50%;">
* <caption>Examples of Week based Years</caption>
* <thead>
* <tr><th>Date</th><th>Day-of-week</th><th>Field values</th></tr>
* </thead>
* <tbody>
* <tr><th>2008-12-28</th><td>Sunday</td><td>Week 52 of week-based-year 2008</td></tr>
* <tr><th>2008-12-29</th><td>Monday</td><td>Week 1 of week-based-year 2009</td></tr>
* <tr><th>2008-12-31</th><td>Wednesday</td><td>Week 1 of week-based-year 2009</td></tr>
* <tr><th>2009-01-01</th><td>Thursday</td><td>Week 1 of week-based-year 2009</td></tr>
* <tr><th>2009-01-04</th><td>Sunday</td><td>Week 1 of week-based-year 2009</td></tr>
* <tr><th>2009-01-05</th><td>Monday</td><td>Week 2 of week-based-year 2009</td></tr>
* </tbody>
* </table>
*
* @implSpec

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -127,10 +127,13 @@ import sun.util.locale.provider.LocaleResources;
* The earliest period is referred to as week 0 if it has less than the minimal number of days
* and week 1 if it has at least the minimal number of days.
*
* <table cellpadding="0" cellspacing="3" border="0" style="text-align: left; width: 50%;">
* <table class=striped style="text-align: left">
* <caption>Examples of WeekFields</caption>
* <thead>
* <tr><th>Date</th><td>Day-of-week</td>
* <td>First day: Monday<br>Minimal days: 4</td><td>First day: Monday<br>Minimal days: 5</td></tr>
* </thead>
* <tbody>
* <tr><th>2008-12-31</th><td>Wednesday</td>
* <td>Week 5 of December 2008</td><td>Week 5 of December 2008</td></tr>
* <tr><th>2009-01-01</th><td>Thursday</td>
@ -139,6 +142,7 @@ import sun.util.locale.provider.LocaleResources;
* <td>Week 1 of January 2009</td><td>Week 0 of January 2009</td></tr>
* <tr><th>2009-01-05</th><td>Monday</td>
* <td>Week 2 of January 2009</td><td>Week 1 of January 2009</td></tr>
* </tbody>
* </table>
*
* <h3>Week of Year</h3>
@ -157,10 +161,13 @@ import sun.util.locale.provider.LocaleResources;
* The first and last weeks of a year may contain days from the
* previous calendar year or next calendar year respectively.
*
* <table cellpadding="0" cellspacing="3" border="0" style="text-align: left; width: 50%;">
* <table class=striped style="text-align: left;">
* <caption>Examples of WeekFields for week-based-year</caption>
* <thead>
* <tr><th>Date</th><td>Day-of-week</td>
* <td>First day: Monday<br>Minimal days: 4</td><td>First day: Monday<br>Minimal days: 5</td></tr>
* </thead>
* <tbody>
* <tr><th>2008-12-31</th><td>Wednesday</td>
* <td>Week 1 of 2009</td><td>Week 53 of 2008</td></tr>
* <tr><th>2009-01-01</th><td>Thursday</td>
@ -169,6 +176,7 @@ import sun.util.locale.provider.LocaleResources;
* <td>Week 1 of 2009</td><td>Week 53 of 2008</td></tr>
* <tr><th>2009-01-05</th><td>Monday</td>
* <td>Week 2 of 2009</td><td>Week 1 of 2009</td></tr>
* </tbody>
* </table>
*
* @implSpec

View File

@ -56,7 +56,7 @@ package java.util;
* <p>The twelve methods described above are summarized in the
* following table:
*
* <table BORDER CELLPADDING=3 CELLSPACING=1>
* <table class="plain">
* <caption>Summary of Deque methods</caption>
* <tr>
* <td></td>
@ -99,7 +99,7 @@ package java.util;
* inherited from the {@code Queue} interface are precisely equivalent to
* {@code Deque} methods as indicated in the following table:
*
* <table BORDER CELLPADDING=3 CELLSPACING=1>
* <table class="plain">
* <caption>Comparison of Queue and Deque methods</caption>
* <tr>
* <td style="text-align:center"> <b>{@code Queue} Method</b></td>
@ -137,7 +137,7 @@ package java.util;
* beginning of the deque. Stack methods are precisely equivalent to
* {@code Deque} methods as indicated in the table below:
*
* <table BORDER CELLPADDING=3 CELLSPACING=1>
* <table class="plain">
* <caption>Comparison of Stack and Deque methods</caption>
* <tr>
* <td style="text-align:center"> <b>Stack Method</b></td>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -290,12 +290,14 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <pre>
* out.toUpperCase(Locale.getDefault(Locale.Category.FORMAT)) </pre>
*
* <table cellpadding=5 summary="genConv">
*
* <table class="striped">
* <caption style="display:none">genConv</caption>
* <thead>
* <tr><th style="vertical-align:bottom"> Conversion
* <th style="vertical-align:bottom"> Argument Category
* <th style="vertical-align:bottom"> Description
*
* </thead>
* <tbody>
* <tr><td style="vertical-align:top"> {@code 'b'}, {@code 'B'}
* <td style="vertical-align:top"> general
* <td> If the argument <i>arg</i> is {@code null}, then the result is
@ -365,6 +367,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <td style="vertical-align:top"> line separator
* <td> The result is the platform-specific line separator
*
* </tbody>
* </table>
*
* <p> Any characters not explicitly defined as conversions are illegal and are
@ -381,8 +384,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
*
* <p> The following conversion characters are used for formatting times:
*
* <table cellpadding=5 summary="time">
*
* <table class="striped">
* <caption style="display:none">time</caption>
* <tbody>
* <tr><td style="vertical-align:top"> {@code 'H'}
* <td> Hour of the day for the 24-hour clock, formatted as two digits with
* a leading zero as necessary i.e. {@code 00 - 23}.
@ -446,11 +450,14 @@ import jdk.internal.math.FormattedFloatingDecimal;
* 1970 {@code 00:00:00} UTC, i.e. {@code Long.MIN_VALUE} to
* {@code Long.MAX_VALUE}.
*
* </tbody>
* </table>
*
* <p> The following conversion characters are used for formatting dates:
*
* <table cellpadding=5 summary="date">
* <table class="striped">
* <caption style="display:none">date</caption>
* <tbody>
*
* <tr><td style="vertical-align:top">{@code 'B'}
* <td> Locale-specific {@linkplain java.text.DateFormatSymbols#getMonths
@ -502,12 +509,15 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <tr><td style="vertical-align:top">{@code 'e'}
* <td> Day of month, formatted as two digits, i.e. {@code 1 - 31}.
*
* </tbody>
* </table>
*
* <p> The following conversion characters are used for formatting common
* date/time compositions.
*
* <table cellpadding=5 summary="composites">
* <table class="striped">
* <caption style="display:none">composites</caption>
* <tbody>
*
* <tr><td style="vertical-align:top">{@code 'R'}
* <td> Time formatted for the 24-hour clock as {@code "%tH:%tM"}
@ -531,6 +541,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <td> Date and time formatted as {@code "%ta %tb %td %tT %tZ %tY"},
* e.g. {@code "Sun Jul 20 16:17:00 EDT 1969"}.
*
* </tbody>
* </table>
*
* <p> Any characters not explicitly defined as date/time conversion suffixes
@ -541,14 +552,16 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <p> The following table summarizes the supported flags. <i>y</i> means the
* flag is supported for the indicated argument types.
*
* <table cellpadding=5 summary="genConv">
*
* <table class="striped">
* <caption style="display:none">genConv</caption>
* <thead>
* <tr><th style="vertical-align:bottom"> Flag <th style="vertical-align:bottom"> General
* <th style="vertical-align:bottom"> Character <th style="vertical-align:bottom"> Integral
* <th style="vertical-align:bottom"> Floating Point
* <th style="vertical-align:bottom"> Date/Time
* <th style="vertical-align:bottom"> Description
*
* </thead>
* <tbody>
* <tr><td> '-' <td style="text-align:center; vertical-align:top"> y
* <td style="text-align:center; vertical-align:top"> y
* <td style="text-align:center; vertical-align:top"> y
@ -599,6 +612,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <td style="text-align:center"> -
* <td> The result will enclose negative numbers in parentheses
*
* </tbody>
* </table>
*
* <p> <sup>1</sup> Depends on the definition of {@link Formattable}.
@ -705,7 +719,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
*
* <p> The following general conversions may be applied to any argument type:
*
* <table cellpadding=5 summary="dgConv">
* <table class="striped">
* <caption style="display:none">dgConv</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code 'b'}
* <td style="vertical-align:top"> <code>'&#92;u0062'</code>
@ -756,11 +772,14 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <td style="vertical-align:top"> <code>'&#92;u0053'</code>
* <td> The upper-case variant of {@code 's'}.
*
* </tbody>
* </table>
*
* <p> The following <a id="dFlags">flags</a> apply to general conversions:
*
* <table cellpadding=5 summary="dFlags">
* <table class="striped">
* <caption style="display:none">dFlags</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code '-'}
* <td style="vertical-align:top"> <code>'&#92;u002d'</code>
@ -775,6 +794,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <td> Requires the output use an alternate form. The definition of the
* form is specified by the conversion.
*
* </tbody>
* </table>
*
* <p> The <a id="genWidth">width</a> is the minimum number of characters to
@ -801,7 +821,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
* {@code false} then an {@link IllegalFormatCodePointException} will be
* thrown.
*
* <table cellpadding=5 summary="charConv">
* <table class="striped">
* <caption style="display:none">charConv</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code 'c'}
* <td style="vertical-align:top"> <code>'&#92;u0063'</code>
@ -817,6 +839,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <td style="vertical-align:top"> <code>'&#92;u0043'</code>
* <td> The upper-case variant of {@code 'c'}.
*
* </tbody>
* </table>
*
* <p> The {@code '-'} flag defined for <a href="#dFlags">General
@ -902,7 +925,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
* {@code short}, {@link Short}, {@code int} and {@link Integer},
* {@code long}, and {@link Long}.
*
* <table cellpadding=5 summary="IntConv">
* <table class="striped">
* <caption style="display:none">IntConv</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code 'd'}
* <td style="vertical-align:top"> <code>'&#92;u0064'</code>
@ -968,6 +993,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* all hexadecimal digits {@code 'a'} - {@code 'f'}
* (<code>'&#92;u0061'</code> - <code>'&#92;u0066'</code>).
*
* </tbody>
* </table>
*
* <p> If the conversion is {@code 'o'}, {@code 'x'}, or {@code 'X'} and
@ -982,7 +1008,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <p> The following <a id="intFlags">flags</a> apply to numeric integral
* conversions:
*
* <table cellpadding=5 summary="intFlags">
* <table class="striped">
* <caption style="display:none">intFlags</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code '+'}
* <td style="vertical-align:top"> <code>'&#92;u002b'</code>
@ -1025,6 +1053,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* (<code>'&#92;u0028'</code>) and append a {@code ')'}
* (<code>'&#92;u0029'</code>) to negative values.
*
* </tbody>
* </table>
*
* <p> If no <a id="intdFlags">flags</a> are given the default formatting is
@ -1060,7 +1089,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <p> The following conversions may be applied to {@link
* java.math.BigInteger}.
*
* <table cellpadding=5 summary="BIntConv">
* <table class="striped">
* <caption style="display:none">bIntConv</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code 'd'}
* <td style="vertical-align:top"> <code>'&#92;u0064'</code>
@ -1125,6 +1156,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* all hexadecimal digits {@code 'a'} - {@code 'f'}
* (<code>'&#92;u0061'</code> - <code>'&#92;u0066'</code>).
*
* </tbody>
* </table>
*
* <p> If the conversion is {@code 'o'}, {@code 'x'}, or {@code 'X'} and
@ -1154,7 +1186,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <p> The following conversions may be applied to {@code float}, {@link
* Float}, {@code double} and {@link Double}.
*
* <table cellpadding=5 summary="floatConv">
* <table class="striped">
* <caption style="display:none">floatConv</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code 'e'}
* <td style="vertical-align:top"> <code>'&#92;u0065'</code>
@ -1331,6 +1365,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* (<code>'&#92;u0070'</code> and all hexadecimal digits {@code 'a'} -
* {@code 'f'} (<code>'&#92;u0061'</code> - <code>'&#92;u0066'</code>).
*
* </tbody>
* </table>
*
* <p> All <a href="#intFlags">flags</a> defined for Byte, Short, Integer, and
@ -1388,7 +1423,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <p> The following conversions may be applied {@link java.math.BigDecimal
* BigDecimal}.
*
* <table cellpadding=5 summary="floatConv">
* <table class="striped">
* <caption style="display:none">floatConv</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code 'e'}
* <td style="vertical-align:top"> <code>'&#92;u0065'</code>
@ -1492,6 +1529,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* For a canonical representation of the value, use {@link
* BigDecimal#toString()}.
*
* </tbody>
* </table>
*
* <p> All <a href="#intFlags">flags</a> defined for Byte, Short, Integer, and
@ -1512,7 +1550,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <p> This conversion may be applied to {@code long}, {@link Long}, {@link
* Calendar}, {@link Date} and {@link TemporalAccessor TemporalAccessor}
*
* <table cellpadding=5 summary="DTConv">
* <table class="striped">
* <caption style="display:none">DTConv</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code 't'}
* <td style="vertical-align:top"> <code>'&#92;u0074'</code>
@ -1521,6 +1561,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <td style="vertical-align:top"> <code>'&#92;u0054'</code>
* <td> The upper-case variant of {@code 't'}.
*
* </tbody>
* </table>
*
* <p> The following date and time conversion character suffixes are defined
@ -1532,7 +1573,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
*
* <p> The following conversion characters are used for formatting times:
*
* <table cellpadding=5 summary="time">
* <table class="striped">
* <caption style="display:none">time</caption>
* <tbody>
*
* <tr><td style="vertical-align:top"> {@code 'H'}
* <td style="vertical-align:top"> <code>'&#92;u0048'</code>
@ -1620,11 +1663,14 @@ import jdk.internal.math.FormattedFloatingDecimal;
* {@code Long.MAX_VALUE}. The precision of this value is limited by
* the resolution of the underlying operating system or hardware.
*
* </tbody>
* </table>
*
* <p> The following conversion characters are used for formatting dates:
*
* <table cellpadding=5 summary="date">
* <table class="striped">
* <caption style="display:none">date</caption>
* <tbody>
*
* <tr><td style="vertical-align:top">{@code 'B'}
* <td style="vertical-align:top"> <code>'&#92;u0042'</code>
@ -1692,12 +1738,15 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <td> Day of month, formatted as two digits, i.e. {@code 1 - 31} where
* "{@code 1}" is the first day of the month.
*
* </tbody>
* </table>
*
* <p> The following conversion characters are used for formatting common
* date/time compositions.
*
* <table cellpadding=5 summary="composites">
* <table class="striped">
* <caption style="display:none">composites</caption>
* <tbody>
*
* <tr><td style="vertical-align:top">{@code 'R'}
* <td style="vertical-align:top"> <code>'&#92;u0052'</code>
@ -1727,6 +1776,7 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <td> Date and time formatted as {@code "%ta %tb %td %tT %tZ %tY"},
* e.g. {@code "Sun Jul 20 16:17:00 EDT 1969"}.
*
* </tbody>
* </table>
*
* <p> The {@code '-'} flag defined for <a href="#dFlags">General
@ -1748,7 +1798,9 @@ import jdk.internal.math.FormattedFloatingDecimal;
*
* <p> The conversion does not correspond to any argument.
*
* <table cellpadding=5 summary="DTConv">
* <table class="striped">
* <caption style="display:none">DTConv</caption>
* <tbody>
*
* <tr><td style="vertical-align:top">{@code '%'}
* <td> The result is a literal {@code '%'} (<code>'&#92;u0025'</code>)
@ -1767,18 +1819,22 @@ import jdk.internal.math.FormattedFloatingDecimal;
* <p> The precision is not applicable. If the precision is specified an
* {@link IllegalFormatPrecisionException} will be thrown.
*
* </tbody>
* </table>
*
* <h4><a id="dls">Line Separator</a></h4>
*
* <p> The conversion does not correspond to any argument.
*
* <table cellpadding=5 summary="DTConv">
* <table class="striped">
* <caption style="display:none">DTConv</caption>
* <tbody>
*
* <tr><td style="vertical-align:top">{@code 'n'}
* <td> the platform-specific line separator as returned by {@link
* System#lineSeparator()}.
*
* </tbody>
* </table>
*
* <p> Flags, width, and precision are not applicable. If any are provided an

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -159,88 +159,89 @@ import sun.util.calendar.ZoneInfo;
* undefined. <code>GregorianCalendar</code> uses the following
* default value for each calendar field if its value is undefined.
*
* <table cellpadding="0" cellspacing="3" border="0"
* summary="GregorianCalendar default field values"
* style="text-align: left; width: 66%;">
* <table class="striped" style="text-align: left; width: 66%;">
* <caption style="display:none">GregorianCalendar default field values</caption>
* <thead>
* <tr>
* <th>
* Field
* </th>
* <th>
Default Value
* </th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <th style="vertical-align: top; background-color: rgb(204, 204, 255);
* text-align: center;">Field<br>
* </th>
* <th style="vertical-align: top; background-color: rgb(204, 204, 255);
* text-align: center;">Default Value<br>
* </th>
* </tr>
* <tr>
* <td style="vertical-align: middle;">
* <code>ERA<br></code>
* <td>
* <code>ERA</code>
* </td>
* <td style="vertical-align: middle;">
* <code>AD<br></code>
* <td>
* <code>AD</code>
* </td>
* </tr>
* <tr>
* <td style="vertical-align: middle; background-color: rgb(238, 238, 255);">
* <code>YEAR<br></code>
* <td>
* <code>YEAR</code>
* </td>
* <td style="vertical-align: middle; background-color: rgb(238, 238, 255);">
* <code>1970<br></code>
* <td>
* <code>1970</code>
* </td>
* </tr>
* <tr>
* <td style="vertical-align: middle;">
* <code>MONTH<br></code>
* <td>
* <code>MONTH</code>
* </td>
* <td style="vertical-align: middle;">
* <code>JANUARY<br></code>
* <td>
* <code>JANUARY</code>
* </td>
* </tr>
* <tr>
* <td style="vertical-align: top; background-color: rgb(238, 238, 255);">
* <code>DAY_OF_MONTH<br></code>
* <td>
* <code>DAY_OF_MONTH</code>
* </td>
* <td style="vertical-align: top; background-color: rgb(238, 238, 255);">
* <code>1<br></code>
* <td>
* <code>1</code>
* </td>
* </tr>
* <tr>
* <td style="vertical-align: middle;">
* <code>DAY_OF_WEEK<br></code>
* <td>
* <code>DAY_OF_WEEK</code>
* </td>
* <td style="vertical-align: middle;">
* <code>the first day of week<br></code>
* <td>
* <code>the first day of week</code>
* </td>
* </tr>
* <tr>
* <td style="vertical-align: top; background-color: rgb(238, 238, 255);">
* <code>WEEK_OF_MONTH<br></code>
* <td>
* <code>WEEK_OF_MONTH</code>
* </td>
* <td style="vertical-align: top; background-color: rgb(238, 238, 255);">
* <code>0<br></code>
* <td>
* <code>0</code>
* </td>
* </tr>
* <tr>
* <td style="vertical-align: top;">
* <code>DAY_OF_WEEK_IN_MONTH<br></code>
* <td>
* <code>DAY_OF_WEEK_IN_MONTH</code>
* </td>
* <td style="vertical-align: top;">
* <code>1<br></code>
* <td>
* <code>1</code>
* </td>
* </tr>
* <tr>
* <td style="vertical-align: middle; background-color: rgb(238, 238, 255);">
* <code>AM_PM<br></code>
* <td>
* <code>AM_PM</code>
* </td>
* <td style="vertical-align: middle; background-color: rgb(238, 238, 255);">
* <code>AM<br></code>
* <td>
* <code>AM</code>
* </td>
* </tr>
* <tr>
* <td style="vertical-align: middle;">
* <code>HOUR, HOUR_OF_DAY, MINUTE, SECOND, MILLISECOND<br></code>
* <td>
* <code>HOUR, HOUR_OF_DAY, MINUTE, SECOND, MILLISECOND</code>
* </td>
* <td style="vertical-align: middle;">
* <code>0<br></code>
* <td>
* <code>0</code>
* </td>
* </tr>
* </tbody>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -1587,44 +1587,50 @@ public final class Locale implements Cloneable, Serializable {
*
* <p>Grandfathered tags with canonical replacements are as follows:
*
* <table summary="Grandfathered tags with canonical replacements">
* <table class="striped">
* <caption style="display:none">Grandfathered tags with canonical replacements</caption>
* <thead style="text-align:center">
* <tr><th style="padding: 0 2px">grandfathered tag</th><th style="padding: 0 2px">modern replacement</th></tr>
* </thead>
* <tbody style="text-align:center">
* <tr><th>grandfathered tag</th><th>&nbsp;</th><th>modern replacement</th></tr>
* <tr><td>art-lojban</td><td>&nbsp;</td><td>jbo</td></tr>
* <tr><td>i-ami</td><td>&nbsp;</td><td>ami</td></tr>
* <tr><td>i-bnn</td><td>&nbsp;</td><td>bnn</td></tr>
* <tr><td>i-hak</td><td>&nbsp;</td><td>hak</td></tr>
* <tr><td>i-klingon</td><td>&nbsp;</td><td>tlh</td></tr>
* <tr><td>i-lux</td><td>&nbsp;</td><td>lb</td></tr>
* <tr><td>i-navajo</td><td>&nbsp;</td><td>nv</td></tr>
* <tr><td>i-pwn</td><td>&nbsp;</td><td>pwn</td></tr>
* <tr><td>i-tao</td><td>&nbsp;</td><td>tao</td></tr>
* <tr><td>i-tay</td><td>&nbsp;</td><td>tay</td></tr>
* <tr><td>i-tsu</td><td>&nbsp;</td><td>tsu</td></tr>
* <tr><td>no-bok</td><td>&nbsp;</td><td>nb</td></tr>
* <tr><td>no-nyn</td><td>&nbsp;</td><td>nn</td></tr>
* <tr><td>sgn-BE-FR</td><td>&nbsp;</td><td>sfb</td></tr>
* <tr><td>sgn-BE-NL</td><td>&nbsp;</td><td>vgt</td></tr>
* <tr><td>sgn-CH-DE</td><td>&nbsp;</td><td>sgg</td></tr>
* <tr><td>zh-guoyu</td><td>&nbsp;</td><td>cmn</td></tr>
* <tr><td>zh-hakka</td><td>&nbsp;</td><td>hak</td></tr>
* <tr><td>zh-min-nan</td><td>&nbsp;</td><td>nan</td></tr>
* <tr><td>zh-xiang</td><td>&nbsp;</td><td>hsn</td></tr>
* <tr><td>art-lojban</td><td>jbo</td></tr>
* <tr><td>i-ami</td><td>ami</td></tr>
* <tr><td>i-bnn</td><td>bnn</td></tr>
* <tr><td>i-hak</td><td>hak</td></tr>
* <tr><td>i-klingon</td><td>tlh</td></tr>
* <tr><td>i-lux</td><td>lb</td></tr>
* <tr><td>i-navajo</td><td>nv</td></tr>
* <tr><td>i-pwn</td><td>pwn</td></tr>
* <tr><td>i-tao</td><td>tao</td></tr>
* <tr><td>i-tay</td><td>tay</td></tr>
* <tr><td>i-tsu</td><td>tsu</td></tr>
* <tr><td>no-bok</td><td>nb</td></tr>
* <tr><td>no-nyn</td><td>nn</td></tr>
* <tr><td>sgn-BE-FR</td><td>sfb</td></tr>
* <tr><td>sgn-BE-NL</td><td>vgt</td></tr>
* <tr><td>sgn-CH-DE</td><td>sgg</td></tr>
* <tr><td>zh-guoyu</td><td>cmn</td></tr>
* <tr><td>zh-hakka</td><td>hak</td></tr>
* <tr><td>zh-min-nan</td><td>nan</td></tr>
* <tr><td>zh-xiang</td><td>hsn</td></tr>
* </tbody>
* </table>
*
* <p>Grandfathered tags with no modern replacement will be
* converted as follows:
*
* <table summary="Grandfathered tags with no modern replacement">
* <table class="striped">
* <caption style="display:none">Grandfathered tags with no modern replacement</caption>
* <thead style="text-align:center">
* <tr><th style="padding: 0 2px">grandfathered tag</th><th style="padding: 0 2px">converts to</th></tr>
* </thead>
* <tbody style="text-align:center">
* <tr><th>grandfathered tag</th><th>&nbsp;</th><th>converts to</th></tr>
* <tr><td>cel-gaulish</td><td>&nbsp;</td><td>xtg-x-cel-gaulish</td></tr>
* <tr><td>en-GB-oed</td><td>&nbsp;</td><td>en-GB-x-oed</td></tr>
* <tr><td>i-default</td><td>&nbsp;</td><td>en-x-i-default</td></tr>
* <tr><td>i-enochian</td><td>&nbsp;</td><td>und-x-i-enochian</td></tr>
* <tr><td>i-mingo</td><td>&nbsp;</td><td>see-x-i-mingo</td></tr>
* <tr><td>zh-min</td><td>&nbsp;</td><td>nan-x-zh-min</td></tr>
* <tr><td>cel-gaulish</td><td>xtg-x-cel-gaulish</td></tr>
* <tr><td>en-GB-oed</td><td>en-GB-x-oed</td></tr>
* <tr><td>i-default</td><td>en-x-i-default</td></tr>
* <tr><td>i-enochian</td><td>und-x-i-enochian</td></tr>
* <tr><td>i-mingo</td><td>see-x-i-mingo</td></tr>
* <tr><td>zh-min</td><td>nan-x-zh-min</td></tr>
* </tbody>
* </table>
*
@ -2767,12 +2773,16 @@ public final class Locale implements Cloneable, Serializable {
*
* The filtering method will behave as follows:
*
* <table cellpadding=2 summary="Filtering method behavior">
* <table class="striped">
* <caption>Filtering method behavior</caption>
* <thead>
* <tr>
* <th>Filtering Mode</th>
* <th>Language Priority List: {@code "de-DE"}</th>
* <th>Language Priority List: {@code "de-*-DE"}</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td style="vertical-align:top">
* {@link FilteringMode#AUTOSELECT_FILTERING AUTOSELECT_FILTERING}
@ -2832,6 +2842,7 @@ public final class Locale implements Cloneable, Serializable {
* not a valid basic language range.
* </td>
* </tr>
* </tbody>
* </table>
*
* @see #filter(List, Collection, FilteringMode)

View File

@ -47,7 +47,7 @@ package java.util;
* implementations; in most implementations, insert operations cannot
* fail.
*
* <table BORDER CELLPADDING=3 CELLSPACING=1>
* <table class="plain">
* <caption>Summary of Queue methods</caption>
* <tr>
* <td></td>

Some files were not shown because too many files have changed in this diff Show More