mirror of
https://github.com/openjdk/jdk.git
synced 2026-03-06 06:00:26 +00:00
Merge
This commit is contained in:
commit
d5fb09f608
@ -414,3 +414,4 @@ e78da9db6299b3fcba49300d52e2359e82fdd218 jdk-9+168
|
||||
177436a54ca13730ffc725a6e5dbfcd9486f3da3 jdk-9+169
|
||||
ef9954f6896bb0b95ac62bf769f68b59a7a56ccd jdk-9+170
|
||||
29bbedd4cce8e14742bdb22118c057b877c02f0f jdk-9+171
|
||||
0ff9ad7d067cd4fa14450cf208bf019175a0aaba jdk-9+172
|
||||
|
||||
203
jdk/make/src/classes/build/tools/jigsaw/ListPackages.java
Normal file
203
jdk/make/src/classes/build/tools/jigsaw/ListPackages.java
Normal file
@ -0,0 +1,203 @@
|
||||
/*
|
||||
* 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
|
||||
* 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.jigsaw;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
import java.io.PrintStream;
|
||||
import java.io.UncheckedIOException;
|
||||
import java.lang.module.ModuleDescriptor;
|
||||
import java.lang.module.ModuleFinder;
|
||||
import java.lang.module.ModuleReference;
|
||||
import java.net.URI;
|
||||
import java.nio.file.FileSystem;
|
||||
import java.nio.file.FileSystems;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.nio.file.attribute.BasicFileAttributes;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.jar.JarEntry;
|
||||
import java.util.jar.JarFile;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* Run this tool to generate the JDK internal APIs in the previous releases
|
||||
* including platform-specific internal APIs.
|
||||
*/
|
||||
public class ListPackages {
|
||||
// Filter non-interesting JAR files
|
||||
private final static List<String> excludes = Arrays.asList(
|
||||
"deploy.jar",
|
||||
"javaws.jar",
|
||||
"plugin.jar",
|
||||
"cldrdata.jar",
|
||||
"localedata.jar"
|
||||
);
|
||||
private static void usage() {
|
||||
System.out.println("ListPackages [-o <outfile>] [-jdkinternals] <javaHome> [<javaHome>]*");
|
||||
}
|
||||
|
||||
private static final Set<String> EXPORTED_PACKAGES = new HashSet<>();
|
||||
|
||||
public static void main(String... args) throws IOException {
|
||||
List<Path> paths = new ArrayList<>();
|
||||
Path outFile = null;
|
||||
boolean jdkinternals = false;
|
||||
int i=0;
|
||||
while (i < args.length) {
|
||||
String arg = args[i++];
|
||||
if (arg.equals("-o")) {
|
||||
outFile = Paths.get(args[i++]);
|
||||
} else if (arg.equals("-jdkinternals")) {
|
||||
jdkinternals = true;
|
||||
} else {
|
||||
Path p = Paths.get(arg);
|
||||
if (Files.notExists(p))
|
||||
throw new IllegalArgumentException(p + " not exist");
|
||||
paths.add(p);
|
||||
}
|
||||
}
|
||||
if (paths.isEmpty()) {
|
||||
usage();
|
||||
System.exit(1);
|
||||
}
|
||||
|
||||
// Get the exported APIs from the current JDK releases
|
||||
Path javaHome = Paths.get(System.getProperty("java.home"));
|
||||
ModuleFinder.ofSystem().findAll()
|
||||
.stream()
|
||||
.map(ModuleReference::descriptor)
|
||||
.filter(md -> !md.name().equals("jdk.unsupported"))
|
||||
.flatMap(md -> md.exports().stream())
|
||||
.filter(exp -> !exp.isQualified())
|
||||
.map(ModuleDescriptor.Exports::source)
|
||||
.forEach(EXPORTED_PACKAGES::add);
|
||||
|
||||
ListPackages listPackages = new ListPackages(paths);
|
||||
Stream<String> pkgs = listPackages.packages().stream();
|
||||
if (jdkinternals) {
|
||||
pkgs = pkgs.filter(pn -> !EXPORTED_PACKAGES.contains(pn));
|
||||
}
|
||||
if (outFile != null) {
|
||||
try (OutputStream out = Files.newOutputStream(outFile);
|
||||
PrintStream pw = new PrintStream(out)) {
|
||||
write(pw, pkgs);
|
||||
}
|
||||
} else {
|
||||
write(System.out, pkgs);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private static void write(PrintStream pw, Stream<String> packages) {
|
||||
pw.println("# This file is auto-generated by ListPackages tool on " +
|
||||
LocalDateTime.now().toString());
|
||||
packages.sorted().forEach(pw::println);
|
||||
}
|
||||
|
||||
private final Set<String> packages = new HashSet<>();
|
||||
ListPackages(List<Path> dirs) throws IOException {
|
||||
for (Path p : dirs) {
|
||||
packages.addAll(list(p));
|
||||
}
|
||||
}
|
||||
|
||||
Set<String> packages() {
|
||||
return packages;
|
||||
}
|
||||
|
||||
private Set<String> list(Path javaHome) throws IOException {
|
||||
Path jrt = javaHome.resolve("lib").resolve("modules");
|
||||
Path jre = javaHome.resolve("jre");
|
||||
|
||||
if (Files.exists(jrt)) {
|
||||
return listModularRuntime(javaHome);
|
||||
} else if (Files.exists(jre.resolve("lib").resolve("rt.jar"))) {
|
||||
return listLegacyRuntime(javaHome);
|
||||
}
|
||||
throw new IllegalArgumentException("invalid " + javaHome);
|
||||
}
|
||||
|
||||
private Set<String> listModularRuntime(Path javaHome) throws IOException {
|
||||
Map<String, String> env = new HashMap<>();
|
||||
env.put("java.home", javaHome.toString());
|
||||
FileSystem fs = FileSystems.newFileSystem(URI.create("jrt:/"), env);
|
||||
Path root = fs.getPath("packages");
|
||||
return Files.walk(root, 1)
|
||||
.map(Path::getFileName)
|
||||
.map(Path::toString)
|
||||
.collect(Collectors.toSet());
|
||||
}
|
||||
|
||||
private Set<String> listLegacyRuntime(Path javaHome) throws IOException {
|
||||
List<Path> dirs = new ArrayList<>();
|
||||
Path jre = javaHome.resolve("jre");
|
||||
Path lib = javaHome.resolve("lib");
|
||||
|
||||
dirs.add(jre.resolve("lib"));
|
||||
dirs.add(jre.resolve("lib").resolve("ext"));
|
||||
dirs.add(lib.resolve("tools.jar"));
|
||||
dirs.add(lib.resolve("jconsole.jar"));
|
||||
Set<String> packages = new HashSet<>();
|
||||
for (Path d : dirs) {
|
||||
Files.find(d, 1, (Path p, BasicFileAttributes attr)
|
||||
-> p.getFileName().toString().endsWith(".jar") &&
|
||||
!excludes.contains(p.getFileName().toString()))
|
||||
.map(ListPackages::walkJarFile)
|
||||
.forEach(packages::addAll);
|
||||
}
|
||||
return packages;
|
||||
}
|
||||
|
||||
static Set<String> walkJarFile(Path jarfile) {
|
||||
try (JarFile jf = new JarFile(jarfile.toFile())) {
|
||||
return jf.stream()
|
||||
.map(JarEntry::getName)
|
||||
.filter(n -> n.endsWith(".class"))
|
||||
.map(ListPackages::toPackage)
|
||||
.collect(Collectors.toSet());
|
||||
} catch (IOException e) {
|
||||
throw new UncheckedIOException(e);
|
||||
}
|
||||
}
|
||||
|
||||
static String toPackage(String name) {
|
||||
int i = name.lastIndexOf('/');
|
||||
if (i < 0) {
|
||||
System.err.format("Warning: unnamed package %s%n", name);
|
||||
}
|
||||
return i >= 0 ? name.substring(0, i).replace("/", ".") : "";
|
||||
}
|
||||
}
|
||||
@ -403,6 +403,7 @@ import java.lang.module.ModuleFinder;
|
||||
*
|
||||
* @author Marianne Mueller
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public final class RuntimePermission extends BasicPermission {
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 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,13 +44,13 @@
|
||||
* </li>
|
||||
* </ul>
|
||||
*
|
||||
* <h1><a name="jvm_mods"></a>Summary of relevant Java Virtual Machine changes</h1>
|
||||
* <h1><a id="jvm_mods"></a>Summary of relevant Java Virtual Machine changes</h1>
|
||||
* The following low-level information summarizes relevant parts of the
|
||||
* Java Virtual Machine specification. For full details, please see the
|
||||
* current version of that specification.
|
||||
*
|
||||
* Each occurrence of an {@code invokedynamic} instruction is called a <em>dynamic call site</em>.
|
||||
* <h2><a name="indyinsn"></a>{@code invokedynamic} instructions</h2>
|
||||
* <h2><a id="indyinsn"></a>{@code invokedynamic} instructions</h2>
|
||||
* A dynamic call site is originally in an unlinked state. In this state, there is
|
||||
* no target method for the call site to invoke.
|
||||
* <p>
|
||||
@ -77,7 +77,8 @@
|
||||
* <p>
|
||||
* The bootstrap method is invoked on at least three values:
|
||||
* <ul>
|
||||
* <li>a {@code MethodHandles.Lookup}, a lookup object on the <em>caller class</em> in which dynamic call site occurs </li>
|
||||
* <li>a {@code MethodHandles.Lookup}, a lookup object on the <em>caller class</em>
|
||||
* in which dynamic call site occurs </li>
|
||||
* <li>a {@code String}, the method name mentioned in the call site </li>
|
||||
* <li>a {@code MethodType}, the resolved type descriptor of the call </li>
|
||||
* <li>optionally, between 1 and 251 additional static arguments taken from the constant pool </li>
|
||||
@ -165,17 +166,27 @@
|
||||
* Given these rules, here are examples of legal bootstrap method declarations,
|
||||
* given various numbers {@code N} of extra arguments.
|
||||
* The first rows (marked {@code *}) will work for any number of extra arguments.
|
||||
* <table border=1 cellpadding=5 summary="Static argument types">
|
||||
* <tr><th>N</th><th>sample bootstrap method</th></tr>
|
||||
* <tr><td>*</td><td><code>CallSite bootstrap(Lookup caller, String name, MethodType type, Object... args)</code></td></tr>
|
||||
* <tr><td>*</td><td><code>CallSite bootstrap(Object... args)</code></td></tr>
|
||||
* <tr><td>*</td><td><code>CallSite bootstrap(Object caller, Object... nameAndTypeWithArgs)</code></td></tr>
|
||||
* <tr><td>0</td><td><code>CallSite bootstrap(Lookup caller, String name, MethodType type)</code></td></tr>
|
||||
* <tr><td>0</td><td><code>CallSite bootstrap(Lookup caller, Object... nameAndType)</code></td></tr>
|
||||
* <tr><td>1</td><td><code>CallSite bootstrap(Lookup caller, String name, MethodType type, Object arg)</code></td></tr>
|
||||
* <tr><td>2</td><td><code>CallSite bootstrap(Lookup caller, String name, MethodType type, Object... args)</code></td></tr>
|
||||
* <tr><td>2</td><td><code>CallSite bootstrap(Lookup caller, String name, MethodType type, String... args)</code></td></tr>
|
||||
* <tr><td>2</td><td><code>CallSite bootstrap(Lookup caller, String name, MethodType type, String x, int y)</code></td></tr>
|
||||
* <table class="plain">
|
||||
* <caption style="display:none">Static argument types</caption>
|
||||
* <tr><th>N</th><th>Sample bootstrap method</th></tr>
|
||||
* <tr><td>*</td>
|
||||
* <td><code>CallSite bootstrap(Lookup caller, String name, MethodType type, Object... args)</code></td></tr>
|
||||
* <tr><td>*</td><td>
|
||||
* <code>CallSite bootstrap(Object... args)</code></td></tr>
|
||||
* <tr><td>*</td><td>
|
||||
* <code>CallSite bootstrap(Object caller, Object... nameAndTypeWithArgs)</code></td></tr>
|
||||
* <tr><td>0</td><td>
|
||||
* <code>CallSite bootstrap(Lookup caller, String name, MethodType type)</code></td></tr>
|
||||
* <tr><td>0</td><td>
|
||||
* <code>CallSite bootstrap(Lookup caller, Object... nameAndType)</code></td></tr>
|
||||
* <tr><td>1</td><td>
|
||||
* <code>CallSite bootstrap(Lookup caller, String name, MethodType type, Object arg)</code></td></tr>
|
||||
* <tr><td>2</td><td>
|
||||
* <code>CallSite bootstrap(Lookup caller, String name, MethodType type, Object... args)</code></td></tr>
|
||||
* <tr><td>2</td><td>
|
||||
* <code>CallSite bootstrap(Lookup caller, String name, MethodType type, String... args)</code></td></tr>
|
||||
* <tr><td>2</td>
|
||||
* <td><code>CallSite bootstrap(Lookup caller, String name, MethodType type, String x, int y)</code></td></tr>
|
||||
* </table>
|
||||
* The last example assumes that the extra arguments are of type
|
||||
* {@code CONSTANT_String} and {@code CONSTANT_Integer}, respectively.
|
||||
|
||||
@ -27,7 +27,7 @@
|
||||
* Classes to support module descriptors and creating configurations of modules
|
||||
* by means of resolution and service binding.
|
||||
*
|
||||
* <h2><a name="resolution">Resolution</a></h2>
|
||||
* <h2><a id="resolution">Resolution</a></h2>
|
||||
*
|
||||
* <p> Resolution is the process of computing the transitive closure of a set
|
||||
* of root modules over a set of observable modules by resolving the
|
||||
@ -97,7 +97,7 @@
|
||||
* resolved so that it reads all other modules in the resulting configuration and
|
||||
* all modules in parent configurations. </p>
|
||||
*
|
||||
* <h2><a name="servicebinding">Service binding</a></h2>
|
||||
* <h2><a id="servicebinding">Service binding</a></h2>
|
||||
*
|
||||
* <p> Service binding is the process of augmenting a graph of resolved modules
|
||||
* from the set of observable modules induced by the service-use dependence
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2006, 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
|
||||
@ -57,7 +57,7 @@
|
||||
* by the {@code throw} statement. Subclasses of {@code Throwable}
|
||||
* represent errors and exceptions.
|
||||
*
|
||||
* <a name="charenc"></a>
|
||||
* <a id="charenc"></a>
|
||||
* <h3>Character Encodings</h3>
|
||||
*
|
||||
* The specification of the {@link java.nio.charset.Charset
|
||||
|
||||
@ -36,6 +36,7 @@ import jdk.internal.HotSpotIntrinsicCandidate;
|
||||
* conversion would occur.
|
||||
*
|
||||
* @author Nakul Saraiya
|
||||
* @since 1.1
|
||||
*/
|
||||
public final
|
||||
class Array {
|
||||
|
||||
@ -59,6 +59,7 @@ import java.util.StringJoiner;
|
||||
*
|
||||
* @author Kenneth Russell
|
||||
* @author Nakul Saraiya
|
||||
* @since 1.1
|
||||
*/
|
||||
public final class Constructor<T> extends Executable {
|
||||
private Class<T> clazz;
|
||||
|
||||
@ -60,6 +60,7 @@ import sun.reflect.annotation.TypeAnnotationParser;
|
||||
*
|
||||
* @author Kenneth Russell
|
||||
* @author Nakul Saraiya
|
||||
* @since 1.1
|
||||
*/
|
||||
public final
|
||||
class Field extends AccessibleObject implements Member {
|
||||
|
||||
@ -38,6 +38,7 @@ package java.lang.reflect;
|
||||
*
|
||||
* @see Method
|
||||
* @see Constructor
|
||||
* @since 1.1
|
||||
*/
|
||||
public class InvocationTargetException extends ReflectiveOperationException {
|
||||
/**
|
||||
|
||||
@ -35,6 +35,7 @@ package java.lang.reflect;
|
||||
* @see Constructor
|
||||
*
|
||||
* @author Nakul Saraiya
|
||||
* @since 1.1
|
||||
*/
|
||||
public
|
||||
interface Member {
|
||||
|
||||
@ -63,6 +63,7 @@ import java.util.StringJoiner;
|
||||
*
|
||||
* @author Kenneth Russell
|
||||
* @author Nakul Saraiya
|
||||
* @since 1.1
|
||||
*/
|
||||
public final class Method extends Executable {
|
||||
private Class<?> clazz;
|
||||
|
||||
@ -43,6 +43,7 @@ import jdk.internal.reflect.ReflectionFactory;
|
||||
*
|
||||
* @author Nakul Saraiya
|
||||
* @author Kenneth Russell
|
||||
* @since 1.1
|
||||
*/
|
||||
public class Modifier {
|
||||
|
||||
|
||||
@ -222,6 +222,7 @@ import java.util.Arrays;
|
||||
* @author Mike Cowlishaw
|
||||
* @author Joseph D. Darcy
|
||||
* @author Sergey V. Kuksenko
|
||||
* @since 1.1
|
||||
*/
|
||||
public class BigDecimal extends Number implements Comparable<BigDecimal> {
|
||||
/**
|
||||
|
||||
@ -75,7 +75,7 @@ import sun.net.util.IPAddressUtil;
|
||||
* <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>
|
||||
* <tr><th style="vertical-align: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
|
||||
* that address.
|
||||
@ -94,7 +94,7 @@ import sun.net.util.IPAddressUtil;
|
||||
* IP address loops around and becomes IP input on the local
|
||||
* host. This address is often used when testing a
|
||||
* client.</td></tr>
|
||||
* <tr><th valign=top><i>multicast</i></th>
|
||||
* <tr><th style="vertical-align:top"><i>multicast</i></th>
|
||||
* <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>
|
||||
|
||||
@ -167,6 +167,7 @@ import java.util.StringTokenizer;
|
||||
*
|
||||
* @author Marianne Mueller
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public final class NetPermission extends BasicPermission {
|
||||
|
||||
@ -40,6 +40,7 @@ import java.lang.annotation.Native;
|
||||
* DatagramSocket and MulticastSocket.
|
||||
*
|
||||
* @author David Brown
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
|
||||
|
||||
@ -142,6 +142,7 @@ import sun.security.util.Debug;
|
||||
*
|
||||
* @author Marianne Mueller
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*
|
||||
* @serial exclude
|
||||
*/
|
||||
|
||||
@ -253,32 +253,32 @@ import java.lang.NullPointerException; // for javadoc
|
||||
* which are taken from that specification, are used below to describe these
|
||||
* constraints:
|
||||
*
|
||||
* <blockquote><table>
|
||||
* <blockquote><table class="borderless">
|
||||
* <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>
|
||||
* <tr><th style="vertical-align:top"><i>alpha</i></th>
|
||||
* <td>The US-ASCII alphabetic characters,
|
||||
* {@code 'A'} through {@code 'Z'}
|
||||
* and {@code 'a'} through {@code 'z'}</td></tr>
|
||||
* <tr><th valign=top><i>digit</i></th>
|
||||
* <tr><th style="vertical-align:top"><i>digit</i></th>
|
||||
* <td>The US-ASCII decimal digit characters,
|
||||
* {@code '0'} through {@code '9'}</td></tr>
|
||||
* <tr><th valign=top><i>alphanum</i></th>
|
||||
* <tr><th style="vertical-align:top"><i>alphanum</i></th>
|
||||
* <td>All <i>alpha</i> and <i>digit</i> characters</td></tr>
|
||||
* <tr><th valign=top><i>unreserved</i> </th>
|
||||
* <tr><th style="vertical-align:top"><i>unreserved</i> </th>
|
||||
* <td>All <i>alphanum</i> characters together with those in the string
|
||||
* {@code "_-!.~'()*"}</td></tr>
|
||||
* <tr><th valign=top><i>punct</i></th>
|
||||
* <tr><th style="vertical-align:top"><i>punct</i></th>
|
||||
* <td>The characters in the string {@code ",;:$&+="}</td></tr>
|
||||
* <tr><th valign=top><i>reserved</i></th>
|
||||
* <tr><th style="vertical-align:top"><i>reserved</i></th>
|
||||
* <td>All <i>punct</i> characters together with those in the string
|
||||
* {@code "?/[]@"}</td></tr>
|
||||
* <tr><th valign=top><i>escaped</i></th>
|
||||
* <tr><th style="vertical-align:top"><i>escaped</i></th>
|
||||
* <td>Escaped octets, that is, triplets consisting of the percent
|
||||
* character ({@code '%'}) followed by two hexadecimal digits
|
||||
* ({@code '0'}-{@code '9'}, {@code 'A'}-{@code 'F'}, and
|
||||
* {@code 'a'}-{@code 'f'})</td></tr>
|
||||
* <tr><th valign=top><i>other</i></th>
|
||||
* <tr><th style="vertical-align:top"><i>other</i></th>
|
||||
* <td>The Unicode characters that are not in the US-ASCII character set,
|
||||
* are not control characters (according to the {@link
|
||||
* java.lang.Character#isISOControl(char) Character.isISOControl}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
<!DOCTYPE HTML>
|
||||
<!--
|
||||
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
|
||||
@ -22,15 +23,14 @@
|
||||
or visit www.oracle.com if you need additional information or have any
|
||||
questions.
|
||||
-->
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=iso-8859-1">
|
||||
<TITLE>Networking Properties</TITLE>
|
||||
</HEAD>
|
||||
<BODY LANG="en-US" DIR="LTR">
|
||||
<H1 ALIGN=CENTER>Networking Properties</H1>
|
||||
<P ALIGN=LEFT>There are a few standard system properties used to
|
||||
<H1 style="text-align:center">Networking Properties</H1>
|
||||
<P>There are a few standard system properties used to
|
||||
alter the mechanisms and behavior of the various classes of the
|
||||
java.net package. Some are checked only once at startup of the VM,
|
||||
and therefore are best set using the -D option of the java command,
|
||||
@ -39,7 +39,7 @@ the <a href="../../lang/System.html#setProperty(java.lang.String,%20java.lang.St
|
||||
The purpose of this document is to list
|
||||
and detail all of these properties.</P>
|
||||
<P>If there is no special note, a property value is checked every time it is used.</P>
|
||||
<a name="Ipv4IPv6"></a>
|
||||
<a id="Ipv4IPv6"></a>
|
||||
<H2>IPv4 / IPv6</H2>
|
||||
<UL>
|
||||
<LI><P><B>java.net.preferIPv4Stack</B> (default: false)<BR>
|
||||
@ -62,7 +62,7 @@ and detail all of these properties.</P>
|
||||
returned by the operating system.</P>
|
||||
</UL>
|
||||
<P>Both of these properties are checked only once, at startup.</P>
|
||||
<a name="Proxies"></a>
|
||||
<a id="Proxies"></a>
|
||||
<H2>Proxies</H2>
|
||||
<P>A proxy server allows indirect connection to network services and
|
||||
is used mainly for security (to get through firewalls) and
|
||||
@ -155,7 +155,7 @@ of proxies.</P>
|
||||
globally through their user interface). Note that this property is
|
||||
checked only once at startup.</P>
|
||||
</UL>
|
||||
<a name="MiscHTTP"></a>
|
||||
<a id="MiscHTTP"></a>
|
||||
<H2>Misc HTTP properties</H2>
|
||||
<UL>
|
||||
<LI><P><B>http.agent</B> (default: “Java/<version>”)<BR>
|
||||
@ -214,7 +214,7 @@ of proxies.</P>
|
||||
</OL>
|
||||
</UL>
|
||||
<P>All these properties are checked only once at startup.</P>
|
||||
<a name="AddressCache"></a>
|
||||
<a id="AddressCache"></a>
|
||||
<H2>Address Cache</H2>
|
||||
<P>The java.net package, when doing name resolution, uses an address
|
||||
cache for both security and performance reasons. Any address
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2001, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -28,33 +28,46 @@
|
||||
* performing I/O operations, such as files and sockets; defines selectors, for
|
||||
* multiplexed, non-blocking I/O operations.
|
||||
*
|
||||
* <a name="channels"></a>
|
||||
* <a id="channels"></a>
|
||||
*
|
||||
* <blockquote><table cellspacing=1 cellpadding=0 summary="Lists channels and their descriptions">
|
||||
* <tr><th align="left">Channels</th><th align="left">Description</th></tr>
|
||||
* <tr><td valign=top><i>{@link java.nio.channels.Channel}</i></td>
|
||||
* <blockquote><table class="borderless">
|
||||
* <caption style="display:none">Lists channels and their descriptions</caption>
|
||||
* <tr><th style="text-align:left">Channels</th>
|
||||
* <th style="text-align:left">Description</th></tr>
|
||||
* <tr><td style="vertical-align:top"><i>{@link java.nio.channels.Channel}</i></td>
|
||||
* <td>A nexus for I/O operations</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.ReadableByteChannel}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.ReadableByteChannel}</i></td>
|
||||
* <td>Can read into a buffer</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.ScatteringByteChannel} </i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.ScatteringByteChannel} </i></td>
|
||||
* <td>Can read into a sequence of buffers</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.WritableByteChannel}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.WritableByteChannel}</i></td>
|
||||
* <td>Can write from a buffer</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.GatheringByteChannel}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.GatheringByteChannel}</i></td>
|
||||
* <td>Can write from a sequence of buffers</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.ByteChannel}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.ByteChannel}</i></td>
|
||||
* <td>Can read/write to/from a buffer</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.SeekableByteChannel}</i></td>
|
||||
* <td>A {@code ByteChannel} connected to an entity that contains a variable-length sequence of bytes</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.AsynchronousChannel}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.SeekableByteChannel}</i></td>
|
||||
* <td>A {@code ByteChannel} connected to an entity that contains a variable-length
|
||||
* sequence of bytes</td></tr>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.AsynchronousChannel}</i></td>
|
||||
* <td>Supports asynchronous I/O operations.</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.AsynchronousByteChannel}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.AsynchronousByteChannel}</i></td>
|
||||
* <td>Can read and write bytes asynchronously</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.NetworkChannel}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.NetworkChannel}</i></td>
|
||||
* <td>A channel to a network socket</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.channels.MulticastChannel}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.channels.MulticastChannel}</i></td>
|
||||
* <td>Can join Internet Protocol (IP) multicast groups</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.Channels}</td>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.channels.Channels}</td>
|
||||
* <td>Utility methods for channel/stream interoperation</td></tr>
|
||||
* </table></blockquote>
|
||||
*
|
||||
@ -109,13 +122,19 @@
|
||||
* be constructed that uses a given charset to encode characters into bytes and
|
||||
* write them to a given writable byte channel.
|
||||
*
|
||||
* <blockquote><table cellspacing=1 cellpadding=0 summary="Lists file channels and their descriptions">
|
||||
* <tr><th align="left">File channels</th><th align="left">Description</th></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.FileChannel}</td>
|
||||
* <blockquote><table class="borderless">
|
||||
* <caption style="display:none">
|
||||
* Lists file channels and their descriptions</caption>
|
||||
* <tr><th style="text-align:left">File channels</th>
|
||||
* <th style="text-align:left">Description</th></tr>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.FileChannel}</td>
|
||||
* <td>Reads, writes, maps, and manipulates files</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.FileLock}</td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.FileLock}</td>
|
||||
* <td>A lock on a (region of a) file</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.MappedByteBuffer} </td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.MappedByteBuffer} </td>
|
||||
* <td>A direct byte buffer mapped to a region of a file</td></tr>
|
||||
* </table></blockquote>
|
||||
*
|
||||
@ -136,27 +155,35 @@
|
||||
* file channel connected to the same underlying file as the {@link java.io}
|
||||
* class.
|
||||
*
|
||||
* <a name="multiplex"></a>
|
||||
* <blockquote><table cellspacing=1 cellpadding=0 summary="Lists multiplexed, non-blocking channels and their descriptions">
|
||||
* <tr><th align="left">Multiplexed, non-blocking I/O</th><th align="left"><p>Description</th></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.SelectableChannel}</td>
|
||||
* <a id="multiplex"></a>
|
||||
* <blockquote><table class="borderless">
|
||||
* <caption style="display:none">
|
||||
* Lists multiplexed, non-blocking channels and their descriptions</caption>
|
||||
* <tr><th style="text-align:left">Multiplexed, non-blocking I/O</th>
|
||||
* <th style="text-align:left">Description</th></tr>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.channels.SelectableChannel}</td>
|
||||
* <td>A channel that can be multiplexed</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.channels.DatagramChannel}</td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.DatagramChannel}</td>
|
||||
* <td>A channel to a datagram-oriented socket</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.channels.Pipe.SinkChannel}</td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.Pipe.SinkChannel}</td>
|
||||
* <td>The write end of a pipe</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.channels.Pipe.SourceChannel}</td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.Pipe.SourceChannel}</td>
|
||||
* <td>The read end of a pipe</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.channels.ServerSocketChannel} </td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.ServerSocketChannel} </td>
|
||||
* <td>A channel to a stream-oriented listening socket</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.channels.SocketChannel}</td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.SocketChannel}</td>
|
||||
* <td>A channel for a stream-oriented connecting socket</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.Selector}</td>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.channels.Selector}</td>
|
||||
* <td>A multiplexor of selectable channels</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.SelectionKey}</td>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.channels.SelectionKey}</td>
|
||||
* <td>A token representing the registration <br> of a channel
|
||||
* with a selector</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.Pipe}</td>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.channels.Pipe}</td>
|
||||
* <td>Two channels that form a unidirectional pipe</td></tr>
|
||||
* </table></blockquote>
|
||||
*
|
||||
@ -222,19 +249,27 @@
|
||||
* directly; custom channel classes should extend the appropriate {@link
|
||||
* java.nio.channels.SelectableChannel} subclasses defined in this package.
|
||||
*
|
||||
* <a name="async"></a>
|
||||
* <a id="async"></a>
|
||||
*
|
||||
* <blockquote><table cellspacing=1 cellpadding=0 summary="Lists asynchronous channels and their descriptions">
|
||||
* <tr><th align="left">Asynchronous I/O</th><th align="left">Description</th></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.AsynchronousFileChannel}</td>
|
||||
* <blockquote><table class="borderless">
|
||||
* <caption style="display:none">
|
||||
* Lists asynchronous channels and their descriptions</caption>
|
||||
* <tr><th style="text-align:left">
|
||||
* Asynchronous I/O</th><th style="text-align:left">Description</th></tr>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.AsynchronousFileChannel}</td>
|
||||
* <td>An asynchronous channel for reading, writing, and manipulating a file</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.AsynchronousSocketChannel}</td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.AsynchronousSocketChannel}</td>
|
||||
* <td>An asynchronous channel to a stream-oriented connecting socket</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.AsynchronousServerSocketChannel} </td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.AsynchronousServerSocketChannel} </td>
|
||||
* <td>An asynchronous channel to a stream-oriented listening socket</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.CompletionHandler}</td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.CompletionHandler}</td>
|
||||
* <td>A handler for consuming the result of an asynchronous operation</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.channels.AsynchronousChannelGroup}</td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.channels.AsynchronousChannelGroup}</td>
|
||||
* <td>A grouping of asynchronous channels for the purpose of resource sharing</td></tr>
|
||||
* </table></blockquote>
|
||||
*
|
||||
@ -277,7 +312,6 @@
|
||||
* so that sophisticated users can take advantage of operating-system-specific
|
||||
* asynchronous I/O mechanisms when very high performance is required.
|
||||
*
|
||||
* <hr width="80%">
|
||||
* <p> Unless otherwise noted, passing a {@code null} argument to a constructor
|
||||
* or method in any class or interface in this package will cause a {@link
|
||||
* java.lang.NullPointerException NullPointerException} to be thrown.
|
||||
|
||||
@ -27,17 +27,19 @@
|
||||
* Defines charsets, decoders, and encoders, for translating between
|
||||
* bytes and Unicode characters.
|
||||
*
|
||||
* <blockquote><table cellspacing=1 cellpadding=0 summary="Summary of charsets, decoders, and encoders in this package">
|
||||
* <tr><th align="left">Class name</th><th align="left">Description</th></tr>
|
||||
* <tr><td valign=top>{@link java.nio.charset.Charset}</td>
|
||||
* <blockquote><table class="borderless">
|
||||
* <caption style="display:none">Summary of charsets, decoders, and encoders in this package</caption>
|
||||
* <tr><th style="text-align:left">Class name</th>
|
||||
* <th style="text-align:left"><th>DescriptiPath
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.charset.Charset}</td>
|
||||
* <td>A named mapping between characters<br>and bytes</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.charset.CharsetDecoder}</td>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.charset.CharsetDecoder}</td>
|
||||
* <td>Decodes bytes into characters</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.charset.CharsetEncoder} </td>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.charset.CharsetEncoder}</td>
|
||||
* <td>Encodes characters into bytes</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.charset.CoderResult} </td>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.charset.CoderResult}</td>
|
||||
* <td>Describes coder results</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.charset.CodingErrorAction} </td>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.charset.CodingErrorAction}</td>
|
||||
* <td>Describes actions to take when<br>coding errors are detected</td></tr>
|
||||
*
|
||||
* </table></blockquote>
|
||||
|
||||
@ -26,25 +26,41 @@
|
||||
/**
|
||||
* Interfaces and classes providing access to file and file system attributes.
|
||||
*
|
||||
* <blockquote><table cellspacing=1 cellpadding=0 summary="Attribute views">
|
||||
* <tr><th align="left">Attribute views</th><th align="left">Description</th></tr>
|
||||
* <tr><td valign=top><i>{@link java.nio.file.attribute.AttributeView}</i></td>
|
||||
* <blockquote><table class="borderless">
|
||||
* <caption style="display:none">Attribute views</caption>
|
||||
* <tr><th style="text-align:left">Attribute views</th>
|
||||
* <th style="text-align:left">Description</th></tr>
|
||||
* <tr><td><i>{@link java.nio.file.attribute.AttributeView}</i></td>
|
||||
* <td>Can read or update non-opaque values associated with objects in a file system</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.file.attribute.FileAttributeView}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.file.attribute.FileAttributeView}</i></td>
|
||||
* <td>Can read or update file attributes</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.file.attribute.BasicFileAttributeView} </i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
*
|
||||
* <i>{@link java.nio.file.attribute.BasicFileAttributeView} </i></td>
|
||||
* <td>Can read or update a basic set of file attributes</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.file.attribute.PosixFileAttributeView} </i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
*
|
||||
* <i>{@link java.nio.file.attribute.PosixFileAttributeView} </i></td>
|
||||
* <td>Can read or update POSIX defined file attributes</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.file.attribute.DosFileAttributeView} </i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
*
|
||||
* <i>{@link java.nio.file.attribute.DosFileAttributeView} </i></td>
|
||||
* <td>Can read or update FAT file attributes</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.file.attribute.FileOwnerAttributeView} </i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
*
|
||||
* <i>{@link java.nio.file.attribute.FileOwnerAttributeView} </i></td>
|
||||
* <td>Can read or update the owner of a file</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.file.attribute.AclFileAttributeView} </i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
*
|
||||
* <i>{@link java.nio.file.attribute.AclFileAttributeView} </i></td>
|
||||
* <td>Can read or update Access Control Lists</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.file.attribute.UserDefinedFileAttributeView} </i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
*
|
||||
* <i>{@link java.nio.file.attribute.UserDefinedFileAttributeView} </i></td>
|
||||
* <td>Can read or update user-defined file attributes</td></tr>
|
||||
* <tr><td valign=top> <i>{@link java.nio.file.attribute.FileStoreAttributeView}</i></td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* <i>{@link java.nio.file.attribute.FileStoreAttributeView}</i></td>
|
||||
* <td>Can read or update file system attributes</td></tr>
|
||||
* </table></blockquote>
|
||||
*
|
||||
|
||||
@ -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
|
||||
@ -33,7 +33,7 @@
|
||||
* package is used by service provider implementors wishing to extend the
|
||||
* platform default provider, or to construct other provider implementations. </p>
|
||||
*
|
||||
* <h3><a name="links">Symbolic Links</a></h3>
|
||||
* <h3><a id="links">Symbolic Links</a></h3>
|
||||
* <p> Many operating systems and file systems support for <em>symbolic links</em>.
|
||||
* A symbolic link is a special file that serves as a reference to another file.
|
||||
* For the most part, symbolic links are transparent to applications and
|
||||
@ -45,7 +45,7 @@
|
||||
* that are semantically close but support for these other types of links is
|
||||
* not included in this package. </p>
|
||||
*
|
||||
* <h3><a name="interop">Interoperability</a></h3>
|
||||
* <h3><a id="interop">Interoperability</a></h3>
|
||||
* <p> The {@link java.io.File} class defines the {@link java.io.File#toPath
|
||||
* toPath} method to construct a {@link java.nio.file.Path} by converting
|
||||
* the abstract path represented by the {@code java.io.File} object. The resulting
|
||||
@ -65,7 +65,7 @@
|
||||
* or on some other machine. The exact nature of any such inconsistencies are
|
||||
* system-dependent and are therefore unspecified. </p>
|
||||
*
|
||||
* <h3><a name="integrity">Synchronized I/O File Integrity</a></h3>
|
||||
* <h3><a id="integrity">Synchronized I/O File Integrity</a></h3>
|
||||
* <p> The {@link java.nio.file.StandardOpenOption#SYNC SYNC} and {@link
|
||||
* java.nio.file.StandardOpenOption#DSYNC DSYNC} options are used when opening a file
|
||||
* to require that updates to the file are written synchronously to the underlying
|
||||
|
||||
@ -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
|
||||
@ -60,30 +60,33 @@
|
||||
* the contents of which can be used to extend the platform's default
|
||||
* implementations or to construct alternative implementations.
|
||||
*
|
||||
* <a name="buffers"> </a>
|
||||
* <a id="buffers"> </a>
|
||||
*
|
||||
* <blockquote><table cellspacing=1 cellpadding=0 summary="Description of the various buffers">
|
||||
* <tr><th align="left">Buffers</th><th align="left">Description</th></tr>
|
||||
* <tr><td valign=top>{@link java.nio.Buffer}</td>
|
||||
* <blockquote><table class="borderless">
|
||||
* <caption style="display:none">Description of the various buffers</caption>
|
||||
* <tr><th style="text-align:left">Buffers</th>
|
||||
* <th style="text-align:left">Description</th></tr>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.Buffer}</td>
|
||||
* <td>Position, limit, and capacity;
|
||||
* <br>clear, flip, rewind, and mark/reset</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.ByteBuffer}</td>
|
||||
* <tr><td style="vertical-align:top"> {@link java.nio.ByteBuffer}</td>
|
||||
* <td>Get/put, compact, views; allocate, wrap</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.MappedByteBuffer} </td>
|
||||
* <tr><td style="vertical-align:top">
|
||||
* {@link java.nio.MappedByteBuffer} </td>
|
||||
* <td>A byte buffer mapped to a file</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.CharBuffer}</td>
|
||||
* <tr><td style="vertical-align:top"> {@link java.nio.CharBuffer}</td>
|
||||
* <td>Get/put, compact; allocate, wrap</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.DoubleBuffer}</td>
|
||||
* <tr><td style="vertical-align:top"> {@link java.nio.DoubleBuffer}</td>
|
||||
* <td> ' '</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.FloatBuffer}</td>
|
||||
* <tr><td style="vertical-align:top"> {@link java.nio.FloatBuffer}</td>
|
||||
* <td> ' '</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.IntBuffer}</td>
|
||||
* <tr><td style="vertical-align:top"> {@link java.nio.IntBuffer}</td>
|
||||
* <td> ' '</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.LongBuffer}</td>
|
||||
* <tr><td style="vertical-align:top"> {@link java.nio.LongBuffer}</td>
|
||||
* <td> ' '</td></tr>
|
||||
* <tr><td valign=top> {@link java.nio.ShortBuffer}</td>
|
||||
* <tr><td style="vertical-align:top"> {@link java.nio.ShortBuffer}</td>
|
||||
* <td> ' '</td></tr>
|
||||
* <tr><td valign=top>{@link java.nio.ByteOrder}</td>
|
||||
* <tr><td style="vertical-align:top">{@link java.nio.ByteOrder}</td>
|
||||
* <td>Typesafe enumeration for byte orders</td></tr>
|
||||
* </table></blockquote>
|
||||
*
|
||||
|
||||
@ -74,6 +74,7 @@ import sun.security.util.SecurityConstants;
|
||||
* @see AccessController
|
||||
*
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public final class AccessControlContext {
|
||||
|
||||
@ -38,6 +38,7 @@ package java.security;
|
||||
*
|
||||
* @author Li Gong
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public class AccessControlException extends SecurityException {
|
||||
|
||||
@ -259,6 +259,7 @@ import jdk.internal.reflect.Reflection;
|
||||
*
|
||||
* @author Li Gong
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public final class AccessController {
|
||||
|
||||
@ -61,11 +61,17 @@ import java.util.Objects;
|
||||
* </ul>
|
||||
*
|
||||
* <P>In case the client does not explicitly initialize the
|
||||
* AlgorithmParameterGenerator
|
||||
* (via a call to an {@code init} method), each provider must supply (and
|
||||
* document) a default initialization. For example, the Sun provider uses a
|
||||
* default modulus prime size of 1024 bits for the generation of DSA
|
||||
* parameters.
|
||||
* AlgorithmParameterGenerator (via a call to an {@code init} method),
|
||||
* each provider must supply (and document) a default initialization.
|
||||
* See the Keysize Restriction sections of the
|
||||
* <a href="{@docRoot}/../technotes/guides/security/SunProviders.html">
|
||||
* JDK Providers</a>
|
||||
* document for information on the AlgorithmParameterGenerator defaults
|
||||
* used by JDK providers.
|
||||
* However, note that defaults may vary across different providers.
|
||||
* Additionally, the default value for a provider may change in a future
|
||||
* version. Therefore, it is recommended to explicitly initialize the
|
||||
* AlgorithmParameterGenerator instead of relying on provider-specific defaults.
|
||||
*
|
||||
* <p> Every implementation of the Java platform is required to support the
|
||||
* following standard {@code AlgorithmParameterGenerator} algorithms and
|
||||
|
||||
@ -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
|
||||
@ -39,8 +39,15 @@ import java.security.spec.AlgorithmParameterSpec;
|
||||
* <p> In case the client does not explicitly initialize the
|
||||
* AlgorithmParameterGenerator (via a call to an {@code engineInit}
|
||||
* method), each provider must supply (and document) a default initialization.
|
||||
* For example, the Sun provider uses a default modulus prime size of 1024
|
||||
* bits for the generation of DSA parameters.
|
||||
* See the Keysize Restriction sections of the
|
||||
* <a href="{@docRoot}/../technotes/guides/security/SunProviders.html">
|
||||
* JDK Providers</a>
|
||||
* document for information on the AlgorithmParameterGenerator defaults
|
||||
* used by JDK providers.
|
||||
* However, note that defaults may vary across different providers.
|
||||
* Additionally, the default value for a provider may change in a future
|
||||
* version. Therefore, it is recommended to explicitly initialize the
|
||||
* AlgorithmParameterGenerator instead of relying on provider-specific defaults.
|
||||
*
|
||||
* @author Jan Luehe
|
||||
*
|
||||
|
||||
@ -51,6 +51,7 @@ import sun.security.util.SecurityConstants;
|
||||
*
|
||||
*
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*
|
||||
* @serial exclude
|
||||
*/
|
||||
|
||||
@ -62,6 +62,7 @@ import java.util.concurrent.ConcurrentHashMap;
|
||||
*
|
||||
* @author Marianne Mueller
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public abstract class BasicPermission extends Permission
|
||||
|
||||
@ -56,6 +56,7 @@ import java.util.Date;
|
||||
* the certificate and satisfy itself of its validity.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
* @deprecated A new certificate handling package is created in the Java platform.
|
||||
* This Certificate interface is entirely deprecated and
|
||||
* is here to allow for a smooth transition to the new
|
||||
|
||||
@ -44,6 +44,7 @@ import sun.net.util.URLUtil;
|
||||
*
|
||||
* @author Li Gong
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public class CodeSource implements java.io.Serializable {
|
||||
|
||||
@ -29,6 +29,7 @@ package java.security;
|
||||
* This is the generic Message Digest exception.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
public class DigestException extends GeneralSecurityException {
|
||||
|
||||
|
||||
@ -59,6 +59,7 @@ import java.io.ByteArrayInputStream;
|
||||
* @see DigestOutputStream
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public class DigestInputStream extends FilterInputStream {
|
||||
|
||||
@ -51,6 +51,7 @@ import java.io.ByteArrayOutputStream;
|
||||
* @see DigestInputStream
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.2
|
||||
*/
|
||||
public class DigestOutputStream extends FilterOutputStream {
|
||||
|
||||
|
||||
@ -31,6 +31,7 @@ package java.security;
|
||||
* security-related exception classes that extend from it.
|
||||
*
|
||||
* @author Jan Luehe
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public class GeneralSecurityException extends Exception {
|
||||
|
||||
@ -38,6 +38,7 @@ package java.security;
|
||||
*
|
||||
* @author Roland Schemers
|
||||
* @author Li Gong
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public interface Guard {
|
||||
|
||||
@ -44,6 +44,7 @@ package java.security;
|
||||
*
|
||||
* @author Roland Schemers
|
||||
* @author Li Gong
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public class GuardedObject implements java.io.Serializable {
|
||||
|
||||
@ -51,6 +51,7 @@ import java.util.*;
|
||||
* @see Principal
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
* @deprecated This class is no longer used. Its functionality has been
|
||||
* replaced by {@code java.security.KeyStore}, the
|
||||
* {@code java.security.cert} package, and
|
||||
|
||||
@ -55,6 +55,7 @@ import java.util.Properties;
|
||||
* @see Key
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*
|
||||
* @deprecated This class is no longer used. Its functionality has been
|
||||
* replaced by {@code java.security.KeyStore}, the
|
||||
|
||||
@ -31,6 +31,7 @@ package java.security;
|
||||
* length, uninitialized, etc).
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public class InvalidKeyException extends KeyException {
|
||||
|
||||
@ -31,6 +31,7 @@ package java.security;
|
||||
* to a method.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public class InvalidParameterException extends IllegalArgumentException {
|
||||
|
||||
@ -97,6 +97,7 @@ package java.security;
|
||||
* @see Signer
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public interface Key extends java.io.Serializable {
|
||||
|
||||
@ -33,6 +33,7 @@ package java.security;
|
||||
* @see KeyManagementException
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public class KeyException extends GeneralSecurityException {
|
||||
|
||||
@ -38,6 +38,7 @@ package java.security;
|
||||
* </ul>
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*
|
||||
* @see Key
|
||||
* @see KeyException
|
||||
|
||||
@ -36,6 +36,7 @@ import java.util.*;
|
||||
* @see PrivateKey
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public final class KeyPair implements java.io.Serializable {
|
||||
|
||||
@ -95,8 +95,15 @@ import sun.security.util.Debug;
|
||||
* <p>In case the client does not explicitly initialize the KeyPairGenerator
|
||||
* (via a call to an {@code initialize} method), each provider must
|
||||
* supply (and document) a default initialization.
|
||||
* For example, the <i>Sun</i> provider uses a default modulus size (keysize)
|
||||
* of 1024 bits for DSA key pairs.
|
||||
* See the Keysize Restriction sections of the
|
||||
* <a href="{@docRoot}/../technotes/guides/security/SunProviders.html">
|
||||
* JDK Providers</a>
|
||||
* document for information on the KeyPairGenerator defaults used by
|
||||
* JDK providers.
|
||||
* However, note that defaults may vary across different providers.
|
||||
* Additionally, the default value for a provider may change in a future
|
||||
* version. Therefore, it is recommended to explicitly initialize the
|
||||
* KeyPairGenerator instead of relying on provider-specific defaults.
|
||||
*
|
||||
* <p>Note that this class is abstract and extends from
|
||||
* {@code KeyPairGeneratorSpi} for historical reasons.
|
||||
@ -121,6 +128,7 @@ import sun.security.util.Debug;
|
||||
* other algorithms are supported.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*
|
||||
* @see java.security.spec.AlgorithmParameterSpec
|
||||
*/
|
||||
|
||||
@ -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
|
||||
@ -39,10 +39,18 @@ import java.security.spec.AlgorithmParameterSpec;
|
||||
* <p> In case the client does not explicitly initialize the KeyPairGenerator
|
||||
* (via a call to an {@code initialize} method), each provider must
|
||||
* supply (and document) a default initialization.
|
||||
* For example, the <i>Sun</i> provider uses a default modulus size (keysize)
|
||||
* of 1024 bits.
|
||||
* See the Keysize Restriction sections of the
|
||||
* <a href="{@docRoot}/../technotes/guides/security/SunProviders.html">
|
||||
* JDK Providers</a>
|
||||
* document for information on the KeyPairGenerator defaults used by
|
||||
* JDK providers.
|
||||
* However, note that defaults may vary across different providers.
|
||||
* Additionally, the default value for a provider may change in a future
|
||||
* version. Therefore, it is recommended to explicitly initialize the
|
||||
* KeyPairGenerator instead of relying on provider-specific defaults.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.2
|
||||
*
|
||||
*
|
||||
* @see KeyPairGenerator
|
||||
|
||||
@ -96,6 +96,7 @@ import javax.crypto.SecretKey;
|
||||
* other algorithms are supported.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*
|
||||
* @see DigestInputStream
|
||||
* @see DigestOutputStream
|
||||
|
||||
@ -43,6 +43,7 @@ import sun.security.jca.JCAUtil;
|
||||
* <p> Implementations are free to implement the Cloneable interface.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.2
|
||||
*
|
||||
*
|
||||
* @see MessageDigest
|
||||
|
||||
@ -30,6 +30,7 @@ package java.security;
|
||||
* requested but is not available in the environment.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public class NoSuchAlgorithmException extends GeneralSecurityException {
|
||||
|
||||
@ -30,6 +30,7 @@ package java.security;
|
||||
* requested but is not available in the environment.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public class NoSuchProviderException extends GeneralSecurityException {
|
||||
|
||||
@ -60,6 +60,7 @@ package java.security;
|
||||
*
|
||||
* @author Marianne Mueller
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public abstract class Permission implements Guard, java.io.Serializable {
|
||||
|
||||
@ -91,6 +91,7 @@ import java.util.stream.StreamSupport;
|
||||
*
|
||||
*
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public abstract class PermissionCollection implements java.io.Serializable {
|
||||
|
||||
@ -75,6 +75,7 @@ import java.io.IOException;
|
||||
*
|
||||
* @author Marianne Mueller
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*
|
||||
* @serial exclude
|
||||
*/
|
||||
|
||||
@ -78,6 +78,7 @@ import sun.security.util.SecurityConstants;
|
||||
*
|
||||
* @author Roland Schemers
|
||||
* @author Gary Ellison
|
||||
* @since 1.2
|
||||
* @see java.security.Provider
|
||||
* @see java.security.ProtectionDomain
|
||||
* @see java.security.Permission
|
||||
|
||||
@ -35,6 +35,7 @@ import javax.security.auth.Subject;
|
||||
* @see java.security.cert.X509Certificate
|
||||
*
|
||||
* @author Li Gong
|
||||
* @since 1.1
|
||||
*/
|
||||
public interface Principal {
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@ package java.security;
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @author Josh Bloch
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public interface PrivateKey extends Key, javax.security.auth.Destroyable {
|
||||
|
||||
@ -34,6 +34,7 @@ package java.security;
|
||||
* throw checked exceptions must use {@code PrivilegedExceptionAction}
|
||||
* instead.
|
||||
*
|
||||
* @since 1.2
|
||||
* @see AccessController
|
||||
* @see AccessController#doPrivileged(PrivilegedAction)
|
||||
* @see PrivilegedExceptionAction
|
||||
|
||||
@ -43,6 +43,7 @@ package java.security;
|
||||
* <i>cause</i>, and may be accessed via the {@link Throwable#getCause()}
|
||||
* method, as well as the aforementioned "legacy method."
|
||||
*
|
||||
* @since 1.2
|
||||
* @see PrivilegedExceptionAction
|
||||
* @see AccessController#doPrivileged(PrivilegedExceptionAction)
|
||||
* @see AccessController#doPrivileged(PrivilegedExceptionAction,AccessControlContext)
|
||||
|
||||
@ -35,6 +35,7 @@ package java.security;
|
||||
* computations that do not throw
|
||||
* checked exceptions should use {@code PrivilegedAction} instead.
|
||||
*
|
||||
* @since 1.2
|
||||
* @see AccessController
|
||||
* @see AccessController#doPrivileged(PrivilegedExceptionAction)
|
||||
* @see AccessController#doPrivileged(PrivilegedExceptionAction,
|
||||
|
||||
@ -59,6 +59,7 @@ import sun.security.util.SecurityConstants;
|
||||
* @author Li Gong
|
||||
* @author Roland Schemers
|
||||
* @author Gary Ellison
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public class ProtectionDomain {
|
||||
|
||||
@ -102,6 +102,7 @@ import java.util.function.Function;
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @author Andreas Sterbenz
|
||||
* @since 1.1
|
||||
*/
|
||||
public abstract class Provider extends Properties {
|
||||
|
||||
|
||||
@ -32,6 +32,7 @@ package java.security;
|
||||
* throw specialized, provider-specific runtime errors.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
public class ProviderException extends RuntimeException {
|
||||
|
||||
|
||||
@ -34,6 +34,7 @@ package java.security;
|
||||
* See, for example, the DSAPublicKey interface in
|
||||
* {@code java.security.interfaces}.
|
||||
*
|
||||
* @since 1.1
|
||||
* @see Key
|
||||
* @see PrivateKey
|
||||
* @see Certificate
|
||||
|
||||
@ -39,6 +39,7 @@ import sun.security.util.Debug;
|
||||
*
|
||||
* @author Li Gong
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
public class SecureClassLoader extends ClassLoader {
|
||||
/*
|
||||
|
||||
@ -143,6 +143,7 @@ import sun.security.util.Debug;
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @author Josh Bloch
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public class SecureRandom extends java.util.Random {
|
||||
|
||||
@ -45,6 +45,7 @@ import sun.security.jca.*;
|
||||
* {@code conf/security/java.security} in the Java installation directory.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public final class Security {
|
||||
|
||||
@ -333,6 +333,7 @@ import java.util.StringTokenizer;
|
||||
*
|
||||
* @author Marianne Mueller
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public final class SecurityPermission extends BasicPermission {
|
||||
|
||||
@ -113,6 +113,7 @@ import sun.security.jca.GetInstance.Instance;
|
||||
* other algorithms are supported.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
@ -29,6 +29,7 @@ package java.security;
|
||||
* This is the generic Signature exception.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*/
|
||||
|
||||
public class SignatureException extends GeneralSecurityException {
|
||||
|
||||
@ -44,6 +44,7 @@ import sun.security.jca.JCAUtil;
|
||||
* of a particular signature algorithm.
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.2
|
||||
*
|
||||
*
|
||||
* @see Signature
|
||||
|
||||
@ -114,6 +114,7 @@ import java.io.*;
|
||||
* @see Signature
|
||||
*
|
||||
* @author Li Gong
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public final class SignedObject implements Serializable {
|
||||
|
||||
@ -38,6 +38,7 @@ import java.io.*;
|
||||
* @see Identity
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @since 1.1
|
||||
*
|
||||
* @deprecated This class is no longer used. Its functionality has been
|
||||
* replaced by {@code java.security.KeyStore}, the
|
||||
|
||||
@ -96,6 +96,7 @@ import java.security.cert.*;
|
||||
*
|
||||
*
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public final class UnresolvedPermission extends Permission
|
||||
|
||||
@ -43,6 +43,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
|
||||
*
|
||||
*
|
||||
* @author Roland Schemers
|
||||
* @since 1.2
|
||||
*
|
||||
* @serial include
|
||||
*/
|
||||
|
||||
@ -82,6 +82,7 @@ import java.security.Principal;
|
||||
* @see java.security.acl.Acl#getPermissions
|
||||
*
|
||||
* @author Satish Dharmaraj
|
||||
* @since 1.1
|
||||
*
|
||||
* @deprecated This package has been replaced by {@code java.security.Policy}
|
||||
* and related classes since 1.2.
|
||||
|
||||
@ -50,6 +50,7 @@ import java.security.Principal;
|
||||
* @see java.security.acl.Acl
|
||||
*
|
||||
* @author Satish Dharmaraj
|
||||
* @since 1.1
|
||||
*
|
||||
* @deprecated This package has been replaced by {@code java.security.Policy}
|
||||
* and related classes since 1.2.
|
||||
|
||||
@ -30,6 +30,7 @@ package java.security.acl;
|
||||
* non-existent ACL (Access Control List).
|
||||
*
|
||||
* @author Satish Dharmaraj
|
||||
* @since 1.1
|
||||
*
|
||||
* @deprecated This package has been replaced by {@code java.security.Policy}
|
||||
* and related classes since 1.2.
|
||||
|
||||
@ -39,6 +39,7 @@ import java.security.Principal;
|
||||
* Principal or Group.
|
||||
*
|
||||
* @author Satish Dharmaraj
|
||||
* @since 1.1
|
||||
*
|
||||
* @deprecated This package has been replaced by {@code java.security.Policy}
|
||||
* and related classes since 1.2.
|
||||
|
||||
@ -32,6 +32,7 @@ package java.security.acl;
|
||||
* @see java.security.acl.Owner#deleteOwner
|
||||
*
|
||||
* @author Satish Dharmaraj
|
||||
* @since 1.1
|
||||
*
|
||||
* @deprecated This package has been replaced by {@code java.security.Policy}
|
||||
* and related classes since 1.2.
|
||||
|
||||
@ -31,6 +31,7 @@ package java.security.acl;
|
||||
* the object, but the Principal attempting the modification is not an owner.
|
||||
*
|
||||
* @author Satish Dharmaraj
|
||||
* @since 1.1
|
||||
*
|
||||
* @deprecated This package has been replaced by {@code java.security.Policy}
|
||||
* and related classes since 1.2.
|
||||
|
||||
@ -34,6 +34,7 @@ import java.security.Principal;
|
||||
* interface.) The initial owner Principal should be specified as an
|
||||
* argument to the constructor of the class implementing this interface.
|
||||
*
|
||||
* @since 1.1
|
||||
* @see java.security.acl.Acl
|
||||
*
|
||||
* @deprecated This package has been replaced by {@code java.security.Policy}
|
||||
|
||||
@ -31,6 +31,7 @@ package java.security.acl;
|
||||
* a particular type of access to a resource.
|
||||
*
|
||||
* @author Satish Dharmaraj
|
||||
* @since 1.1
|
||||
*
|
||||
* @deprecated This package has been replaced by {@code java.security.Policy}
|
||||
* and related classes since 1.2.
|
||||
|
||||
@ -31,6 +31,7 @@ import java.security.GeneralSecurityException;
|
||||
* CRL (Certificate Revocation List) Exception.
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*/
|
||||
public class CRLException extends GeneralSecurityException {
|
||||
|
||||
|
||||
@ -57,6 +57,7 @@ import sun.security.x509.X509CertImpl;
|
||||
* @see CertificateFactory
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public abstract class Certificate implements java.io.Serializable {
|
||||
|
||||
@ -30,6 +30,7 @@ package java.security.cert;
|
||||
* occurs while attempting to encode a certificate.
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*/
|
||||
public class CertificateEncodingException extends CertificateException {
|
||||
|
||||
|
||||
@ -31,6 +31,7 @@ import java.security.GeneralSecurityException;
|
||||
* This exception indicates one of a variety of certificate problems.
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
* @see Certificate
|
||||
*/
|
||||
public class CertificateException extends GeneralSecurityException {
|
||||
|
||||
@ -32,6 +32,7 @@ package java.security.cert;
|
||||
* of the certificate.
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*/
|
||||
public class CertificateExpiredException extends CertificateException {
|
||||
|
||||
|
||||
@ -32,6 +32,7 @@ package java.security.cert;
|
||||
* validity period.
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*/
|
||||
public class CertificateNotYetValidException extends CertificateException {
|
||||
|
||||
|
||||
@ -31,6 +31,7 @@ package java.security.cert;
|
||||
* are found in the Certificate.
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*/
|
||||
public class CertificateParsingException extends CertificateException {
|
||||
|
||||
|
||||
@ -102,6 +102,7 @@ import sun.security.x509.X509CRLImpl;
|
||||
* }</pre>
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*
|
||||
*
|
||||
* @see CRL
|
||||
|
||||
@ -62,6 +62,7 @@ import sun.security.x509.X509CRLEntryImpl;
|
||||
* @see X509Extension
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public abstract class X509CRLEntry implements X509Extension {
|
||||
|
||||
@ -95,6 +95,7 @@ import sun.security.x509.X509CertImpl;
|
||||
* </pre>
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*
|
||||
*
|
||||
* @see Certificate
|
||||
|
||||
@ -65,6 +65,7 @@ import java.util.Set;
|
||||
* be handled by a <em>Class</em> that understands the extension.
|
||||
*
|
||||
* @author Hemma Prafullchandra
|
||||
* @since 1.2
|
||||
*/
|
||||
|
||||
public interface X509Extension {
|
||||
|
||||
@ -35,6 +35,7 @@ package java.security.interfaces;
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @author Josh Bloch
|
||||
* @since 1.1
|
||||
*/
|
||||
public interface DSAKey {
|
||||
|
||||
|
||||
@ -65,6 +65,7 @@ import java.security.*;
|
||||
* <p>Note: Some earlier implementations of this interface may not support
|
||||
* larger sizes of DSA parameters such as 2048 and 3072-bit.
|
||||
*
|
||||
* @since 1.1
|
||||
* @see java.security.KeyPairGenerator
|
||||
*/
|
||||
public interface DSAKeyPairGenerator {
|
||||
|
||||
@ -38,6 +38,7 @@ import java.math.BigInteger;
|
||||
*
|
||||
* @author Benjamin Renaud
|
||||
* @author Josh Bloch
|
||||
* @since 1.1
|
||||
*/
|
||||
public interface DSAParams {
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user